- 精华
- 0
- 在线时间
- 337 小时
- UID
- 37
- 积分
- 719
- 帖子
- 96
- 阅读权限
- 60
- 注册时间
- 2007-7-24
- 最后登录
- 2013-5-23
- 精华
- 0
- UID
- 37
- 积分
- 719
- 帖子
- 96
- 主题
- 28
- 阅读权限
- 60
- 注册时间
- 2007-7-24
- 最后登录
- 2013-5-23
|
写了个代码,做测试时发现一个信号都不发出,
交易设置都是默认的。
如果需要修改配置,需要修改那里?
Params
Numeric FastLength( 12 );
Numeric SlowLength( 26 );
Numeric MACDLength( 9 );
Numeric SetUpLen(10);
Numeric BuyLots(1);
Vars
NumericSeries MACDValue;
NumericSeries AvgMACD;
NumericSeries BuySetup;
NumericSeries SellSetup;
NumericSeries BuyPeriod(99);
NumericSeries SellPeriod(99);
Begin
MACDValue = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;
AvgMACD = XAverage(MACDValue,MACDLength);
if( CrossOver(MACDValue, AvgMACD) ) //向上交叉时,记录下当前两根线的最高价
{
BuySetup = Highest(high,2) + 1;
BuyPeriod = 0;
}
If(MarketPosition == 1)
{
BuyPeriod = SetUpLen + 1;
}Else If(MarketPosition == 0){
BuyPeriod = BuyPeriod + 1;
}
//Enter Long
if(BuyPeriod <= SetUpLen and high > buysetup ) //在 N 根线内,当最高价大于交叉时的最高价+1,则在下一根线开仓
{
Buy(BuyLots,buysetup,true);
}
//Exit Long
if( CrossUnder(MACDValue, AvgMACD) ) //向下交叉时在下一根线退出
{
sell(0,0,true);
}
End |
|