Download AutoDayFibs MT4 Indicator – Auto Daily Fibonacci MT4 Indicator

AutoDayFibs-MT4-IndicatorAutoDayFibs MT4 Indicator – Auto Daily Fibonacci MT4 Indicator is based on daily high and low levels, everyone who use Fibonacci in strategy needs this indicator.

AutoDayFibo indicator shows the Fibonacci levels based on the daily high and low levels. This indicator is useful for day-traders. You can easily see possible retracement levels either to decide your entry points or take-profit/stop-loss levels.

 

 

[php]</pre>
#property copyright “Copyright © 2009, Julien Loutre”
#property link “http://www.forexcomm.com”
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 LightSkyBlue
#property indicator_color2 Plum

extern int Band_Period = 48;
extern int price_type = 0; // 0 = High/Low | 1 = Open/Close

//—- buffers
double WWBuffer1[];
double WWBuffer2[];
double WWBuffer3[];

double ATR;

int init() {
IndicatorBuffers(2);

SetIndexStyle(0,DRAW_LINE,1);
SetIndexStyle(1,DRAW_LINE,1);

SetIndexLabel(0, “High”);
SetIndexLabel(1, “Low”);

SetIndexBuffer(0, WWBuffer1);
SetIndexBuffer(1, WWBuffer2);

IndicatorDigits(Digits+2);

IndicatorShortName(“Automatic Fibonacci”);

ObjectCreate(“AutoFibo”, OBJ_FIBO, 0, Time[0],High[0],Time[0],Low[0]);

return(0);
}
int deinit() {
ObjectDelete(“AutoFibo”);
}
int start() {
int counted_bars=IndicatorCounted();
int limit,i;

if(counted_bars>0) counted_bars–;
limit=Bars-counted_bars;

for(i=limit-1; i>=0; i–) {

WWBuffer1[i] = getPeriodHigh(Band_Period,i);
WWBuffer2[i] = getPeriodLow(Band_Period,i);

ObjectSet(“AutoFibo”, OBJPROP_TIME1, Time[Band_Period]);
ObjectSet(“AutoFibo”, OBJPROP_TIME2, Time[0]);
if (Open[Band_Period] < Open[0]) { // Up
ObjectSet(“AutoFibo”, OBJPROP_PRICE1, getPeriodHigh(Band_Period,i));
ObjectSet(“AutoFibo”, OBJPROP_PRICE2, getPeriodLow(Band_Period,i));
} else {
ObjectSet(“AutoFibo”, OBJPROP_PRICE1, getPeriodLow(Band_Period,i));
ObjectSet(“AutoFibo”, OBJPROP_PRICE2, getPeriodHigh(Band_Period,i));
}

}
return(0);
}

double getPeriodHigh(int period, int pos) {
int i;
double buffer = 0;
for (i=pos;i<=pos+period;i++) {
if (price_type == 0) {
if (High[i] > buffer) {
buffer = High[i];
}
} else {
if (Open[i] > Close[i]) { // Down
if (Open[i] > buffer) {
buffer = Open[i];
}
} else {
if (Close[i] > buffer) {
buffer = Close[i];
}
}
}
}
return (buffer);
}
double getPeriodLow(int period, int pos) {
int i;
double buffer = 100000;
for (i=pos;i<=pos+period;i++) {
if (price_type == 0) {
if (Low[i] < buffer) {
buffer = Low[i];
}
} else {
if (Open[i] > Close[i]) { // Down
if (Close[i] < buffer) {
buffer = Close[i];
}
} else {
if (Open[i] < buffer) {
buffer = Open[i];
}
}
}
}
return (buffer);
}
<pre>[/php]

Click Here to Download

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *