金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 106137

后台多策略以净持仓方式发开平指令

[复制链接]

2

主题

6502

帖子

6502

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-11-18 14:30 | 显示全部楼层
我这边先试下吧。
回复

使用道具 举报

2

主题

6502

帖子

6502

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-11-18 15:06 | 显示全部楼层
本帖最后由 资深技术05 于 2024-11-18 15:07 编辑

评估下来,问题比想象中的多。你集合竞价时候报单,价格必须是限价。如果是限价,是有可能不成交的,所以这个价格怎么指定,以及指定价格的不成交 并不好处理。

如果一直没有成交,那这个模型后续信号都会被卡主。 这种汇总持仓的下单,基本默认是成交的,否则这个逻辑就进行不下去了。

回复

使用道具 举报

51

主题

308

帖子

308

积分

Rank: 4

等级: 专业版

注册:
2024-6-21
曾用名:
 楼主| 发表于 2024-11-18 15:30 | 显示全部楼层
资深技术05 发表于 2024-11-18 15:06
评估下来,问题比想象中的多。你集合竞价时候报单,价格必须是限价。如果是限价,是有可能不成交的,所以这 ...

不能设置为涨跌停价参与集合竞价么?如果不行,限价能否设置成涨跌停价格减去或加上一个最小变动单位?
回复

使用道具 举报

2

主题

6502

帖子

6502

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-11-18 15:32 | 显示全部楼层
你要按照涨跌停 那自然是可以的。大概率应该也是能撮合成交的。

但是代码结构上估计要做不少调整。你正常下单和集合竞价 价格和判断逻辑都是不一样的。  
回复

使用道具 举报

51

主题

308

帖子

308

积分

Rank: 4

等级: 专业版

注册:
2024-6-21
曾用名:
 楼主| 发表于 2024-11-18 16:33 | 显示全部楼层
资深技术05 发表于 2024-11-18 15:32
你要按照涨跌停 那自然是可以的。大概率应该也是能撮合成交的。

但是代码结构上估计要做不少调整。你正 ...

单策略不用改吧?只用改净持仓策略就行?代码结构上主要调整哪块儿?有无可参考的?谢谢
回复

使用道具 举报

2

主题

6502

帖子

6502

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-11-18 16:34 | 显示全部楼层
没有可参考的,我要现做 现测试。

单策略本身不用改,改的还是之前的模版。
回复

使用道具 举报

51

主题

308

帖子

308

积分

Rank: 4

等级: 专业版

注册:
2024-6-21
曾用名:
 楼主| 发表于 2024-11-18 17:36 | 显示全部楼层
资深技术05 发表于 2024-11-18 16:34
没有可参考的,我要现做 现测试。

单策略本身不用改,改的还是之前的模版。

ho1:stkindiex(stklabel,'策略1.ho',0,3,-1,500);
ho2:stkindiex(stklabel,'策略1.ho',0,2,-1,500);
ho3:stkindiex(stklabel,'策略1.ho',0,6,-1,500);

//上一根k线的理论持仓
ho:ho1+ho2+ho3;

//账户多头持仓
tbuyho:tbuyholdingex('',stklabel,1);
//账户空头持仓
tsellho:tsellholdingex('',stklabel,1);
//是否有未成交单,返回1表示有未成交
is_order:tglobalsubmitex(0,'',stklabel,0);

//如果当前品种有挂单就不执行
if is_order then exit;
else
begin


        //直接对比前一个周期的理论持仓和当前实际持仓是否存在差异,有差异执行矫正

        //多头部分                       
        if ho>=0 and tsellho>0 then tsellshort(1,tsellho,mkt);
        //理论持仓大于0,补仓
        if ho>0 and ho>tbuyho then
        begin
                tbuy(1,ho-tbuyho,mkt);
        end
        //理论持仓大于0,减仓
        if ho>0 and ho<tbuyho then
        begin
                tsell(1,tbuyho-ho,mkt);
        end

        //空头部分
        if ho<=0 and tbuyho>0 then tsell(1,tbuyho,mkt);
        //理论持仓小于0,补仓
        if ho<0 and abs(ho)>tsellho then
        begin
                tbuyshort(1,abs(ho)-tsellho,mkt);
        end
        //理论持仓小于0,减仓
        if ho<0 and abs(ho)<tsellho then
        begin
                tsellshort(1,tsellho-abs(ho),mkt);
        end                       
end
我实盘用的汇总净持仓策略还是上述您之前帮我修改后的代码,1、要修改代码的话我从哪方面着手?2、不间断监控打勾,刷新频率改为1或10毫秒能不能解决问题?3、如果上述方法行不通,单策略不间断监控打勾就能实现参与集合竞价么?

回复

使用道具 举报

2

主题

6502

帖子

6502

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-11-19 13:18 | 显示全部楼层
1.必须勾选不间断监控。否则无法在集合竞价阶段报单。
2.目前我本地测试下来,是可以触发也报单出去了,但是也遇到了新问题。申报阶段,涨跌停价格还没有推送过来,无法利用函数获取了。所以报单价格还需要 再考虑下如何处理下。

回复

使用道具 举报

51

主题

308

帖子

308

积分

Rank: 4

等级: 专业版

注册:
2024-6-21
曾用名:
 楼主| 发表于 2024-11-19 14:54 | 显示全部楼层
资深技术05 发表于 2024-11-19 13:18
1.必须勾选不间断监控。否则无法在集合竞价阶段报单。
2.目前我本地测试下来,是可以触发也报单出去了,但 ...

非常感谢!若有了好的解决办法烦请告知一下,辛苦老师了!
回复

使用道具 举报

51

主题

308

帖子

308

积分

Rank: 4

等级: 专业版

注册:
2024-6-21
曾用名:
 楼主| 发表于 2024-11-26 10:17 | 显示全部楼层
老师,上面我实盘用的汇总净持仓代码如果要改,主要从哪方面着手,或解决思路从哪儿开始,我自己试着改改
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-20 07:26 , Processed in 0.115562 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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