设为首页收藏本站

 找回密码
 注册
查看: 1801|回复: 2
打印 上一主题 下一主题

软件 [复制链接]

Rank: 1

精华
0
UID
222390
积分
18
帖子
11
主题
7
阅读权限
10
注册时间
2015-11-2
最后登录
2021-1-5
跳转到指定楼层
1#
发表于 2018-3-12 13:18:13 |只看该作者 |倒序浏览
管理们,您们好,

请先查阅下面的代码
Params
               
Begin

If (!AA_CallAuctionFilter()) Return;

If (BarStatus == 2)
   {
        If (A_GetOpenOrderCount()==2) Return;//如果委托单数量是2,则退出。
       
    if (A_Getopenordercount()<>2)//如果委托单数量不是2,则开始执行。
           {
            A_DeleteOrder();
            A_SendOrder(Enum_buy, Enum_Entry, 1, 2162);
            A_SendOrder(Enum_Sell, Enum_Exit, 1, 2154);
            }
    }
       
End

我先
手动委托
2158卖出,
2150买入,

然后
加载程序//程序不会执行,因为两个委托


2158成交
//只剩下2150买入这一个委托,那么程序就必须先撤掉这个委托,然后重新委托
2154买入
2162卖出
然后重新等待

但可以看到这个程序竟然重复撤单

再次测试后,竟然无限委托了。

能否告知这个程序有无逻辑错误?原因是什么?

Rank: 1

精华
0
UID
222390
积分
18
帖子
11
主题
7
阅读权限
10
注册时间
2015-11-2
最后登录
2021-1-5
2#
发表于 2018-3-12 13:21:57 |只看该作者
抱歉,应该2162和2154互换。

期待您们的大力帮助。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
3#
发表于 2018-3-13 11:01:27 |只看该作者
需要使用全局变量来控制撤单 与发单 的委托次数。。
因为委托出去到回报返回到本地,是需要时间的,这个过程中,可能已经有新的tick进来,再次运算,发现当前条件仍满足于是再次委托 。。而事实上之前的委托可能已经到了交易所或是在返回的中途了,这样就会导致重复委托的结果 。。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-4-27 10:00

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部