- 精华
- 2
- 在线时间
- 167 小时
- UID
- 99
- 积分
- 662
- 帖子
- 159
- 阅读权限
- 60
- 注册时间
- 2007-8-12
- 最后登录
- 2015-6-9
- 精华
- 2
- UID
- 99
- 积分
- 662
- 帖子
- 159
- 主题
- 42
- 阅读权限
- 60
- 注册时间
- 2007-8-12
- 最后登录
- 2015-6-9
|
海龟交易系统比较复杂,我运用粗浅的编程知识进行认真阅读,发现下面的不解之处:
在 MarketPosition == 0 时,根据突破系统进行第一次开多仓的公式编写时,代码如下:
If(CrossOver(High,DonchianHi))
{
// 开仓价格取突破上轨+一个价位和最高价之间的较小值,这样能更接近真实情况,并能尽量保证成交
myEntryPrice = min(high,DonchianHi + PriceScale*MinMove);
Buy(TurtleUnits,myEntryPrice);
IsEntryThisBar = True;
SetGlobalVar(0,myEntryPrice); // 保存第一次开仓的价格
}
这里面的 IsEntryThisBar = True; 有什么功能?是否无论在什么地方,一旦写出 IsEntryThisBar = True;这条语句,就表示整个条件if语句里面的条件 都是符合的? 并且跟在后面的语句中也好象直接进入了 if语句的{}里面,可以任意使用原来if语句框内的各种局部变量,而不需要SetGlobalVar函数来获取已经设置为全局变量的变量(比如变量 myEntryPrice)?而没有使用IsEntryThisBar = True 这条语句的话就必须使用SetGlobalVar函数来获取已经设置为全局变量的变量?
[ 本帖最后由 ddbq 于 2007-8-18 04:18 编辑 ] |
|