奔赴魔方量化 发表于 2025-11-16 10:01:26

【均线指标填充颜色区块,均线指标,颜色填充】均线指标填充颜色区块,颜色区块,均线指标,颜色填充

//---以下是均线填充源码
//---mt5实现思路
首先画两条均线 用copybuffer 绑定数组
用ArrayCopy 绑定filling完成区块填充


//---mt4实现思路
首先画两条均线 用copybuffer 绑定数组
DRAW_HISTOGRAM用均线给他赋值
上区块 画上柱 下区块画下柱

//---mql4//---mql4//---mql4
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
//---
   if(prev_calculated==0)
      for(int i=0; i<rates_total; i++)
      {
         Label1Buffer=iMA(Symbol(),PERIOD_CURRENT,ma20_period,0,MODE_EMA,PRICE_CLOSE,i);
         Label2Buffer=iMA(Symbol(),PERIOD_CURRENT,ma60_period,0,MODE_EMA,PRICE_CLOSE,i);
         if(Label1Buffer> Label2Buffer)
         {
            Label3Buffer=Label1Buffer;
            Label4Buffer=Label2Buffer;
         }
         else
         {
            Label5Buffer=Label1Buffer;
            Label6Buffer=Label2Buffer;

         }
      }
   else
      for(int i=0; i<2; i++)
      {
         Label1Buffer=iMA(Symbol(),PERIOD_CURRENT,ma20_period,0,MODE_EMA,PRICE_CLOSE,i);
         Label2Buffer=iMA(Symbol(),PERIOD_CURRENT,ma60_period,0,MODE_EMA,PRICE_CLOSE,i);

         if(Label1Buffer> Label2Buffer)
         {
            Label3Buffer=Label1Buffer;
            Label4Buffer=Label2Buffer;
         }
         else
         {
            Label5Buffer=Label1Buffer;
            Label6Buffer=Label2Buffer;
         }
      }
//--- return value of prev_calculated for next call
   return(rates_total);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+//---mql5//---mql5//---mql5
int OnCalculate(const int32_t rates_total,
                const int32_t prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int32_t &spread[])
{
//---
   CopyBuffer(ma20_h,0,0,rates_total,Label1Buffer);
   CopyBuffer(ma60_h,0,0,rates_total,Label2Buffer);
   ArrayCopy(Label3Buffer1,Label1Buffer,0,0,rates_total);
   ArrayCopy(Label3Buffer2,Label2Buffer,0,0,rates_total);
   return(rates_total);
}
//+------------------------------------------------------------------+





fx8 发表于 2025-12-3 16:34:27

的确不简单

奔赴魔方量化 发表于 2025-12-3 17:05:25

fx8 发表于 2025-12-3 16:34
的确不简单

          谢谢

csby78 发表于 2026-3-25 16:38:28

不错哦,感谢楼主免费分享

csby78 发表于 2026-3-25 16:39:46

真心不错,感谢楼主免费分享

csby78 发表于 2026-3-25 21:41:59

这个均线不能自己设置均线性质

幸福不简单 发表于 2026-5-23 11:33:22

刚好需要,下载试试
页: [1]
查看完整版本: 【均线指标填充颜色区块,均线指标,颜色填充】均线指标填充颜色区块,颜色区块,均线指标,颜色填充