设为首页收藏本站

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

请问我这个初始化全局变量的写法对吗? [复制链接]

Rank: 1

精华
0
UID
259328
积分
5
帖子
3
主题
2
阅读权限
10
注册时间
2017-11-19
最后登录
2019-8-6
跳转到指定楼层
1#
发表于 2017-11-30 21:34:40 |只看该作者 |倒序浏览
主要是为了掉线或者第二日开仓防止初始化掉原有持仓。
If(BarStatus==0 )
     {
      if(A_TotalPosition() >0)
      {
      SetGlobalVar(0,1);
      }
      If(A_TotalPosition() <0)
      {
      SetGlobalVar(1,1);     
      }
      Else
      {
     SetGlobalVar(0,0);
     SetGlobalVar(1,0);
      }
帮忙看下可以吗? 测试的时候 有时候灵 有时候不灵。。。

Rank: 1

精华
0
UID
259328
积分
5
帖子
3
主题
2
阅读权限
10
注册时间
2017-11-19
最后登录
2019-8-6
2#
发表于 2017-12-3 16:36:36 |只看该作者
三天没人上一下么?大家都怎么解决的?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
3#
发表于 2017-12-4 08:58:56 |只看该作者
你的需求并没有表现清楚,所以可能其他人没法帮您判断呢。。
首先,持仓最是存在于帐户信息中的,并不会因为掉线等原因而导致“被初始化”。
其次,如果是担心掉线等原因导致的全局变量被始始化,可以使用if(getglobalvar(0)==invalidnumeric)setglobalvar(0,0);这样的方式进行初始化。。
如果是担心软件重启后的全局变量被初始化,可以使用settbprofilestring这样读写数据库的方式来替代全局变量。

使用道具 举报

Rank: 1

精华
0
UID
260680
积分
21
帖子
12
主题
1
阅读权限
10
注册时间
2017-12-18
最后登录
2017-12-25
4#
发表于 2017-12-22 18:30:47 |只看该作者
版主说的对,需求说清楚啊。我只说一下你这个程序结构上的问题,这个程序可能能够运行,但是语法不够严谨。你里面的嵌套应该是这样的:
If (Condition1)
{
TradeBlazer 公式语句1;
}Else If(Condition2)
{
TradeBlazer 公式语句2;
}Else
{

虽然你那样也能运行,但是语法上不严谨。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-2 08:01

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部