//+------------------------------------------------------------------+ //| Candles_HigherTimeFrameBar LargeTF.mq4 | //| Copyright © 2005, Miramaxx. | //| mailto: morrr2001[dog]mail.ru | //+------------------------------------------------------------------+ //|Ïîñòðîåíèå íà ãðàôèêå ñâå÷åé ñòàðøåãî òàéìôðåéìà. | //+------------------------------------------------------------------+ #property copyright "Copyright © 2005, Miramaxx." #property link "mailto: morrr2001[dog]mail.ru" //---- #property indicator_chart_window //---- extern string TF="240"; extern int CountBars=30; extern color Bear=Maroon; extern color Bull=MidnightBlue; extern bool backgr= false; //---- datetime time1; datetime time2; double open_price,close_price; int bar_tf; int PeriodName=0; int num=0; string error=" error setting parameter: TF \n example: for H1 chart enter parameter: D1"; // string error="Ïàðàìåòð TF çàäàí íå âåðíî \nÏðèìåð: äëÿ ÷àñîâîãî ãðàôèêà âûáåðèòå ïàðàìåòð D1."; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void ObjDel() { for(;num>=0;num--) ObjectDelete("Objtf"+num); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int init() { if (TF=="M1"||TF=="m1"||TF=="1") PeriodName=PERIOD_M1; // in Minutes or as MT4 Periodicity Tab //â òîì æå ïîðÿäêå, ÷òî è êíîïêè íà ïàíåëè else if (TF=="M5"||TF=="m5"||TF=="5") PeriodName=PERIOD_M5; else if (TF=="M15"||TF=="m15"||TF=="M5"||TF=="15")PeriodName=PERIOD_M15; else if (TF=="M30"||TF=="m30"||TF=="30")PeriodName=PERIOD_M30; else if (TF=="H1"||TF=="h1"||TF=="60") PeriodName=PERIOD_H1; else if (TF=="H4"||TF=="h4"||TF=="240") PeriodName=PERIOD_H4; else if (TF=="D1"||TF=="d1"||TF=="1440") PeriodName=PERIOD_D1; else if (TF=="W1"||TF=="w1"||TF=="10080") PeriodName=PERIOD_W1; else if (TF=="MN"||TF=="mn"||TF=="43200") PeriodName=PERIOD_MN1; else { Comment(error); return(0); } Comment("HigherTF (",TF,") Bar"); return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int deinit() { ObjDel(); Comment(""); return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { int i; ObjDel(); num=0; //---- if (PeriodName<=Period()) { Comment(error); return(0); } //---- for(bar_tf=CountBars;bar_tf>=0;bar_tf--) { time1=iTime(NULL,PeriodName,bar_tf); i=bar_tf-1; if (i<0) time2=Time[0]; else time2=iTime(NULL,PeriodName,i)-Period()*60; open_price=iOpen(NULL,PeriodName,bar_tf); close_price=iClose(NULL,PeriodName,bar_tf); //--- ObjectCreate("Objtf"+num,OBJ_RECTANGLE,0,time1,open_price,time2,close_price); ObjectSet("Objtf"+num, OBJPROP_WIDTH, 3); ObjectSet("Objtf"+num, OBJPROP_BACK, backgr); if (time2-time1<PeriodName*60/2) time2=Time[0]; else time2=time1+PeriodName*60/2; num++; //---- ObjectCreate("Objtf"+num,OBJ_TREND,0,time2,iHigh(NULL,PeriodName,bar_tf),time2,iLow(NULL,PeriodName,bar_tf)); ObjectSet("Objtf"+num, OBJPROP_WIDTH, 3); ObjectSet("Objtf"+num, OBJPROP_RAY, false); //---- if (close_price>open_price) { ObjectSet("Objtf"+(num-1),OBJPROP_COLOR, Bull); ObjectSet("Objtf"+num,OBJPROP_COLOR, Bull); ObjectSet("Objtf"+num, OBJPROP_WIDTH, 3); } else { ObjectSet("Objtf"+(num-1),OBJPROP_COLOR, Bear); ObjectSet("Objtf"+num,OBJPROP_COLOR, Bear); ObjectSet("Objtf"+num, OBJPROP_BACK, false); } num++; } return(0); } //+------------------------------------------------------------------+
Sample
Analysis
Market Information Used:
Series array that contains open time of each bar
Series array that contains open prices of each bar
Series array that contains close prices for each bar
Series array that contains the highest prices of each bar
Series array that contains the lowest prices of each bar
Indicator Curves created:
Indicators Used:
Custom Indicators Used:
Order Management characteristics:
Other Features: