开拓者期货期权程序化系统交易论坛
标题:
请问我这个初始化全局变量的写法对吗?
[打印本页]
作者:
YJT1982
时间:
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);
}
帮忙看下可以吗? 测试的时候 有时候灵 有时候不灵。。。
作者:
YJT1982
时间:
2017-12-3 16:36:36
三天没人上一下么?大家都怎么解决的?
作者:
小米
时间:
2017-12-4 08:58:56
你的需求并没有表现清楚,所以可能其他人没法帮您判断呢。。
首先,持仓最是存在于帐户信息中的,并不会因为掉线等原因而导致“被初始化”。
其次,如果是担心掉线等原因导致的全局变量被始始化,可以使用if(getglobalvar(0)==invalidnumeric)setglobalvar(0,0);这样的方式进行初始化。。
如果是担心软件重启后的全局变量被初始化,可以使用settbprofilestring这样读写数据库的方式来替代全局变量。
作者:
mianmian
时间:
2017-12-22 18:30:47
版主说的对,需求说清楚啊。我只说一下你这个程序结构上的问题,这个程序可能能够运行,但是语法不够严谨。你里面的嵌套应该是这样的:
If (Condition1)
{
TradeBlazer 公式语句1;
}Else If(Condition2)
{
TradeBlazer 公式语句2;
}Else
{
虽然你那样也能运行,但是语法上不严谨。
欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/)
Powered by Discuz! X2