- 精华
- 0
- 在线时间
- 93 小时
- UID
- 3136
- 积分
- 331
- 帖子
- 61
- 阅读权限
- 50
- 注册时间
- 2008-12-23
- 最后登录
- 2013-10-13
- 精华
- 0
- UID
- 3136
- 积分
- 331
- 帖子
- 61
- 主题
- 11
- 阅读权限
- 50
- 注册时间
- 2008-12-23
- 最后登录
- 2013-10-13
|
用全局变量就可以了,只是每次打开需要初始化 -------nopain ?
我今天用全局变量代替marketposition控制开仓,代码如下,希望nopain 老大帮忙看一下 非常感谢!
Vars
Numeric mypos(0);
Begin
if(BarStatus==0)
{
mypos=0;
SetGlobalVar(0,mypos);
}Else
{
mypos=GetGlobalVar(0);
}
if(con1开多条件满足 and mypos!=1) // 开多条件满足并且全局变量没有记录有多单的信息
{buy(1,high+2*PriceScale*MinMove);// 买入开仓
SetGlobalVar(0,1); //全局变量的值记录为1,表示此时已经开了多单
}
if(con1开空条件 and mypos!=-1) // 开空条件满足并且全局变量没有记录有空单的信息
{
SellShort(1,low-3*PriceScale*MinMove);
SetGlobalVar(0,-1); //全局变量的值记录为-1,表示此时已经开了空单
}
End
我这个程序看历史数据没有问题,但是实际情况就是打开后第一个买入或者卖出信号产生是会执行,但是后面平仓信号产生并且反手开仓时候,就会出现信号一闪,然后立马消失,此时就帐户有新开反向的仓位 但是系统却不知道。 |
|