金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 141|回复: 7

关于买一买入和卖一卖出的问题

[复制链接]

35

主题

97

帖子

107

积分

Rank: 6Rank: 6

等级: 机构版

注册:
2021-5-20
曾用名:
发表于 2025-4-13 12:57 | 显示全部楼层 |阅读模式
老师您好:
     下面是一个普通的海龟的代码,TBUY 或 TBUYSHORT 或 TSELL 或 TSELLSHORT 时候,如果把MKT 变为买入时候,按照买一委托;卖出时候按照卖一委托?
      并且在未来的行情中,如果最高成交价高于或低于委托价格N个价格,则撤销委托。比如买入时候委托1000元,未来行情到1005元时候,依然没有成交,则撤销委托。 如何实现?


INPUT:M(15,5,30,1);
VARIABLE:POSITION=0;

//六、空仓状态
//1多单开仓条件设立

LONG1:=(CLOSE>REF(M个周期最高价,1)) AND BARPOS>=M AND POSITION=0;
//2.多单开仓执行
IF  LONG1 THEN BEGIN
        TBUY(1,1,MKT,0,0,'15811580835');
        BUY(1,1,THISCLOSE);
        POSITION:=1;
END
//3.空单开仓条件设立

SHORT1:=(CLOSE<REF(M个周期最低价,1)) AND BARPOS>=M AND POSITION=0;
//4.空单开仓执行
IF  SHORT1 THEN BEGIN
        TBUYSHORT(1,1,MKT,0,0,'15811580535');
        BUYSHORT(1,1,THISCLOSE);
        POSITION:=-1;
END


回复

使用道具 举报

2

主题

4903

帖子

4903

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2025-4-14 09:43 | 显示全部楼层
指令改成限价操作即可:

TBUY(1,1,LMT,DYNAINFO( 28),0,'15811580835');

TBUYSHORT(1,1,LMT,DYNAINFO( 34),0,'15811580535');

撤单这块,可以尝试用下面的代码处理:
//最新价大于价格最低的开多未成交单N个变动价位 撤这笔订单
if c>tsubmitid(1,'','',4,0)+n*mindiff then tcancelid(1,'','',4);

//最新价小于价格最高的开空未成交单N个变动价位 撤这笔订单
if c<tsubmitid(3,'','',3,0)-n*mindiff then tcancelid(3,'','',3)



回复

使用道具 举报

35

主题

97

帖子

107

积分

Rank: 6Rank: 6

等级: 机构版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2025-4-14 14:49 | 显示全部楼层
在撤单时候。需要固定轮询,在哪里选择固定轮询模式?
回复

使用道具 举报

2

主题

4903

帖子

4903

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2025-4-14 14:50 | 显示全部楼层
是在策略设置的地方:
截图202504141450081029.png
回复

使用道具 举报

35

主题

97

帖子

107

积分

Rank: 6Rank: 6

等级: 机构版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2025-4-14 15:07 | 显示全部楼层
我记得以前有0.5秒的设定,现在怎么最低是1秒了?
回复

使用道具 举报

2

主题

4903

帖子

4903

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2025-4-14 15:08 | 显示全部楼层
那是外部的不间断监控设置的吧。

截图202504141508493264.png
回复

使用道具 举报

35

主题

97

帖子

107

积分

Rank: 6Rank: 6

等级: 机构版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2025-4-14 15:56 | 显示全部楼层
刚刚发现一个问题,我开仓或平仓时候是以收盘价格为根据来判断的。可是盘中又采用固定轮询1秒一扫描方式来判断挂的开仓价格的成交情况(条件不符合则撤销委托,详情请看1楼的最初问题)。这时候怎么才能做到盘中既要监控,实时彻撤销委托,又能达到收盘才开仓或平仓?
回复

使用道具 举报

2

主题

4903

帖子

4903

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2025-4-14 16:08 | 显示全部楼层
你可以考虑 开平条件 都使用ref做一个K的偏移。然后下单正常有固定间隔模式就行。

比如之前是LONG1,现在改成 ref(LONG1,1)作为实际的条件。 这样在满足信号的K结束,次根K开始时候  执行开平。同时又不影响撤单的逻辑。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-1 23:51 , Processed in 0.141085 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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