zpc_tb 发表于 2017-1-24 17:58:09

macd怎么引用跨周期数据

需要30分钟和日线的XAverage数据

http://bbs.tb18.net/forum.php?mod=viewthread&tid=2433&extra=page%3D1&tid=2433
刚刚用的这个函数,这个时间周期是能用30分钟的
        MACDValue30 = MinsXAverage(30, Close, FastLength ) - MinsXAverage(30, Close, SlowLength );        
        AvgMACD30 = MinsXAverage(30,MACDValue30,MACDLength);
        MACDDiff30 = MACDValue30 - AvgMACD30;

但是我在日线上想调用30分钟的macd数据,数值全为0
如果想在30分钟上调用日线的MACD数据,这个时间还不能大于240分钟,即使选用225~230分钟的图,也跟日线差别很大
这个帖子都是08年的了,这几年应该也有新的方法解决了吧
求大神啊

zpc_tb 发表于 2017-1-24 22:13:09

Params
        Numeric FastLength(12);
        Numeric SlowLength(26);
        Numeric MACDLength(9);
Vars
        NumericSeries MACDValue;
        Numeric AvgMACD;
        Numeric MACDDiff;
        string strkey;
        string strValue;
Begin
        MACDValue = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;       
        AvgMACD = XAverage(MACDValue,MACDLength);
        MACDDiff = MACDValue - AvgMACD;
        strKey = DateToString(Date);
        strValue = Text(MACDDiff);                        SetTBProfileString("DayMACD",strKey,strValue);
        PlotNumeric("MACDDiff",MACDDiff);
End
日线公式
Vars
        NumericSeries DayMACDValue;
        StringSeries strKey;
        string strValue;
Begin
        If(Date!=Date)
        {
        strKey = DateToString(Date);
        }Else
        {
        strKey = strKey;
        }
        strValue = GetTBProfileString("DayMACD",strKey);
        If(strValue != InvalidString)
        {
        DayMACDValue = Value(strValue);
        }Else
        {
        DayMACDValue = DayMACDValue;
        }
END
30分钟图上输出日线的MACDDIFF

半天没人回答,找到学习文档了,先暂时套用后自问自答下
页: [1]
查看完整版本: macd怎么引用跨周期数据