//+----------------------------------------------------------------
//| "×ÀÑÈÊÈ MT4" CLOCK MT4.mq4
//+-----------------------------------------------------------------
#property indicator_chart_window
//+----------------------------------------------------------------
extern int Corner = 1; // values [0-3] - îïîðíûé óãîë
extern int XDistance = 15; // x ðàññòîÿíèå îò îïîðíîãî óãëà
extern int YDistance = 15; // y ðàññòîÿíèå îò îïîðíîãî óãëà
extern bool Tokyo = true ; //false true
extern bool New_York = true ; //false true
extern color Color1 = Lime; //öâåò ëèíèè äëÿ Ïðèáûëü
extern color Color2 = Maroon; // White öâåò ëèíèè äëÿ óáûòîê
extern int FontSize = 9;
extern string FontName = "Tahoma" ; // "Arial" "Arial Black"
double profit=0; double nPoint = 0;
//+-----------------------------------------------------------
int init(){
return(0);}
//+-----------------------------------------------------------
int deinit()
{ ObjectDelete("CLOCK_3"); ObjectDelete("CLOCK_31");
ObjectDelete("Âðåìÿ Tokyo");ObjectDelete("Âðåìÿ New York");
return(0); }
//+-----------------------------------------------------------
int start(){
double nPoint = GetPoint(Symbol()); profit=0;
for (int w1=0; w1<OrdersTotal(); w1++)
if ((OrderSelect(w1, SELECT_BY_POS, MODE_TRADES))&&
(OrderSymbol()==Symbol())&&(OrderType()==OP_BUY)||(OrderType()==OP_SELL))
profit+=OrderProfit();
//+---------------------------------------------------------
color colir ;
if(profit >0) colir = Color1 ; else colir = Color2;
// ========================================================================================
ObjectCreate ("CLOCK_3", OBJ_LABEL, 0,0,0);
ObjectSetText("CLOCK_3", DoubleToStr (profit / OrderLots () /MarketInfo (Symbol(), MODE_TICKVALUE) ,0)
+ "/" + DoubleToStr (profit ,1)+ "$, D/" +
DoubleToStr (iHigh(NULL,PERIOD_D1,0)/ nPoint-iLow(NULL,PERIOD_D1,0)/ nPoint,0) + ", "+
"M" + Period() + "-" + (TimeCurrent()-Time[0])/60 + ":"+ (TimeCurrent()-Time[0])%60 + "// " +
DoubleToStr(iHigh(NULL,0,0)/ nPoint-iLow(NULL,0,0)/ nPoint,0) +", " +
DoubleToStr(iHigh(NULL,0,1)/ nPoint-iLow(NULL,0,1)/ nPoint,0) +", " +
DoubleToStr(iHigh(NULL,0,2)/ nPoint-iLow(NULL,0,2)/ nPoint,0) +" ï. " +
TimeToStr(TimeCurrent(), TIME_SECONDS), FontSize, FontName, colir);
ObjectSet( "CLOCK_3", OBJPROP_CORNER, Corner);
ObjectSet( "CLOCK_3", OBJPROP_XDISTANCE, XDistance);
ObjectSet( "CLOCK_3", OBJPROP_YDISTANCE, YDistance);
ObjectSet("CLOCK_3",OBJPROP_TIMEFRAMES,OBJ_PERIOD_M1 |OBJ_PERIOD_M5| OBJ_PERIOD_M15 | OBJ_PERIOD_M30 | OBJ_PERIOD_H1 );
// ========================================================================================
if (Tokyo) ObjectCreate( "Âðåìÿ Tokyo", OBJ_LABEL, 0,0,0); ObjectSet( "Âðåìÿ Tokyo", OBJPROP_CORNER, 2 );
ObjectSet( "Âðåìÿ Tokyo", OBJPROP_XDISTANCE, 2); ObjectSet( "Âðåìÿ Tokyo", OBJPROP_YDISTANCE, 2);
ObjectSetText("Âðåìÿ Tokyo", TimeToStr(CurTime()+28800, TIME_MINUTES), FontSize, FontName, colir);
// Ïðè ïåðåõîäå íà ëåòíåå âðåìÿ äîáàâòå èëè îòíèìèòå 1 ÷àñ = 3600 ñåêóíä http://time.yandex.ru/
if (New_York) ObjectCreate( "Âðåìÿ New York", OBJ_LABEL, 0,0,0); ObjectSet( "Âðåìÿ New York", OBJPROP_CORNER, 3 );
ObjectSet( "Âðåìÿ New York", OBJPROP_XDISTANCE, 3); ObjectSet( "Âðåìÿ New York", OBJPROP_YDISTANCE, 3);
ObjectSetText("Âðåìÿ New York", TimeToStr(CurTime()- 21600, TIME_MINUTES), FontSize, FontName, colir);
// ========================================================================================
ObjectCreate ("CLOCK_31", OBJ_LABEL, 0,0,0);
ObjectSetText("CLOCK_31", DoubleToStr(profit,2)+ "$. " +
"H1/" + DoubleToStr (iHigh(NULL,PERIOD_H1,0) / nPoint-iLow(NULL,PERIOD_H1,0)/ nPoint,0) + ", " +
"H4/" + DoubleToStr (iHigh(NULL,PERIOD_H4,0) / nPoint-iLow(NULL,PERIOD_H4,0)/ nPoint,0) + ", " +
"D/" + DoubleToStr (iHigh(NULL,PERIOD_D1,0) / nPoint-iLow(NULL,PERIOD_D1,0)/ nPoint,0) + ", " +
"W/" + DoubleToStr (iHigh(NULL,PERIOD_W1,0) / nPoint-iLow(NULL,PERIOD_W1,0)/ nPoint,0) + ", " +
"M/" + DoubleToStr (iHigh(NULL,PERIOD_MN1,0)/ nPoint-iLow(NULL,PERIOD_MN1,0)/nPoint,0) + ". " +
TimeToStr(TimeCurrent(), TIME_SECONDS) ,FontSize, FontName, colir);
ObjectSet( "CLOCK_31", OBJPROP_CORNER, Corner);
ObjectSet( "CLOCK_31", OBJPROP_XDISTANCE, XDistance);
ObjectSet( "CLOCK_31", OBJPROP_YDISTANCE, YDistance);
ObjectSet("CLOCK_31",OBJPROP_TIMEFRAMES, OBJ_PERIOD_H4| OBJ_PERIOD_D1 |OBJ_PERIOD_W1| OBJ_PERIOD_MN1 );
// ========================================================================================
return(0); }
//========================================================================================
double GetPoint(string vSymbol){
int vres = StringFind(vSymbol,"JPY");
if (vres == -1) return(0.0001); return(0.01);}
//+------------------------------------------------------------------
//========================================================================================
Comments