- 精华
- 0
- 在线时间
- 12 小时
- UID
- 202052
- 积分
- 598
- 帖子
- 12
- 阅读权限
- 50
- 注册时间
- 2015-1-20
- 最后登录
- 2015-1-30
- 精华
- 0
- UID
- 202052
- 积分
- 598
- 帖子
- 12
- 主题
- 3
- 阅读权限
- 50
- 注册时间
- 2015-1-20
- 最后登录
- 2015-1-30
|
以下是MACD的程序
Params
Numeric FastLength(12);
Numeric SlowLength(26);
Numeric MACDLength(9);
Vars
NumericSeries MACDValue;
Numeric AvgMACD;
Numeric MACDDiff;
Begin
MACDValue = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;
AvgMACD = XAverage(MACDValue,MACDLength);
MACDDiff = MACDValue - AvgMACD;
PlotNumeric("MACD",MACDValue);
PlotNumeric("MACDAvg",AvgMACD);
If (MACDDiff >= 0)
PlotNumeric("MACDDiff",MACDDiff,0,Red);
Else
PlotNumeric("MACDDiff",MACDDiff,0,Green);
PlotNumeric("零线",0);
End
我的一个交易策略是需要上一个MACD的交叉来作为开仓信号的
举个例:
If(MACDValue[1] > AvgMACD[1] and marketposition != 1)
{
Buy(0,Open);
}
我尝试过把MACD的变量数值型改为变量序列数值型
即:Vars
NumericSeries AvgMACD
NumericSeries MACDValue
但是这样编程来的程序我回测过,感觉是不正确的,
请问我想要达到,以上一个MACD的交叉作为开仓信号该如何设置,谢谢! |
|