金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 6591|回复: 24

后台程序化

[复制链接]

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
发表于 2023-5-22 10:57 | 显示全部楼层 |阅读模式
后台程序化启用之后,老的信号持仓是没有办法同步的是吗
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-22 11:12 | 显示全部楼层
老的信号持仓同步是什么意思,谁和谁的同步呢?使用后台程序化交易,就是让理论持仓和实际持仓同步啊,不同步了,就触发了后台程序化的下单了啊。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-22 11:20 | 显示全部楼层
技术010 发表于 2023-5-22 11:12
老的信号持仓同步是什么意思,谁和谁的同步呢?使用后台程序化交易,就是让理论持仓和实际持仓同步啊,不同 ...

那为啥策略原有的信号持仓没有在账户同步,只是在新的信号出现才会有预警
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-22 12:39 | 显示全部楼层
本来就是看最新的K上的信号啊,和历史信号没有关系的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-22 13:44 | 显示全部楼层
技术010 发表于 2023-5-22 12:39
本来就是看最新的K上的信号啊,和历史信号没有关系的。

后台这种写法,不应该是看策略当下理论持仓的值跟账户账户对比然后下单吗
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-5-22 14:02 | 显示全部楼层
是的啊,就是看当下理论持仓的汇总后和持仓账户的持仓判断来下单啊。你可以在后台上输出理论持仓的值和实际账户持仓的值,来判断是否应该下单啊。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-22 14:17 | 显示全部楼层
技术010 发表于 2023-5-22 14:02
是的啊,就是看当下理论持仓的汇总后和持仓账户的持仓判断来下单啊。你可以在后台上输出理论持仓的值和实际 ...

那我弄了一个模拟账户,持仓没有。不应该同步下单吗
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-5-22 14:23 | 显示全部楼层
按照你上个帖子的方式,如果实际账户没有持仓,会按照理论持仓进行同步。但是关键点在于:你引用得到的理论持仓是否正确和稳定。

后台引用图表的holding作为持仓同步操作,只要不一样,就会进行同步。

你现在的描述具体时什么现象?
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-22 14:40 | 显示全部楼层
技术006 发表于 2023-5-22 14:23
按照你上个帖子的方式,如果实际账户没有持仓,会按照理论持仓进行同步。但是关键点在于:你引用得到的理论 ...

cc0:tholding;
cc:ref(cc0,1);


那我现在把各个策略都转为序列模式下的后台交易模式,然后在多策略里引用策略里面前一根K线的持仓。策略加载选择当日分笔成交,这样就相当于是下一根K线的开盘成交。就不会有什么问题了吧

ah:stkindiex('','H一箭穿心.cc',0,21,3,10000);  //引用3分钟周期上的策略a的仓位。
bh:stkindiex('','H震荡反转.cc',0,3,0,5000);  //引用15分钟周期上的策略b的仓位。

zh:'';
total_holding:=ah+bh;                               //理论持仓

bh_new_month_t:=tbuyholdingex('','',0);                                 //多头今仓
bh_new_month_y:=tbuyholdingex('','',1)-tbuyholdingex('','',0);          //多头老仓
sh_new_month_t:=tsellholdingex('','',0);                                //空头近今仓
sh_new_month_y:=tsellholdingex('','',1)-tsellholdingex('','',0);        //空头老仓
new_month_kd_w:=tisremainex(1,'',stklabel);                             //未成交开多单
new_month_pd_w:=tisremainex(2,'',stklabel);                             //未成交开多单
new_month_kk_w:=tisremainex(3,'',stklabel);                             //未成交开空单
new_month_pk_w:=tisremainex(4,'',stklabel);                             //未成交开多单

new_month_jcc:=(bh_new_month_y+bh_new_month_t)-(sh_new_month_y+sh_new_month_t)+(new_month_kd_w-new_month_kk_w);   //实际账户净持仓(不含平仓未成交单)


//理论持仓与实际持仓的判断
if total_holding-new_month_jcc>0 and new_month_jcc>=0 then
   tbuy(1,total_holding-new_month_jcc,mkt,0,0,zh);   
      
if total_holding-new_month_jcc>0 and new_month_jcc<0 then  begin
   tsellshort(total_holding<0,total_holding-new_month_jcc,mkt,0,0,zh);
   if total_holding>=0 then begin
      tsellshort(1,new_month_jcc,mkt,0,0,zh);
      tbuy(total_holding>0,total_holding,mkt,0,0,zh);
      end
   end
      
if total_holding-new_month_jcc<0 and new_month_jcc<=0 then
   tbuyshort(1,abs(total_holding-new_month_jcc),mkt,0,0,zh);
      
if total_holding-new_month_jcc<0 and new_month_jcc>0 then begin      
   tsell(total_holding>0,abs(total_holding-new_month_jcc),mkt,0,0,zh);      
   if total_holding<=0 then begin
     tsell(1,new_month_jcc,mkt,0,0,zh);
     tbuyshort(total_holding<0,abs(total_holding),mkt,0,0,zh);
     end
   end      
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2023-5-22 14:42 | 显示全部楼层
技术006 发表于 2023-5-22 14:23
按照你上个帖子的方式,如果实际账户没有持仓,会按照理论持仓进行同步。但是关键点在于:你引用得到的理论 ...

子策略仓位用后台的序列模式这么写,也不会出现因为价格变动导致的价格刚好在四舍五入区间一会加一手,一会减一手了吧

if bpkcond or spkcond then begin
        open_price:=oclose;
        end
lots:=max(round((10*10000/(open_price*multiplier))),1);
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-8-24 19:02 , Processed in 0.141823 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表