Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
TrendPower_v2
/*-----------------------------+
| |
| Shared by www.Aptrafx.com |
| |
+------------------------------*/
//+------------------------------------------------------------------+
//| ADX.mq4 |
//| Copyright © 2004, MetaQuotes Software Corp. |
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net/"
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 LightSeaGreen
#property indicator_color2 YellowGreen
#property indicator_color3 Wheat
//---- input parameters
extern int ADXPeriod=14;
extern int SMAfast=5;
extern int SMAslow=55;
double LoTrigger=-0.125,HiTrigger=0.125;
int shift=0, MAType=1, cnt=0, prevbars=0,loopbegin=0;
double sum=0, smconst=0, prev=0, weight=0, linear=0,IFish=0;
double MAValue=0;
double signal=0,noise=0,efRatio=0,i=0, Fastest=0.6667, Slowest=0.0645;
bool first=true;
//---- buffers
double TrendBuffer[];
double LoBuffer[];
double HiBuffer[];
double PlusSdiBuffer[];
double MinusSdiBuffer[];
double TempBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- 3 additional buffers are used for counting.
IndicatorBuffers(3);
//---- indicator buffers
SetIndexBuffer(0,TrendBuffer);
SetIndexBuffer(1,LoBuffer);
SetIndexBuffer(2,HiBuffer);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1,Red);
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));
//---- name for DataWindow and indicator subwindow label
IndicatorShortName("TrendPower("+SMAfast+")");
SetIndexDrawBegin(0,TrendBuffer);
SetIndexDrawBegin(1,ADXPeriod);
SetIndexDrawBegin(2,ADXPeriod);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Average Directional Movement Index |
//+------------------------------------------------------------------+
int start()
{
// initial checkings
// check for additional bars loading or total reloading
if (Bars < prevbars ) first = true;
if (Bars-prevbars>1) first = true;
prevbars = Bars;
if (first)
{
// loopbegin prevent couning of counted bars exclude current
loopbegin = Bars-SMAslow-1;
if (loopbegin < 0) return(0); // not enough bars for counting
if (Period() > 70 )
{
LoTrigger=-0.15;
HiTrigger=0.15;
}
else
{
LoTrigger=-0.07;
HiTrigger=0.07;
};
first = False;
}
loopbegin = loopbegin+1;
// Comment( loopbegin); // current bar is to be recounted too
for (shift = loopbegin; shift>= 0 ;shift--)
{
MAValue = 100 * (iMA(NULL,0,SMAfast,0,MODE_EMA,PRICE_CLOSE,shift)
- iMA(NULL,0,SMAslow,0,MODE_EMA,PRICE_CLOSE,shift))
*iATR(NULL,0,SMAfast,shift)
/iMA(NULL,0,SMAslow,0,MODE_EMA,PRICE_CLOSE,shift)
/iATR(NULL,0,SMAslow,shift);
IFish=(MathExp(2*MAValue)-1)/(MathExp(2*MAValue)+1);
// SetIndexValue(shift,IFish);
//Comment(IFish);
TrendBuffer[shift]=IFish;
loopbegin = loopbegin-1;
}}
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
---