指标: 双线一柱变色MACD指标

 

双线一柱变色MACD指标:

MT5已经自带了很多指标,给交易带来了极大便利,作为辅助工具,很多时候我们需要对其进行进一步改造,或重新自定义指标,本例通过实现双线一柱变色MACD指标来进行说明。

双线一柱变色MACD指标

作者: Wen Tao Xiong

 
Automated-Trading:

双线一柱变色MACD指标:

作者: Wen Tao Xiong

更换周期后就变成这样
 
可以自行MACD参数,可与MT5平台自带MACD指标同步配置
 
Automated-Trading:

双线一柱变色MACD指标:

作者: Wen Tao Xiong

怎么把指标复制到软件

 
Automated-Trading:

双线一柱变色MACD指标:

作者: Wen Tao Xiong

有没有MT4 ( Is there any MT4)

双线一柱变色MACD指标 ( Two line one column discoloration MACD index)

 
楼主分享的很完整,从中学习到很多,非常感谢。
 
dong_lu #:
更换周期后就变成这样

在遍历前加入  ArrayInitialize,plot 就不会乱掉


  int start = 1; //  第一次,遍历

  if(prev_calculated > 1)

  {

    start = prev_calculated - 1; // 之后,只做最新的数据

    if(flag_cross && (rates_total != prev_calculated))

      flag_cross = false; // 遍历后,才恢复检测 cross

  }

  else

  {

    ArrayInitialize(upperBuffer, 0.0); // 清空 buffer 缓冲区。 切换周期时,plot 有时候会乱掉

    ArrayInitialize(upperColors, 0.0);

    ArrayInitialize(downBuffer, 0.0);

    ArrayInitialize(downColors, 0.0);

    ArrayInitialize(fillBuffer1, 0.0);

    ArrayInitialize(fillBuffer2, 0.0);

    ArrayInitialize(arrow1Buffer, 0.0);

    ArrayInitialize(arrow2Buffer, 0.0);

  }

 

替换int start =1附近一段,提示如附图所示 'flag_cross' -uncleared_identifier。


前辈,可否介绍更详细一些。


image.png 


Ming Chi Chao #:

在遍历前加入  ArrayInitialize,plot 就不会乱掉


  int start = 1; //  第一次,遍历

  if(prev_calculated > 1)

  {

    start = prev_calculated - 1; // 之后,只做最新的数据

    if(flag_cross && (rates_total != prev_calculated))

      flag_cross = false; // 遍历后,才恢复检测 cross

  }

  else

  {

    ArrayInitialize(upperBuffer, 0.0); // 清空 buffer 缓冲区。 切换周期时,plot 有时候会乱掉

    ArrayInitialize(upperColors, 0.0);

    ArrayInitialize(downBuffer, 0.0);

    ArrayInitialize(downColors, 0.0);

    ArrayInitialize(fillBuffer1, 0.0);

    ArrayInitialize(fillBuffer2, 0.0);

    ArrayInitialize(arrow1Buffer, 0.0);

    ArrayInitialize(arrow2Buffer, 0.0);

  }