//+------------------------------------------------------------------+ //| Pivots_Fibonacci.mq4 | //| | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 7 #property indicator_color1 Magenta #property indicator_color2 DarkGoldenrod #property indicator_color3 DarkBlue #property indicator_color4 DarkGoldenrod #property indicator_color5 DarkBlue #property indicator_color6 Crimson #property indicator_color7 Green double PBuffer[]; double S1Buffer[]; double R1Buffer[]; double S2Buffer[]; double R2Buffer[]; double S3Buffer[]; double R3Buffer[]; double S0Buffer[]; //double R0Buffer[]; string Pivot="Pivot Point",FibS1="S 1", FibR1="R 1"; string FibS2="S 2", FibR2="R 2", FibS3="S 3", FibR3="R 3"; int fontsize=10; double P,R,S1,R1,S2,R2,S3,R3; double LastHigh,LastLow,x; int deinit() { ObjectDelete("Pivot"); ObjectDelete("FibS1"); ObjectDelete("FibR1"); ObjectDelete("FibS2"); ObjectDelete("FibR2"); ObjectDelete("FibS3"); ObjectDelete("FibR3"); return(0); } int init() { string short_name; SetIndexStyle(0,DRAW_LINE,0,1,Magenta); SetIndexStyle(1,DRAW_LINE,0,1,DarkGoldenrod); SetIndexStyle(2,DRAW_LINE,0,1,DarkBlue); SetIndexStyle(3,DRAW_LINE,0,1,DarkGoldenrod); SetIndexStyle(4,DRAW_LINE,0,1,DarkBlue); SetIndexStyle(5,DRAW_LINE,0,1,Crimson); SetIndexStyle(6,DRAW_LINE,0,1,Green); SetIndexBuffer(0,PBuffer); SetIndexBuffer(1,S1Buffer); SetIndexBuffer(2,R1Buffer); SetIndexBuffer(3,S2Buffer); SetIndexBuffer(4,R2Buffer); SetIndexBuffer(5,S3Buffer); SetIndexBuffer(6,R3Buffer); short_name="Fib_Pivots"; IndicatorShortName(short_name); SetIndexLabel(0,short_name); SetIndexDrawBegin(0,1); return(0); } int start() { int counted_bars=IndicatorCounted(); int limit, i; if (counted_bars==0) { x=Period(); if (x>240) return(-1); ObjectCreate("Pivot", OBJ_TEXT, 0, 0,0); ObjectSetText("Pivot", "Pivot",8,"Arial",Magenta); ObjectCreate("FibS1", OBJ_TEXT, 0, 0, 0); ObjectSetText("FibS1", "Fib S1",8,"Arial",DarkGoldenrod); ObjectCreate("FibR1", OBJ_TEXT, 0, 0, 0); ObjectSetText("FibR1", "Fib R1",8,"Arial",DarkBlue); ObjectCreate("FibS2", OBJ_TEXT, 0, 0, 0); ObjectSetText("FibS2", "Fib S2",8,"Arial",DarkGoldenrod); ObjectCreate("FibR2", OBJ_TEXT, 0, 0, 0); ObjectSetText("FibR2", "Fib R2",8,"Arial",DarkBlue); ObjectCreate("FibS3", OBJ_TEXT, 0, 0, 0); ObjectSetText("FibS3", "Fib S3",8,"Arial",Crimson); ObjectCreate("FibR3", OBJ_TEXT, 0, 0, 0); ObjectSetText("FibR3", "Fib R3",8,"Arial",Green); } if(counted_bars<0) return(-1); //---- last counted bar will be recounted // if(counted_bars>0) counted_bars--; limit=(Bars-counted_bars)-1; for (i=limit; i>=0;i--) { if (High[i+1]>LastHigh) LastHigh=High[i+1]; if (Low[i+1]