Download FIR MA indicators

firWe’ve tested this mq4 code and it functions perfectly with MT4 (Metatrader 4) and MT5 (Metatrader 5) software and probably works on all MT editions.

It is also recommended for you to definitely rate or make some comments with regards to the indicator regardless of whether FIR MA the very best indicator for Forex for yourself or otherwise. The FIR MA indicator remark section caters all the comments and suggestions provided. A couple of lines will do, it can be ways about how one can use it or the very best means to trade with it. The very best indicator will be picked by FX traders with the aid of your comments in connection with products.

Of course, currency exchange investors will simply want to get the best indicators to deliver success in this venture. Henceforth our aim will be to boost the experience to provide the traders the very best experience feasible Together with the advancements, we’re also searching for better indicators just like the FIR MA. Once we have discovered such indicators, then we will upload it to our website so that traders like you can download and make use of them.

 

[php]</pre>
//+——————————————————————+
//| FIR_MA.mq4 |
//| v.1 09/04/2006 |
//+——————————————————————+
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
#property indicator_width1 2
//Global constants
#define pi 3.141592653589793238462643383279502884197169399375105820974944592
//Input parameters
extern int Periods = 4; // 1/(2*Periods) sets the filter bandwidth
extern int Taps = 21; // must be an odd number
extern int Window = 4; // selects windowing function
//Indicator buffers
double FIRMA[];
//+——————————————————————+
//| |
//+——————————————————————+
int init()
{
ArrayInitialize(FIRMA, EMPTY_VALUE);
IndicatorBuffers(1);
SetIndexBuffer(0, FIRMA);
SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 2);
IndicatorShortName(“FIRMA”);
SetIndexShift(0, -(Taps – 1) / 2);
return(0);
}
//+——————————————————————+
//| |
//+——————————————————————+
int deinit()
{
return(0);
}
//+——————————————————————+
//| |
//+——————————————————————+
int start()
{
double w[];
ArrayResize(w, Taps);
double wsum = 0.0;
for(int k = 0; k < Taps; k++)
{
switch(Window)
{
// Rectangular window
case 1: w[k] = 1.0; break;
// Hanning window
case 2: w[k] = 0.50 – 0.50*MathCos(2.0*pi*k / Taps); break;
// Hamming window
case 3: w[k] = 0.54 – 0.46*MathCos(2.0*pi*k / Taps); break;
//Blackman window
case 4: w[k] = 0.42 – 0.50*MathCos(2.0*pi*k / Taps) +
0.08*MathCos(4.0*pi*k / Taps); break;
//Blackman-Harris window
case 5: w[k] = 0.35875 – 0.48829*MathCos(2.0*pi*k / Taps) +
0.14128*MathCos(4.0*pi*k / Taps) –
0.01168*MathCos(6.0*pi*k / Taps); break;
//Rectangular window
default: w[k] = 1;break;
}
if(k != Taps / 2.0)
w[k] = w[k]*MathSin(pi*(k – Taps / 2.0) / Periods) / pi / (k – Taps / 2.0);
wsum+=w[k];
}
int i = Bars – 1 – IndicatorCounted();
while(i >= 0)
{
if(i <= Bars – Taps)
{
FIRMA[i] = 0.0;
for(k = 0; k < Taps; k++)
FIRMA[i] += Close[i+k]*w[k] / wsum;
}
i–;
}
return(0);
}
//+——————————————————————+
<pre>
[/php]

Click Here to Download

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *