金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 61|回复: 3

请教老师

[复制链接]

29

主题

37

帖子

47

积分

Rank: 7Rank: 7Rank: 7

等级: 版主

注册:
2021-5-25
曾用名:
发表于 2025-8-25 10:02 | 显示全部楼层 |阅读模式
我问一下,在我的策略里面,总是出现平仓后没有开仓,多次实盘测试都是这样。经过分析,大概率是因为在指令同时在一个tick内发出,而平仓后账户没有释放资金,导致了开仓失败。
我查阅了平台函数,sleep可以用于平仓后等待的后台交易指令,但是图标的交易指令却没有合适的函数,如果我要在平仓后,等待1秒或者2秒再开仓,应该用什么函数?

回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-8-25 10:02 | 显示全部楼层
所有报单放入队列中,按次序委托下单,成交一个委托下一个.
该控制符适合所有下单指令

例如:
SELLSHORT(CROSS(C,MA(C,5),1,MARKET),ORDERQUEUE;
BUY(CROSS(C,MA(C,5),1,MARKET),ORDERQUEUE;
若没有加ORDERQUEUE,触发条件的时候会同时发出平多、开空指令。
加上ORDERQUEUE后,可简单的描述为:触发条件时,软件会先发出平仓指令,待收到平仓指令回报后,再发出开多指令。
详细的运行机制为:SELLSHORT、BUY单子形成了下单队列,SELLSHORT在前,BUY在后,当SELLSHORT单碰到有几下情况时,才会执行BUY委托单。(1)收到成交回报;(2)下单失败;(3)撤单(一旦队列下单不成交撤单后,再次委托会将委托追单排到最后)。

其次,以上规则适用于ORDERQUEUE成对出现或本身只有1条交易指令的情况。
但当出现以下情况(反手)且只有一条语句添加了ORDERQUEUE时,运行机制略有不同。
SELLSHORT(CROSS(C,MA,(C5),1,MARKET);
BUY(CROSS(C,MA,(C5),1,MARKET),ORDERQUEUE;
条件触发时,软件会发出SELLSHORT指令,ORDERQUEUE所在的指令会隔2秒后(区别)再发出,此例即BUY

注意:
ORDERQUEUE在多账户登陆状态下,软件根据账号登陆的先后次序,依次开平。以前例为例,若同时有A、B、C、3个账户触发该策略条件,软件会先对A账户平空开多,再对B账户平空开多,最后对C账户平空开多。而不是对A、B、C三个账户同时平空后再开多。
注意:
1、该标志不仅适合图表交易,同样也适用后台交易。
2、请不要在使用队列单的情况下使用追撤单功能,系统对于此复杂的逻辑机制无法保障100%追撤单算法成功。

所属函数组:交易系统




用这个,另外一般建议期货不要满仓操作得,你也可以考虑降低仓位
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

0

主题

147

帖子

157

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-8-25 10:09 | 显示全部楼层
本帖最后由 技术011 于 2025-8-25 10:12 编辑

sleep函数相当于是整个策略暂停,一般不建议使用,尤其是在多品种的情况下
回复

使用道具 举报

0

主题

3

帖子

3

积分

Rank: 1

等级: 新手上路

注册:
2025-6-21
曾用名:
发表于 2025-8-25 18:32 来自手机 | 显示全部楼层
该问题已得到解决.非常感谢老师
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-28 00:17 , Processed in 0.098449 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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