设为首页收藏本站

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

撤单 [复制链接]

Rank: 5Rank: 5

精华
0
UID
7277
积分
938
帖子
207
主题
44
阅读权限
60
注册时间
2010-3-11
最后登录
2016-5-4
跳转到指定楼层
1#
发表于 2010-6-10 09:12:12 |只看该作者 |正序浏览
nCount = A_GetOpenOrderCount();
        For i = 1 To nCount
        {
                        nEntryFlag = A_OrderEntryOrExit(i);//取得开平仓类型
                        If(nEntryFlag == Enum_Entry)
                                OrderPrice=IIF(OrderPrice<A_OpenOrderPrice(i),OrderPrice,A_OpenOrderPrice(i));//取得委托价格
        }
        If(Low>Low[1])
        {
                        For i = 1 To nCount
                        {
                                        nEntryFlag = A_OrderEntryOrExit(i);
                                        If(nEntryFlag == Enum_Entry And OrderPrice==A_OpenOrderPrice(i))
                                        {
                                                        A_DeleteOrder(A_OpenOrderContractNo(i));
                                                        SetGlobalVar(1,0);
                                        }
                        }
        }


斑竹所写的撤单代码,不能实现我想要的撤销最小委托价的开仓单。。。请斑竹再看看

Rank: 2

精华
0
UID
251800
积分
61
帖子
49
主题
7
阅读权限
30
注册时间
2017-5-29
最后登录
2017-11-6
15#
发表于 2017-8-19 08:19:16 |只看该作者
lh948 发表于 2010-6-11 10:51

管理员同志  学习你之前的代码  If(nCount==InvalidInteger) Return   这个是什么情况下会碰到  ,如果没有未成交委托单 大不了A_GetOpenOrderCount()=0,难道是当前委托单委托回报还没返回的情况下?那A_GetOpenOrderCount()也应该是最近的数据

使用道具 举报

Rank: 4

精华
0
UID
15288
积分
382
帖子
86
主题
18
阅读权限
50
注册时间
2010-8-20
最后登录
2010-10-14
14#
发表于 2010-9-21 16:39:26 |只看该作者
for循环条件使用了全局变量值判断。执行过一次后,在后面的tick执行时将跳过for,不会再撤单了。
TB程序化交易研讨群121136207
纯拉皮条者谢绝。哈哈

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20906
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
13#
发表于 2010-9-21 12:47:27 |只看该作者
以上代码会在每个tick都执行一遍的

使用道具 举报

Rank: 4

精华
0
UID
15288
积分
382
帖子
86
主题
18
阅读权限
50
注册时间
2010-8-20
最后登录
2010-10-14
12#
发表于 2010-9-21 12:29:58 |只看该作者
请教斑竹。
以上提供的代码只能在tb启动后撤一次单。
如果需要多次使用这个代码的功能如何搞?
执行一次后全局变量为1,如何在上述代码执行撤单成功后将全局变量重置为0?
TB程序化交易研讨群121136207
纯拉皮条者谢绝。哈哈

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7277
积分
938
帖子
207
主题
44
阅读权限
60
注册时间
2010-3-11
最后登录
2016-5-4
11#
发表于 2010-6-21 10:51:15 |只看该作者
我所写的代码是当有持仓时,马上发出平仓。从平仓发单情况上来看,时间未免也延迟太多。。有没有什么好的办法?

[ 本帖最后由 01011012 于 2010-6-21 10:55 编辑 ]
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20906
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
10#
发表于 2010-6-17 15:24:38 |只看该作者
1.可以使用在tick上
2.这个是判断条件,需要在barstatus==0下增加
OrderPrice=9999999;
删除初始化那句   Numeric OrderPrice(9999999);
3.最后那一句不用加的!

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7277
积分
938
帖子
207
主题
44
阅读权限
60
注册时间
2010-3-11
最后登录
2016-5-4
9#
发表于 2010-6-17 14:00:24 |只看该作者
请斑竹指教。。。。。。。。。。。。。。。。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7277
积分
938
帖子
207
主题
44
阅读权限
60
注册时间
2010-3-11
最后登录
2016-5-4
8#
发表于 2010-6-17 10:39:58 |只看该作者
斑竹上班啦,可以回答下吗?

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
4740
积分
1247
帖子
251
主题
9
阅读权限
60
注册时间
2009-6-29
最后登录
2019-3-30
7#
发表于 2010-6-17 09:18:18 |只看该作者
老大,你真用功,就凭你这个劲。我相信你能赚钱

使用道具 举报

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

bottom

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

GMT+8, 2024-5-19 18:14

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部