IndexMeter_MT5

MQL5 Converting

Job finished

Execution time 3 hours
Feedback from customer
great job!
Feedback from employee
Thank you for the project. It was a pleasure working with you.

Specification

Please can anyone help me convert this simple Indicator from MT4
to MT5. 

Please its really a very few lines of codes, and I will appreciate the MT5 to be a as much lines of code.

I do not like complicated and unnecessary lines of code. Kindly delete any useful codes. Thanks



#property indicator_separate_window

#property indicator_buffers 1

#property indicator_level1 0 //middle line

#property indicator_color1  Blue


// ==== External / Internal Input ======= //

int InpFastEMA = 10;

int InpSlowEMA = 20;

int hist = 1000;  //to reduce the number of candles to compute for


// ==== Declaring the arrays

double Meter[];


//+------------------------------------------------------------------+

//| Custom indicator initialization function                         |

//+------------------------------------------------------------------+

int OnInit()

  {

   IndicatorBuffers(1);

   //--- indicator buffers mapping

   SetIndexBuffer(0,Meter);

   SetIndexStyle(0,DRAW_HISTOGRAM);

   

   //--- indicator name / Labels

   IndicatorShortName("Index Meter "); 

   SetIndexLabel(0,"Index Meter"); // name on Data window 

   

   //---

   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[])

  {

//---


// === Calculate the Meter values

   MeterCalc();

               

//--- return value of prev_calculated for next call

   return(rates_total);

  }

//+------------------------------------------------------------------+



//+------------------------------------------------------------------+

//| Calculating the Meter for Any Currency pair                      |

//+------------------------------------------------------------------+

int MeterCalc()

 {

  // double rsi,macd;

  

  //Locally find your own tickers, and compare with what is in IndexArray

  string ccu1 = StringSubstr(_Symbol,0,3);

  string ccu2 = StringSubstr(_Symbol,3,3);

    

  int countB = IndicatorCounted();

  int limitt = Bars - countB;

  if(limitt>hist)limitt=hist;

  for(int i=0;i<limitt;i++) // iterating backwards

    {    

        int count=0;   


     // ==== Next, focus on this chart, and calculate "count"

     double fma1=NormalizeDouble(iMA(_Symbol,0,InpFastEMA,0,MODE_EMA,PRICE_CLOSE,i),Digits);

     double sma1=NormalizeDouble(iMA(_Symbol,0,InpSlowEMA,0,MODE_EMA,PRICE_CLOSE,i),Digits);

     double Macd1=NormalizeDouble(iMACD(NULL,0,12,26,9,0,MODE_MAIN,i),6);

     double rsi1=iRSI(_Symbol,0,14,0,i);

     if(fma1>sma1)count+=10;

     else if(fma1<sma1) count-=10;

     if(Macd1>0) count+=10;

     else if(Macd1<0) count-=10;

     if(rsi1>50) count+=10;

     else if(rsi1<50) count-=10;

      

    // ===== sum all the count

      Meter[i]=count;

    }

 return(0);

}


Files:

JPG
Capture.JPG
30.5 Kb

Responded

1
Developer 1
Rating
(40)
Projects
57
21%
Arbitration
3
67% / 0%
Overdue
9
16%
Loaded
2
Developer 2
Rating
(283)
Projects
289
70%
Arbitration
2
100% / 0%
Overdue
0
Free
Published: 1 code
3
Developer 3
Rating
(8)
Projects
11
0%
Arbitration
3
67% / 33%
Overdue
2
18%
Free
4
Developer 4
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
5
Developer 5
Rating
(31)
Projects
35
46%
Arbitration
0
Overdue
0
Free
Published: 3 codes
6
Developer 6
Rating
(173)
Projects
201
49%
Arbitration
18
11% / 44%
Overdue
1
0%
Free
7
Developer 7
Rating
(29)
Projects
49
22%
Arbitration
13
31% / 15%
Overdue
13
27%
Working
8
Developer 8
Rating
(8)
Projects
10
10%
Arbitration
0
Overdue
4
40%
Working
9
Developer 9
Rating
(240)
Projects
255
52%
Arbitration
0
Overdue
5
2%
Free
10
Developer 10
Rating
(7)
Projects
11
0%
Arbitration
4
0% / 75%
Overdue
2
18%
Working
11
Developer 11
Rating
(434)
Projects
461
69%
Arbitration
6
67% / 0%
Overdue
2
0%
Working
12
Developer 12
Rating
(77)
Projects
231
73%
Arbitration
6
100% / 0%
Overdue
1
0%
Free

Project information

Budget
30 USD
VAT (21%): 6.3 - 6.3 USD
Total: 36.3 - 36.3 USD
For the developer
27 - 27 USD
Deadline
from 1 to 3 day(s)