[MT4指标]IND Inverse+EMA指标
附图指标,
mt4指标类型:震荡指标
是否能用在mt4手机版上:否
是否含有未来函数:无
//+------------------------------------------------------------------+
//| IND Inverse.mq4 |
//+------------------------------------------------------------------+
#property copyright "Copyright ? 2006, ..."
#property link "http://www.forex-tsd.com/"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Silver
#property indicator_color2 Red
//---- input parameters
//---- buffers
double Buffer;
double EMA;
extern int iPeriod = 1;
extern int EMAPeriod=25;
//----
//+------------------------------------------------------------------+
//| Init |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
string short_name;
short_name="IND Inverse + EMA("+iPeriod+","+EMAPeriod+")";
IndicatorShortName(short_name);
IndicatorDigits(Digits+2);
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,Buffer);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,EMA);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Parabolic Sell And Reverse system |
//+------------------------------------------------------------------+
int start()
{
int limit;
int counted_bars=IndicatorCounted();
//---- check for possible errors
if(counted_bars<0)
{
return(-1);
}
//---- last counted bar will be recounted
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
//---- do it
for(int i=limit-1; i>=0; i--)
{
// Easy to read
double HD = High[Highest(NULL,0,MODE_HIGH,(iPeriod* 20),i)];
double LD = Low[Lowest(NULL,0,MODE_LOW,(iPeriod* 20),i)];
double amplitude = HD - LD;
Buffer= ((Close-(HD-(amplitude/2)))/amplitude) * iPeriod;
EMA=EMA[i+1]+2.0/(1.0+EMAPeriod)*(Buffer-EMA[i+1]);
}
//----
return(0);
}
//+------------------------------------------------------------------+
IND%20Inverse%2BEMA.jpg

发表于:2017-08-11 09:43只看该作者
2楼
阅尽天下指标
韬客社区www.talkfx.co