0
Views
0
Downloads
0
Favorites
NMAmr
//+------------------------------------------------------------------+
//| nmm.mq4 |
//| Copyright © 2007, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
#property indicator_buffers 4
#property indicator_separate_window
double extmapbuffer1[];
double extmapbuffer2[];
double extmapbuffer3[];
double extmapbuffer4[];
#property indicator_color1 Red
#property indicator_color2 Orange
#property indicator_color3 Yellow
#property indicator_color4 Green
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
SetIndexStyle (0,DRAW_LINE);
SetIndexStyle (1,DRAW_LINE);
SetIndexStyle (2,DRAW_LINE);
SetIndexStyle (3, DRAW_LINE);
SetIndexBuffer (0, extmapbuffer1);
SetIndexBuffer (1, extmapbuffer2);
SetIndexBuffer (2, extmapbuffer3);
SetIndexBuffer (3, extmapbuffer4);
string short_name = "NMR";
IndicatorShortName (short_name);
//---- indicators
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
double a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40;
double s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15,s16,s17,s18,s19,s20,s21,s22,s23,s24,s25,s26,s27,s28,s29,s30,s31,s32,s33,s34,s35,s36,s37,s38,s39,s40;
double ave, badif0,badif1,badif2,badif3,badif4,badif5,badif6,badif7,badif8,badif9,badif10,badif11,badif12,badif13,badif14,badif15,badif16,badif17,badif18,badif19,badif20,badif21,badif22,badif23,badif24,badif25,badif26,badif27,badif28,badif29,badif30,badif31,badif32,badif33,badif34,badif35,badif36,badif37,badif38,badif39,badif40;
double sum,sum2, ratio, dif0,dif1,dif2,dif3,dif4,dif5,dif6,dif7,dif8,dif9,dif10,dif11,dif12,dif13,dif14,dif15,dif16,dif17,dif18,dif19,dif20,dif21,dif22,dif23,dif24,dif25,dif26,dif27,dif28,dif29,dif30,dif31,dif32,dif33,dif34,dif35,dif36,dif37,dif38,dif39,dif40;
double adif0,adif1,adif2,adif3,adif4,adif5,adif6,adif7,adif8,adif9,adif10,adif11,adif12,adif13,adif14,adif15,adif16,adif17,adif18,adif19,adif20,adif21,adif22,adif23,adif24,adif25,adif26,adif27,adif28,adif29,adif30,adif31,adif32,adif33,adif34,adif35,adif36,adif37,adif38,adif39,adif40;
int pos = Bars - counted_bars;
while (pos>=0)
{
if (counted_bars<0) return (-1);
if (counted_bars>0) counted_bars--;
dif0 = MathAbs((MathLog(Close[pos])*100000) - (MathLog(Close [pos+1])*100000));
dif1 = MathAbs((MathLog(Close[pos+1])*100000) - (MathLog(Close [pos+2])*100000));
dif2 = MathAbs((MathLog(Close[pos+2])*100000) - (MathLog(Close [pos+3])*100000)) ;
dif3 = MathAbs((MathLog(Close[pos+3])*100000) - (MathLog(Close [pos+4])*100000)) ;
dif4 = MathAbs((MathLog(Close[pos+4])*100000) - (MathLog(Close [pos+5])*100000)) ;
dif5 = MathAbs((MathLog(Close[pos+5])*100000) - (MathLog(Close [pos+6])*100000)) ;
dif6 = MathAbs((MathLog(Close[pos+6])*100000) - (MathLog(Close [pos+7])*100000)) ;
dif7 = MathAbs((MathLog(Close[pos+7])*100000) - (MathLog(Close [pos+8])*100000)) ;
dif8 = MathAbs((MathLog(Close[pos+8])*100000) - (MathLog(Close [pos+9])*100000)) ;
dif9 = MathAbs((MathLog(Close[pos+9])*100000) - (MathLog(Close [pos+10])*100000)) ;
dif10 =MathAbs((MathLog(Close[pos+10])*100000) - (MathLog(Close [pos+11])*100000));
dif11 =MathAbs((MathLog(Close[pos+11])*100000) - (MathLog(Close [pos+12])*100000)) ;
dif12 =MathAbs((MathLog(Close[pos+12])*100000) - (MathLog(Close [pos+13])*100000)) ;
dif14 =MathAbs((MathLog(Close[pos+13])*100000) - (MathLog(Close [pos+14])*100000)) ;
dif15 =MathAbs((MathLog(Close[pos+14])*100000) - (MathLog(Close [pos+15])*100000)) ;
dif16 =MathAbs((MathLog(Close[pos+15])*100000) - (MathLog(Close [pos+16])*100000));
dif17 =MathAbs((MathLog(Close[pos+16])*100000) - (MathLog(Close [pos+17])*100000)) ;
dif18 =MathAbs((MathLog(Close[pos+17])*100000) - (MathLog(Close [pos+18])*100000)) ;
dif19 =MathAbs((MathLog(Close[pos+18])*100000) - (MathLog(Close [pos+19])*100000));
dif20 =MathAbs((MathLog(Close[pos+19])*100000) - (MathLog(Close [pos+20])*100000));
adif0 = MathAbs(MathLog(Close[pos])*100000 - MathLog(Close [pos+1])*100000);
adif1 = MathAbs(MathLog(Close[pos+1])*100000 - MathLog(Close [pos+2])*100000) * (MathSqrt(2)-MathSqrt(1));
adif2 = MathAbs(MathLog(Close[pos+2])*100000 - MathLog(Close [pos+3])*100000) * (MathSqrt(3)-MathSqrt(2));
adif3 = MathAbs(MathLog(Close[pos+3])*100000 - MathLog(Close [pos+4])*100000) * (MathSqrt(4)-MathSqrt(3));
adif4 = MathAbs(MathLog(Close[pos+4])*100000 - MathLog(Close [pos+5])*100000) * (MathSqrt(5)-MathSqrt(4));
adif5 = MathAbs(MathLog(Close[pos+5])*100000 - MathLog(Close [pos+6])*100000)* (MathSqrt(6)-MathSqrt(5));
adif6 = MathAbs(MathLog(Close[pos+6])*100000 - MathLog(Close [pos+7])*100000) * (MathSqrt(7)-MathSqrt(6));
adif7 = MathAbs(MathLog(Close[pos+7])*100000 - MathLog(Close [pos+8])*100000) * (MathSqrt(8)-MathSqrt(7));
adif8 = MathAbs(MathLog(Close[pos+8])*100000 - MathLog(Close [pos+9])*100000) * (MathSqrt(9)-MathSqrt(8));
adif9 = MathAbs(MathLog(Close[pos+9])*100000 - MathLog(Close [pos+10])*100000) * (MathSqrt(10)-MathSqrt(9));
adif10 =MathAbs (MathLog(Close[pos+10])*100000 - MathLog(Close [pos+11])*100000) * (MathSqrt(11)-MathSqrt(10));
adif11 =MathAbs (MathLog(Close[pos+11])*100000 - MathLog(Close [pos+12])*100000) * (MathSqrt(12)-MathSqrt(11));
adif12 =MathAbs (MathLog(Close[pos+12])*100000 - MathLog(Close [pos+13])*100000) * (MathSqrt(13)-MathSqrt(12));
adif14 =MathAbs (MathLog(Close[pos+13])*100000 - MathLog(Close [pos+14])*100000) * (MathSqrt(14)-MathSqrt(13));
adif15 =MathAbs (MathLog(Close[pos+14])*100000 - MathLog(Close [pos+15])*100000) * (MathSqrt(15)-MathSqrt(14));
adif16 =MathAbs (MathLog(Close[pos+15])*100000 - MathLog(Close [pos+16])*100000) * (MathSqrt(16)-MathSqrt(15));
adif17 =MathAbs (MathLog(Close[pos+16])*100000 - MathLog(Close [pos+17])*100000) * (MathSqrt(17)-MathSqrt(16));
adif18 =MathAbs (MathLog(Close[pos+17])*100000 - MathLog(Close [pos+18])*100000) * (MathSqrt(18)-MathSqrt(17));
adif19 =MathAbs (MathLog(Close[pos+18])*100000 - MathLog(Close [pos+19])*100000) * (MathSqrt(19)-MathSqrt(18));
adif20 =MathAbs (MathLog(Close[pos+19])*100000 - MathLog(Close [pos+20])*100000) * (MathSqrt(20)-MathSqrt(19));
s1 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+1])*100000);
s2 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+2])*100000);
s3 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+3])*100000);
s4 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+4])*100000);
s5 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+5])*100000);
s6 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+6])*100000);
s7 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+7])*100000);
s8 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+8])*100000);
s9 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+9])*100000);
s10 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+10])*100000);
s11 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+11])*100000);
s12 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+12])*100000);
s13 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+13])*100000);
s14 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+14])*100000);
s15 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+15])*100000);
s16 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+16])*100000);
s17 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+17])*100000);
s18 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+18])*100000);
s19 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+19])*100000);
s20 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+20])*100000);
s21 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+21])*100000);
s22 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+22])*100000);
s23 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+23])*100000);
s24 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+24])*100000);
s25 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+25])*100000);
s26 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+26])*100000);
s27 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+27])*100000);
s28 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+28])*100000);
s29 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+29])*100000);
s30 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+30])*100000);
s31 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+31])*100000);
s32 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+32])*100000);
s33 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+33])*100000);
s34 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+34])*100000);
s35 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+35])*100000);
s36 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+36])*100000);
s37 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+37])*100000);
s38 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+38])*100000);
s39 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+39])*100000);
s40 = (MathLog(Close[pos])*100000) - (MathLog(Close [pos+40])*100000);
badif1 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+1])*100000) / MathSqrt(1);
badif2 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+2])*100000) / MathSqrt(2);
badif3 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+3])*100000) / MathSqrt(3);
badif4 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+4])*100000) / MathSqrt(4);
badif5 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+5])*100000) / MathSqrt(5);
badif6 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+6])*100000) / MathSqrt(6);
badif7 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+7])*100000) / MathSqrt(7);
badif8 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+8])*100000) / MathSqrt(8);
badif9 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+9])*100000) / MathSqrt(9);
badif10 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+10])*100000) / MathSqrt(10);
badif11= (MathLog(Close[pos])*100000 - MathLog(Close [pos+11])*100000) / MathSqrt(11);
badif12 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+12])*100000) / MathSqrt(12);
badif13 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+13])*100000) / MathSqrt(13);
badif14= (MathLog(Close[pos])*100000 - MathLog(Close [pos+14])*100000) / MathSqrt(14);
badif15 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+15])*100000) / MathSqrt(15);
badif16 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+16])*100000) / MathSqrt(16);
badif17 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+17])*100000) / MathSqrt(17);
badif18= (MathLog(Close[pos])*100000 - MathLog(Close [pos+18])*100000) / MathSqrt(18);
badif19 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+19])*100000) / MathSqrt(19);
badif20 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+20])*100000) / MathSqrt(20);
badif21 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+21])*100000) / MathSqrt(21);
badif22 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+22])*100000) / MathSqrt(22);
badif23 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+23])*100000) / MathSqrt(23);
badif24 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+24])*100000) / MathSqrt(24);
badif26 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+25])*100000) / MathSqrt(25);
badif26 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+26])*100000) / MathSqrt(26);
badif27 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+27])*100000) / MathSqrt(27);
badif28 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+28])*100000) / MathSqrt(28);
badif29 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+29])*100000) / MathSqrt(29);
badif30 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+30])*100000) / MathSqrt(30);
badif31 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+31])*100000) / MathSqrt(31);
badif32 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+32])*100000) / MathSqrt(32);
badif33 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+33])*100000) / MathSqrt(33);
badif34 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+34])*100000) / MathSqrt(34);
badif35 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+35])*100000) / MathSqrt(35);
badif36 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+36])*100000) / MathSqrt(36);
badif37 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+37])*100000) / MathSqrt(37);
badif38 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+38])*100000) / MathSqrt(38);
badif39 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+39])*100000) / MathSqrt(39);
badif40 = (MathLog(Close[pos])*100000 - MathLog(Close [pos+40])*100000) / MathSqrt(40);
double x1;
Print(s1);
ave = (badif1+badif2+badif3+badif4+badif5+badif6+badif7+badif8+badif9+badif10+badif11+badif12+badif13+badif14+badif15+badif16+badif17+badif18+badif19+badif20+badif21+badif22+badif23+badif24+badif25+badif26+badif27+badif28+badif29+badif30+badif31+badif32+badif33+badif34+badif35+badif36+badif37+badif38+badif39+badif40) ;
sum = MathRound(dif1+dif2+dif3+dif4+dif5+dif6+dif7+dif8+dif9+dif10+dif11+dif12+dif13+dif14+dif15+dif16+dif17+dif18+dif19+dif20+dif21+dif22+dif23+dif24+dif25+dif26+dif27+dif28+dif29+dif30+dif31+dif32+dif33+dif34+dif35+dif36+dif37+dif38+dif39+dif40);
sum2 = MathRound(adif1+adif2+adif3+adif4+adif5+adif6+adif7+adif8+adif9+adif10+adif11+adif12+adif13+adif14+adif15+adif16+adif17+adif18+adif19+adif20+adif21+adif22+adif23+adif24+adif25+adif26+adif27+adif28+adif29+adif30+adif31+adif32+adif33+adif34+adif35+adif36+adif37+adif38+adif39+adif40);
ratio = sum2 / sum;
double thisbar, ema=0, ema2=0,ema3=0,ema4=0 , next,t,x,s,r;
thisbar=Close[pos];
r= (adif0+adif1+adif2+adif3+adif4+adif5+adif6+adif7+adif8+adif9+adif10+adif11+adif12+adif13+adif14+adif15+adif16+adif17+adif18+adif19+adif20) ;
t = (badif40+badif39+badif38+badif37+badif36+badif35+badif34+badif33+badif32+badif31+badif30+badif21+badif22+badif23+badif24+badif25+badif26+badif27+badif28+badif29+badif30) / 20;
x = (badif1+badif2+badif3+badif4+badif5+badif6+badif7+badif8+badif9+badif10+badif11+badif12+badif13+badif14+badif15+badif16+badif17+badif18+badif19+badif20) / 20;
s = (badif10+badif11+badif12+badif13+badif14+badif15+badif16+badif17+badif18+badif19+badif20+badif21+badif22+badif23+badif24+badif25+badif26+badif27+badif28+badif29+badif30 ) /20;
ema = ema + (ratio * (x - ema));
ema2 = ema2 +(ratio * (r*ratio - ema2));
ema4 = ema4 + (ratio * (((t+x+s)/3)-ema4));
extmapbuffer4[pos] = ema4;
extmapbuffer1[pos] = ema;
extmapbuffer3[pos] = -ema2;
extmapbuffer2[pos] = ema2;
pos--;
}
//----
//----
return(0);
}
//+------------------------------------------------------------------+
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---