Miscellaneous
0
Views
0
Downloads
0
Favorites
AMASig
//+------------------------------------------------------------------+
//---- indicator settings
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DodgerBlue
#property indicator_color2 Gold
//---- indicator parameters
extern int P = 400;
extern double fast = 2;
extern double slow = 10;
extern double dK = 3;
//---- indicator buffers
double buf1[];
double buf2[];
double K1, K2;
double AMA, AMA0;
double Noise, Signal;
double ER, SSC;
int MyBars;
int init()
{
//---- âû÷èñëÿåì ñãëàæèâàþùèå êîíñòàíòû
K1 = 2/(1+slow);
K2 = 2/(1+fast)-K1;
Noise = 0;
for(int j = Bars-2; j >= Bars-P-1; j--) {
Noise += MathAbs(Open[j] - Open[j+1]);
/*
abs[O[Bars-2] - O[Bars-1]]
...
abs[O[Bars-P-1] - O[Bars-P]]
*/
}
AMA0 = Open[Bars-P-1];
MyBars = P+1;
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 159);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 159);
//IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1);
SetIndexBuffer(0, buf1);
SetIndexBuffer(1, buf2);
SetIndexDrawBegin(0, P+1);
SetIndexDrawBegin(1, P+1);
IndicatorShortName("AMASig("+ P + ", " + fast + ", " + slow + ")");
return(0);
}
int start()
{
if (MyBars >= Bars) return(0);
for(int j = Bars-MyBars-1; j >= 0; j--) {
Signal = MathAbs(Open[j] - Open[j+P]);
/*
abs(O[Bars-MyBars-1] - O[Bars-MyBars-1+P])
abs(O[Bars-P-2] - O[Bars-2])
...
abs(O[0] - O[P])
*/
Noise += MathAbs(Open[j] - Open[j+1]) - MathAbs(Open[j+P] - Open[j+P+1]);
/*
abs(O[Bars-MyBars-1] - O[Bars-MyBars]) - abs(O[Bars-MyBars-1+P] - O[Bars-MyBars+P])
abs(O[Bars-P-2] - O[Bars-P-1]) - abs(O[Bars-2] - O[Bars-1])
...
abs(O[0] - O[1]) - abs(O[P] - O[P+1])
*/
if (Noise > 0) ER = Signal/Noise; else ER = 1;
//SSC = MathPow(K1+ER*K2, 2);
SSC = (K1+ER*K2)*(K1+ER*K2);
AMA = AMA0 + SSC*(Open[j]-AMA0);
/*
O[Bars-MyBars-1]
O[Bars-P-2]
...
O[0]
*/
buf1[j] = -1;
buf2[j] = -1;
if (AMA-AMA0 > dK*Point) buf1[j] = AMA;
if (AMA-AMA0 < -dK*Point) buf2[j] = AMA;
AMA0 = AMA;
}
MyBars = Bars;
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
---