诚信为本
量力而为
当前位置:峰汇在线 > MetaTrader 4 > MT4指标 > 正文

MT4移动平均线组指标 Carter_MA.mq4

Carter_MA指标插入移动平均线组,均线周期、颜色等参数可以根据需要设置。

图表:Carter_MA指标

源码:

//+------------------------------------------------------------------+
//|                                                    Carter_MA.mq4 |
//|                       Copyright @2006, MetaQuotes Software Corp. |
//+------------------------------------------------------------------+
#property copyright "Copyright @2006, MetaQuotes Software Corp."
#property link      "http://www.125808047.com/"

#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color1 Sienna
#property indicator_color2 Green
#property indicator_color3 Blue
#property indicator_color4 Red
#property indicator_color5 Red

extern int ma1 = 8;
extern int ma2 = 21;
extern int ma3 = 50;
extern int ma4 = 100;
extern int ma5 = 200;

double ma1_buffer [];
double ma2_buffer [];
double ma3_buffer [];
double ma4_buffer [];
double ma5_buffer [];  
int a_begin;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit(void)
{
   SetIndexStyle(0, DRAW_LINE);
   SetIndexBuffer(0, ma1_buffer);
   SetIndexLabel(0, "8 EMA");

   SetIndexStyle(1, DRAW_LINE);
   SetIndexBuffer(1, ma2_buffer);
   SetIndexLabel(1, "21 EMA");   

   SetIndexStyle(2, DRAW_LINE,EMPTY,2);
   SetIndexBuffer(2, ma3_buffer);
   SetIndexLabel(2, "50 EMA");

   SetIndexStyle(3, DRAW_LINE,STYLE_DOT);
   SetIndexBuffer(3, ma4_buffer);
   SetIndexLabel(3, "100 EMA");

   SetIndexStyle(4, DRAW_LINE,EMPTY, 3);
   SetIndexBuffer(4, ma5_buffer);
   SetIndexLabel(4, "200 EMA");
   Comment("www.125808047.com");
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
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[])
  {
   int counted_bars = IndicatorCounted();

   if(counted_bars < 0) 
       return(-1);

   if(counted_bars > 0) 
       counted_bars --;
   int pos = Bars - counted_bars;  

   while(pos >= 0) 
     {
       ma1_buffer[pos] = iMA(NULL, 0, ma1, NULL, MODE_EMA, PRICE_CLOSE, pos);
       ma2_buffer[pos] = iMA(NULL, 0, ma2, NULL, MODE_EMA, PRICE_CLOSE, pos);
       ma3_buffer[pos] = iMA(NULL, 0, ma3, NULL, MODE_EMA, PRICE_CLOSE, pos);
       ma4_buffer[pos] = iMA(NULL, 0, ma4, NULL, MODE_EMA, PRICE_CLOSE, pos);
       ma5_buffer[pos] = iMA(NULL, 0, ma5, NULL, MODE_EMA, PRICE_CLOSE, pos);
       pos--;
     }
   return(rates_total);
  }
//+------------------------------------------------------------------+
打赏
版权所有转载请注明标题及链接:峰汇在线 » MT4移动平均线组指标 Carter_MA.mq4
上一篇:
下一篇:
分享到: 更多 (0)

如您觉得此文不错请扫码打赏!

支付宝扫一扫打赏

微信扫一扫打赏