- Springfellow-Hawk
- Messages : 539
Date d'inscription : 08/11/2009
Age : 50
Localisation : South beach california
REI Demark.mq4
20/3/2010, 6:23 pm
//+------------------------------------------------------------------+
//| REI.mq4 |
//| Mishutka |
//| www.ourarsenal.narod.ru |
//+------------------------------------------------------------------+
#property copyright "Mishutka"
#property link "www.ourarsenal.narod.ru"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Red
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
extern int lenght=8;
extern int NBars=100;
double REABS[21];
double RE[21];
double REI;
double SUM;
double SUMABS;
int Z;
double TDREI;
double WORK[];
int init()
{
REI=0;
SUM=0;
SUMABS=0;
Z=0;
TDREI=0;
int www=14;
IndicatorBuffers(1);
SetIndexBuffer(0,WORK);
//---- drawing settings
SetIndexLabel(0,"REI");
//SetIndexDrawBegin(0,0);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID);
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+1);
//---- indicator buffers mapping
//---- name for DataWindow and indicator subwindow label
//---- initialization done
return(0);
}
int start()
{
Sleep(100);
int counted_bars=IndicatorCounted();
int limit;
//---- 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;
//---- rei counted in the 1-st buffer
//Äëÿ ýòîãî ÿ ñðàâíèâàþ öåíîâûå ìàêñèìóì è ìèíèìóì â îïðåäåëåííûé äåíü ñ ìàêñèìóìîì è ìèíèìóìîì çà äâà äíÿ äî ýòîãî.
//Ïîëîæèòåëüíàÿ ðàçíîñòü ôèêñèðóåòñÿ òîãäà, êîãäà ìàêñèìàëüíàÿ öåíà âûøå, ÷åì äâà äíÿ íàçàä. Îòðèöàòåëüíàÿ ðàçíîñòü
// ôèêñèðóåòñÿ òîãäà, êîãäà ýòà ìàêñèìàëüíàÿ öåíà ìåíüøå, ÷åì äâà äíÿ íàçàä. Åñëè ìèíèìàëüíàÿ öåíà âûøå ìèíèìàëüíîé
//öåíû äâà äíÿ òîìó íàçàä, òî ôèêñèðóåòñÿ ïîëîæèòåëüíàÿ ðàçíîñòü. Åñëè îíà ìåíüøå, ÷åì äâà äíÿ íàçàä, òî ôèêñèðóåòñÿ î
//òðèöàòåëüíàÿ ðàçíîñòü. Çàòåì äâà ïîëó÷åííûõ çíà÷åíèÿ ñóììèðóþòñÿ è îïðåäåëÿåòñÿ çíà÷åíèå äëÿ äàííîãî äíÿ.
for (int shift=limit;shift>=0;shift--)
{
RE[0]=(High[shift]-High[shift+2])+(Low[shift]-Low[shift+2]);
REABS[0]=MathAbs(High[shift]-High[shift+2])+MathAbs(Low[shift]-Low[shift+2]);
SUM=0;
SUMABS=0;
for (Z=0;Z<=lenght-1;Z++)
{
SUM=SUM+RE[Z];
SUMABS=SUMABS+REABS[Z];
}
if (SUMABS>0) {REI=SUM/SUMABS;}
TDREI=100*REI;
if (TDREI==0) {TDREI=0.00001;}
WORK[shift]=TDREI;
for (Z=21;Z>=0;Z--)
{
RE[Z]=RE[Z-1];
REABS[Z]=REABS[Z-1];
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
//| REI.mq4 |
//| Mishutka |
//| www.ourarsenal.narod.ru |
//+------------------------------------------------------------------+
#property copyright "Mishutka"
#property link "www.ourarsenal.narod.ru"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Red
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
extern int lenght=8;
extern int NBars=100;
double REABS[21];
double RE[21];
double REI;
double SUM;
double SUMABS;
int Z;
double TDREI;
double WORK[];
int init()
{
REI=0;
SUM=0;
SUMABS=0;
Z=0;
TDREI=0;
int www=14;
IndicatorBuffers(1);
SetIndexBuffer(0,WORK);
//---- drawing settings
SetIndexLabel(0,"REI");
//SetIndexDrawBegin(0,0);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID);
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+1);
//---- indicator buffers mapping
//---- name for DataWindow and indicator subwindow label
//---- initialization done
return(0);
}
int start()
{
Sleep(100);
int counted_bars=IndicatorCounted();
int limit;
//---- 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;
//---- rei counted in the 1-st buffer
//Äëÿ ýòîãî ÿ ñðàâíèâàþ öåíîâûå ìàêñèìóì è ìèíèìóì â îïðåäåëåííûé äåíü ñ ìàêñèìóìîì è ìèíèìóìîì çà äâà äíÿ äî ýòîãî.
//Ïîëîæèòåëüíàÿ ðàçíîñòü ôèêñèðóåòñÿ òîãäà, êîãäà ìàêñèìàëüíàÿ öåíà âûøå, ÷åì äâà äíÿ íàçàä. Îòðèöàòåëüíàÿ ðàçíîñòü
// ôèêñèðóåòñÿ òîãäà, êîãäà ýòà ìàêñèìàëüíàÿ öåíà ìåíüøå, ÷åì äâà äíÿ íàçàä. Åñëè ìèíèìàëüíàÿ öåíà âûøå ìèíèìàëüíîé
//öåíû äâà äíÿ òîìó íàçàä, òî ôèêñèðóåòñÿ ïîëîæèòåëüíàÿ ðàçíîñòü. Åñëè îíà ìåíüøå, ÷åì äâà äíÿ íàçàä, òî ôèêñèðóåòñÿ î
//òðèöàòåëüíàÿ ðàçíîñòü. Çàòåì äâà ïîëó÷åííûõ çíà÷åíèÿ ñóììèðóþòñÿ è îïðåäåëÿåòñÿ çíà÷åíèå äëÿ äàííîãî äíÿ.
for (int shift=limit;shift>=0;shift--)
{
RE[0]=(High[shift]-High[shift+2])+(Low[shift]-Low[shift+2]);
REABS[0]=MathAbs(High[shift]-High[shift+2])+MathAbs(Low[shift]-Low[shift+2]);
SUM=0;
SUMABS=0;
for (Z=0;Z<=lenght-1;Z++)
{
SUM=SUM+RE[Z];
SUMABS=SUMABS+REABS[Z];
}
if (SUMABS>0) {REI=SUM/SUMABS;}
TDREI=100*REI;
if (TDREI==0) {TDREI=0.00001;}
WORK[shift]=TDREI;
for (Z=21;Z>=0;Z--)
{
RE[Z]=RE[Z-1];
REABS[Z]=REABS[Z-1];
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|