I_XO_A_H

Zajímavý indikátor bez bližší specifikace jeho funkčnosti a použití.

 

 

//+——————————————————————+
//|                                                         Amir.mq4 |
//|                                           Copyright © 2005, Amir |
//|                                                                  |
//+——————————————————————+
#property copyright „Copyright © 2005, Amir“
#property link      „“

#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
//—- input parameters
extern int       BoxSize=15;
//—- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
int Cur=0;
int KirUp=0;
int KirDn=0;
int kr=0;
int no=0;
double valueh=0;
double valuel=0;

//+——————————————————————+
//| Custom indicator initialization function                         |
//+——————————————————————+
int init()
{
//—- indicators
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexLabel(0,“XOUP“);
SetIndexStyle(1,DRAW_HISTOGRAM);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexLabel(1,“XODOWN“);
IndicatorShortName(„I-XO-A-H“);
//—-
return(0);
}
//+——————————————————————+
//| Custor indicator deinitialization function                       |
//+——————————————————————+
int deinit()
{
//—- TODO: add your code here

//—-
return(0);
}
//+——————————————————————+
//| Custom indicator iteration function                              |
//+——————————————————————+
int start()
{
int CurrentBar;
double Hi,Lo,Curb;
int    counted_bars=IndicatorCounted();
//—- TODO: add your code here

//—-Calculation—————————
for(int i=0;i<=Bars;i++)
{
CurrentBar = Bars-i;
if (Cur<1)
{
Hi=Close[CurrentBar];
Lo=Close[CurrentBar];
Cur=1;
}
Curb=Close[CurrentBar];
if (Curb>(Hi+BoxSize*Point))
{
Cur+=1;
Hi=Curb;
Lo=Curb-BoxSize*Point;
KirUp=1;
KirDn=0;
kr+=1;
no=0;
}
if (Curb<(Lo-BoxSize*Point))
{
Cur+=1;
Lo=Curb;
Hi=Curb+BoxSize*Point;
KirUp=0;
KirDn=1;
no+=1;
kr=0;
}
valueh=kr;
valuel=0-no;
ExtMapBuffer1[CurrentBar]=valueh;
ExtMapBuffer2[CurrentBar]=valuel;
}
//—-
return(0);
}
//+——————————————————————+

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *