设为首页收藏本站

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

请教为什么要写BarStatus==2? [复制链接]

Rank: 5Rank: 5

精华
0
UID
5696
积分
1213
帖子
256
主题
111
阅读权限
60
注册时间
2009-10-18
最后登录
2023-6-10
跳转到指定楼层
1#
发表于 2009-12-11 20:19:02 |只看该作者 |倒序浏览
看到坛里的一个收盘平仓代码         If (CurrentTime >0.1457&&BarStatus == 2 && MarketPosition()!=0)
                {        If(Close != InvalidNumeric)
                        {        If(A_GetOpenOrderCount()>0) A_DeleteOrder();// 先将未成交的单子全部撤单
                                If(MarketPosition() == 1) Sell(0,Q_BidPrice-dotOffSet);// 平全部多单
                                If(MarketPosition()== -1) BuyToCover(0,Q_AskPrice+dotOffSet);//平全部空单
                        }
                }
        }

另外也看到很多程序中都有BarStatus == 2,想请教下,tb不是默认在最后一根bar不断刷新的吗?为什么还要写BarStatus == 2呢?

[ 本帖最后由 sensegray 于 2009-12-11 20:39 编辑 ]

Rank: 5Rank: 5

精华
0
UID
4740
积分
1247
帖子
251
主题
9
阅读权限
60
注册时间
2009-6-29
最后登录
2019-3-30
2#
发表于 2009-12-11 21:18:08 |只看该作者
A_DeleteOrder(); 所有类似的A函数都是只在实盘盘中有效. 因为上面的程序里引用了A函数.所以要用BARSTATUS来保证不会在历史数据测试的时候得到异常的结果

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5696
积分
1213
帖子
256
主题
111
阅读权限
60
注册时间
2009-10-18
最后登录
2023-6-10
3#
发表于 2009-12-11 21:36:28 |只看该作者
明白了,多谢指导

使用道具 举报

Rank: 1

精华
0
UID
223118
积分
16
帖子
13
主题
3
阅读权限
10
注册时间
2015-11-13
最后登录
2018-7-17
4#
发表于 2016-9-19 00:07:48 |只看该作者
本帖最后由 chenqing 于 2016-9-19 00:09 编辑

sensegray,第一个见到09年活到现在的,可喜可贺,当然除了管理员之外。呵。。。。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
0
UID
237756
积分
20682
帖子
120
主题
31
阅读权限
200
注册时间
2016-7-26
最后登录
2020-3-7
5#
发表于 2016-9-19 10:20:22 |只看该作者
aocool 发表于 2009-12-11 21:18
A_DeleteOrder(); 所有类似的A函数都是只在实盘盘中有效. 因为上面的程序里引用了A函数.所以要用BARSTATUS ...

学习了。。又长经验了。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-21 21:26

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部