设为首页收藏本站

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

如何正确的使用 A_OrderFilledPrice [复制链接]

Rank: 3Rank: 3

精华
0
UID
18471
积分
201
帖子
38
主题
10
阅读权限
40
注册时间
2010-10-27
最后登录
2023-9-20
跳转到指定楼层
1#
发表于 2011-3-24 16:06:00 |只看该作者 |倒序浏览
本人程序化实盘已经一段时间,也曾经遇到过A_OrderFilledPrice返回为0的情况,但在模拟期间确实没有问题,经过观察和思考,解决了该问题。
    我也曾在论坛问过该问题,但TB官方视而不见听而不闻,作为实盘使用者,你们收了钱,良心何在?今将解决代码公布,与各位共享。

本人在下单的时候,将订单编号记录,其值为:nOrderIndex,记录开仓时间,其值为nOpenTime
nOrderStatus = A_OrderStatus(nOrderIndex);
If( (nOrderStatus == Enum_Canceled) || (nOrderStatus == Enum_Filled) )
{
        //取得成交数量
        nFilledLot = A_OrderFilledLot(nOrderIndex);
        //成交数量大于0
        If( nFilledLot >0 )
        {
                //取得成交价格
                nOrderPrice = A_OrderFilledPrice(nOrderIndex);
                //尚未返回成交价格并且时间小于30秒,则继续等待
                If( (nOrderPrice<0.01) && (TimeDiff(Time,nOpenTime)<30) )
                        Return;
                //30秒尚未返回成交价格,则使用委托价格
                If( nOrderPrice<0.01 )
                {
                        nOrderPrice = A_OrderPrice(nOrderIndex);
                }
                //继续其他处理
                ......
        }
}

Rank: 3Rank: 3

精华
0
UID
18471
积分
201
帖子
38
主题
10
阅读权限
40
注册时间
2010-10-27
最后登录
2023-9-20
2#
发表于 2011-3-24 16:11:14 |只看该作者

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7206
积分
922
帖子
170
主题
57
阅读权限
60
注册时间
2010-3-10
最后登录
2018-2-23
3#
发表于 2011-11-1 00:18:15 |只看该作者
非常感谢无私奉献!

使用道具 举报

Rank: 2

精华
0
UID
15901
积分
76
帖子
22
主题
5
阅读权限
30
注册时间
2010-9-8
最后登录
2012-10-11
4#
发表于 2012-3-4 12:22:57 |只看该作者
非常感谢clicute2010的无私奉献

使用道具 举报

Rank: 5Rank: 5

精华
1
UID
42516
积分
1239
帖子
264
主题
31
阅读权限
60
注册时间
2011-5-25
最后登录
2014-9-23
5#
发表于 2012-8-6 13:57:06 |只看该作者
mark  正需要了解这方面内容

使用道具 举报

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

bottom

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

GMT+8, 2024-5-10 23:15

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部