//+------------------------------------------------------------------+ //| IndJingo.mq4 | //| Sergey Sviridenko | //| svirsa@bk.ru | //+------------------------------------------------------------------+ #property copyright "Sergey Sviridenko" #property link "svirsa@bk.ru" #property indicator_chart_window #property indicator_buffers 0/* #property indicator_color1 Lime #property indicator_width1 1 #property indicator_color2 Lime #property indicator_width2 1*/ //--- input parameters //--- buffers double MinBuffer[]; double MaxBuffer[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators IndicatorBuffers( 2); SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,MinBuffer); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,MaxBuffer); //---- SetIndexLabel(0,"Min"); SetIndexLabel(1,"Max"); return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- почистим за собой ObjectDelete("YesterdayMin"); ObjectDelete("YesterdayMax"); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { if (Period()>240) return(-1); //только на таймфреймах меньше дня int counted_bars=IndicatorCounted(); //посчитанные бары int i=Bars-counted_bars-1; //индекс бара на текущем таймфрейме while (i>=0) { int d=iBarShift(NULL, PERIOD_D1, Time[i],false); //индекс бара на дневках //--расчет линий MinBuffer[i]=iLow(NULL, PERIOD_D1,d+1); MaxBuffer[i]=iHigh(NULL, PERIOD_D1,d+1); //--креативим линии ObjectCreate("YesterdayMin", OBJ_HLINE, 0, Time[i], MinBuffer[i]); ObjectCreate("YesterdayMax", OBJ_HLINE, 0, Time[i], MaxBuffer[i]); ObjectSet("YesterdayMin",OBJPROP_WIDTH, 2); ObjectSet("YesterdayMax",OBJPROP_WIDTH, 2); ObjectSet("YesterdayMin",OBJPROP_COLOR, Maroon); ObjectSet("YesterdayMax",OBJPROP_COLOR, Maroon); ObjectMove("YesterdayMin", 0, Time[i], MinBuffer[i]); ObjectMove("YesterdayMax", 0, Time[i], MaxBuffer[i]); i--; } //---- return(0); } //+------------------------------------------------------------------+