[MT4指标]Fisher_Yur4ik_Correct_One指标
附图指标,
mt4指标类型:趋势指标
是否能用在mt4手机版上:否
是否含有未来函数:无
#property copyright "Copyright ? 2005, Yura Prokofiev"
#property link "[email protected]"
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 Lime
#property indicator_color2 Blue
#property indicator_color3 Red
#property indicator_level1 -0.25
#property indicator_level2 0.25
extern int period=13;
extern int bars_count=1000;
double ExtBuffer0;
double ExtBuffer1;
double ExtBuffer2;
int init()
{
SetIndexStyle(0,DRAW_NONE);
SetIndexStyle(1,DRAW_LINE,1,3);
SetIndexStyle(2,DRAW_LINE,1,3);
//IndicatorDigits(Digits+1);
SetIndexBuffer(0,ExtBuffer0);
SetIndexBuffer(1,ExtBuffer1);
SetIndexBuffer(2,ExtBuffer2);
IndicatorShortName("Fisher");
SetIndexLabel(1,NULL);
SetIndexLabel(2,NULL);
return(0);
}
int start()
{
//int period=10;
int limit;
int counted_bars=IndicatorCounted();
double prev,current,old;
double Value=0,Value1=0,Value2=0,Fish=0,Fish1=0,Fish2=0;
double price;
double MinL=0;
double MaxH=0;
if(counted_bars>0) counted_bars--;
if(bars_count > Bars || bars_count==0)
{
limit=Bars - period;
}else{
limit=bars_count-period;
}
for(int i=limit; i>=0; i--)
{ MaxH = High[Highest(NULL,0,MODE_HIGH,period,i)];
MinL = Low[Lowest(NULL,0,MODE_LOW,period,i)];
price = (High+Low)/2;
Value = 0.33*2*((price-MinL)/(MaxH-MinL)-0.5) + 0.67*Value1;
Value=MathMin(MathMax(Value,-0.999),0.999);
ExtBuffer0=0.5*MathLog((1+Value)/(1-Value))+0.5*Fish1;
Value1=Value;
Fish1=ExtBuffer0;
}
bool up=true;
for(i=limit-2; i>=0; i--)
{
current=ExtBuffer0;
prev=ExtBuffer0[i+1];
if (((current<0)&&(prev>0))||(current<0)) up= false;
if (((current>0)&&(prev<0))||(current>0)) up= true;
if(!up)
{
ExtBuffer2=current;
ExtBuffer1=0.0;
}
else
{
ExtBuffer1=current;
ExtBuffer2=0.0;
}
}
return(0);
}Fisher_Yur4ik_Correct_One.jpg
发表于:2017-08-09 23:50只看该作者
2楼
韬客交易社区-国内最大的外汇交易社区
韬客社区www.talkfx.co
发表于:2018-12-30 09:27只看该作者
3楼
Fisher_Yur4ik
韬客社区www.talkfx.co