[MT4指标]Kairi趋势指标
附图指标,
mt4指标类型:趋势指标
是否能用在mt4手机版上:否
是否含有未来函数:无
//+------------------------------------------------------------------+
//| Kairi.mq4 |
//| Copyright(C) 2005 S.B.T. All Rights Reserved. |
//| http://fumito.s68.xrea.com/sb/sufx/ |
//+------------------------------------------------------------------+
#property copyright "Copyright(C) 2005 S.B.T. All Rights Reserved."
#property link "http://fumito.s68.xrea.com/sb/sufx/"
//---- indicator settings
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- indicator parameters
extern int MA_Period=21;
extern int MA_Method=0;
extern int Apply=0;
//---- indicator buffers
double Kairi_buffer;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name1,short_name2;
//---- drawing settings
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+1);
//---- indicator buffers mapping
if(!SetIndexBuffer(0,Kairi_buffer))
Print("cannot set indicator buffers!");
//---- name for DataWindow and indicator subwindow label
switch(MA_Method)
{
case 1 : short_name1="EMA("; break;
case 2 : short_name1="SMMA("; break;
case 3 : short_name1="LWMA("; break;
default :
MA_Method=0;
short_name1="SMA(";
}
switch(Apply)
{
case 1 : short_name2="Apply to Open price"; break;
case 2 : short_name2="Apply to High price"; break;
case 3 : short_name2="Apply to Low price"; break;
case 4 : short_name2="Apply to Median price, (high+low)/2"; break;
case 5 : short_name2="Apply to Typical price, (high+low+close)/3"; break;
case 6 : short_name2="Apply to Weighted close price, (high+low+close+close)/4"; break;
default :
Apply=0;
short_name2="Apply to Close price";
}
IndicatorShortName("Kairi("+short_name1+"("+MA_Period+")) "+short_name2);
SetIndexLabel(0,"Kairi");
//---- initialization done
return(0);
}
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence |
//+------------------------------------------------------------------+
int start()
{
int limit;
int counted_bars=IndicatorCounted();
double MA_buffer;
//---- 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;
ArrayResize(MA_buffer,limit);
//---- macd counted in the 1-st buffer
for(int i=0; iKairi.jpg
发表于:2017-08-11 08:47只看该作者
2楼
阅尽天下指标
韬客社区www.talkfx.co