开拓者期货期权程序化系统交易论坛
标题:
关于TBV4序列变量的传递问题
[打印本页]
作者:
飞跃
时间:
2011-6-2 06:29:37
标题:
关于TBV4序列变量的传递问题
先看下面的一段程序,在TB3和TBV4中采用的是同一交易系统
Vars
....
BoolSeries bLongStoped;
BoolSeries bShortStoped;
Begin
......
If(Date!=Date[1])
{
.....(省略内容与所提问题参数无关)
}Else
{
......
bLongStoped = bLongStoped[1];
bShortStoped = bShortStoped[1];
}
1.在TB3和TBV4中在同一位置上加上了
Commentary("bLongStoped="+IIFString(bLongStoped,"True","False"));
Commentary("bShortStoped="+IIFString(bShortStoped,"True","False"));
上面的Else括号里面的程序变成了:
......
Else
{
......
bLongStoped = bLongStoped[1];
Commentary("bLongStoped="+IIFString(bLongStoped,"True","False"));
bShortStoped = bShortStoped[1];
Commentary("bShortStoped="+IIFString(bShortStoped,"True","False"));
}
上面的程序写法没有错误吧?
2.下面就是说,如果程序没错误的话,对比了下TB3和TBV4在同一根(同一天,同一个时刻)Bar上面的数据,发现TB3老版本上面
bLongStoped = False;
bShortStoped = False;
而TBV4新版本上
bLongStoped = False;
bShortStoped = Ture;
这也许是在论坛上黄总说的新版本取消了序列变量的传递问题,下面传递的内容可以省略,但保留应该没什么问题吧,现在就不明白为什么会出现这个问题?TBV4运行机制怎么改变了?
作者:
飞跃
时间:
2011-6-2 06:31:23
另外还有,既然BoolSeries定义的变量默认值为False,为什么此处会出现Ture呢?
作者:
lh948
时间:
2011-6-2 11:06:51
回复
2#
飞跃
bShortStoped 是从前面传递过来的,具体要知道bShortStoped 因什么条件确定下来的值,才能知道为什么在v3和v4会不一样。
V4和V3在运行机制是有一定变化的,具体升级说明请参考这里:
http://www.tradeblazer.net/forum ... &highlight=tbV4
欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/)
Powered by Discuz! X2