设为首页收藏本站

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

请教版主-关于A_BuyPosition使用的疑问,谢谢 [复制链接]

Rank: 3Rank: 3

精华
0
UID
239293
积分
134
帖子
86
主题
28
阅读权限
40
注册时间
2016-8-23
最后登录
2018-3-24
跳转到指定楼层
1#
发表于 2017-4-24 09:42:10 |只看该作者 |倒序浏览
本帖最后由 tommyzhaozh 于 2017-4-24 14:05 编辑

版主你好,我的程序目的如下
隔夜重新打开程序后,我需要使用我账户的持仓信息来重置我的全局变量

因为这个需求,我使用了A_BuyPosition和A_SellPosition函数,但碰到了下面的问题

源代码
        //上一天持有多头
        if(A_BuyPosition > 0 )
        {
                SetGlobalVar(0,A_BuyAvgPrice);
                SetGlobalVar(1,1);
        }
       
        //上一天持有空头
        if(A_SellPosition > 0)
        {
                SetGlobalVar(0, A_SellAvgPrice);
                SetGlobalVar(1,-1);
        }


结果偏差,我发现放我持有多头的时候,我的全局变量getGlobalVar(1),里面显示的数字反而是-1

我吧A_BuyPosition和A_SellPosition转成text输出在屏幕上发现理解并没有问题,出书显示我的A_BuyPosition=1,而A_SellPosition=0

这样我只能理解为我在使用if(A_SellPosition > 0)的时候出现了问题,但我不理解问题的原理

还请教版主,如何正确的使用,非常感谢你长期以来的帮助~~

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
2#
发表于 2017-4-24 14:11:43 |只看该作者
当a_sellposition为无效值时,他也是大于0的,也可能使你的条件以及赋值 成立。。
在使用A函数时,为了避免错误也是为了提高效率。都是需要判断在最后K线以及能取到帐户信息有效值后才进行判断,以及发单 等操作。
建议在你所示的代码上层增加 barstatus==2 以及a _buyposition!=invalidnumeric等类似的判断

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
239293
积分
134
帖子
86
主题
28
阅读权限
40
注册时间
2016-8-23
最后登录
2018-3-24
3#
发表于 2017-4-24 15:07:14 |只看该作者
小米 发表于 2017-4-24 14:11
当a_sellposition为无效值时,他也是大于0的,也可能使你的条件以及赋值 成立。。
在使用A函数时,为了避免 ...

好的,感谢你~~~~~~~~~~~~~·

使用道具 举报

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

bottom

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

GMT+8, 2024-5-21 23:51

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部