我目前使用的策略的15分钟的K线及macd值进行开仓的策略,期间需要引用1小时macd的值来辅助操作。
1、我用的交易策略中加载了1小时数据作为data1.
2、公式编写时候,专门为1小时Macd定义了变量(和15分钟macd变量不一样):公式如下:
3、在K线中显示的数字却出入很大
综上所述,请求解决一下跨周期引用macd值不真实的问题。
粗看上去左边被赋值的 和 函数调用都不是data1的
使用range是最方便的
看下系统MACD,用的时候直接 data1.MACDValue
Params
Numeric FastLength(12);
Numeric SlowLength(26);
Numeric MACDLength(9);
Vars
Numeric MACDDiff;
Numeric AvgMACD;
Numeric MACDValue;
Events
OnReady()
{
Range[0:DataSourceSize() - 1]
{
setPlotOption("MACDDiff", "begin-bar", SlowLength);
setPlotOption("MACDDEA", "begin-bar", SlowLength + MACDLength);
setPlotOption("MACD", "begin-bar", SlowLength + MACDLength);
}
}
OnBar(ArrayRef<Integer> indexs)
{
Range[0:DataSourceSize() - 1]
{
MACDDiff = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;
AvgMACD = XAverage(MACDDiff,MACDLength);
MACDValue = 2 * (MACDDiff - AvgMACD);
PlotNumeric("MACDDiff",MACDDiff);
PlotNumeric("MACDDEA",AvgMACD);
If (MACDValue >= 0)
PlotAuto("MACD",MACDValue,0,Color9(),Enum_Bar);
Else
PlotAuto("MACD",MACDValue,0,Color10(),Enum_Bar);
PlotNumeric("零线",0);
}
}
👍
谢谢哈,已经解决了。@左手TBQ右手智大领峰@QL苟日新的用户