//+------------------------------------------------------------------+ //| Ind-LightInfo.mq4 | //| Copyright © 2012, admin@expforex.com | //| http://www.expforex.com | //+------------------------------------------------------------------+ #property copyright "Copyright © 2012, admin@expforex.com" #property link "http://www.expforex.com" extern int Магик=-1; // Магик для статистики -1 = все 0 = ручные extern string Symboll="-1"; // Символ для статистики -1 = все 0 = текущий EURUSD = по EURUSD extern bool Comments = false; #property indicator_chart_window //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int deinit() { Comment(""); return(0); } //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(); //---- Draw_Stats(); if(Comments)Display_Info(); //---- return(0); } //+------------------------------------------------------------------+ //================================================================================================================================== void Display_Info() { // Вывод информации в углу окна Comment(" Сервер: ", AccountServer(), "\n", " Время Гринвич: ", TimeToStr(TimeCurrent() - 7200, TIME_MINUTES|TIME_SECONDS), // 3600 "\n", " Время Cервера: ", TimeToStr(TimeCurrent(), TIME_MINUTES|TIME_SECONDS), "\n", " Плечо: ", "1:" + DoubleToStr(AccountLeverage(), 0), "\n", " Спред: ", DoubleToStr(NormalizeDouble((Ask - Bid) / Point, 0) / 10, 1), "\n"); } //================================================================================================================================== //================================================================================================================================== //================================================================================================================================== string info = "lightinfo_"; double GetProfitForDay(int bar) { double profitt = 0; for (int position = 0; position < OrdersHistoryTotal(); position++) { if (!(OrderSelect(position, SELECT_BY_POS, MODE_HISTORY))) break; if (OrderSymbol() == Symbol() && (OrderMagicNumber() == Магик || Магик<0)&& (Symboll=="-1" || Symboll==OrderSymbol() || (Symboll=="0"&&OrderSymbol()==Symbol()))) if (OrderCloseTime() >= iTime(Symbol(), PERIOD_D1, bar) && OrderCloseTime() < iTime(Symbol(), PERIOD_D1, bar) + 86400) profitt += OrderProfit(); } return (profitt); } void Draw_Stats() { double getprof = GetProfitForDay(0); string nameobj = info + "1"; if (ObjectFind(nameobj) == -1) { ObjectCreate(nameobj, OBJ_LABEL, 0, 0, 0); ObjectSet(nameobj, OBJPROP_CORNER, 1); ObjectSet(nameobj, OBJPROP_XDISTANCE, 10); ObjectSet(nameobj, OBJPROP_YDISTANCE, 15); } ObjectSetText(nameobj, "Заработок сегодня: " + DoubleToStr(getprof, 2), 12, "Courier New", Yellow); getprof = GetProfitForDay(1); nameobj = info + "2"; if (ObjectFind(nameobj) == -1) { ObjectCreate(nameobj, OBJ_LABEL, 0, 0, 0); ObjectSet(nameobj, OBJPROP_CORNER, 1); ObjectSet(nameobj, OBJPROP_XDISTANCE, 10); ObjectSet(nameobj, OBJPROP_YDISTANCE, 30); } ObjectSetText(nameobj, "Заработок вчера: " + DoubleToStr(getprof, 2), 12, "Courier New", Yellow); getprof = GetProfitForDay(2); nameobj = info + "3"; if (ObjectFind(nameobj) == -1) { ObjectCreate(nameobj, OBJ_LABEL, 0, 0, 0); ObjectSet(nameobj, OBJPROP_CORNER, 1); ObjectSet(nameobj, OBJPROP_XDISTANCE, 10); ObjectSet(nameobj, OBJPROP_YDISTANCE, 45); } ObjectSetText(nameobj, "Заработок позавчера: " + DoubleToStr(getprof, 2), 12, "Courier New", Yellow); nameobj = info + "4"; if (ObjectFind(nameobj) == -1) { ObjectCreate(nameobj, OBJ_LABEL, 0, 0, 0); ObjectSet(nameobj, OBJPROP_CORNER, 1); ObjectSet(nameobj, OBJPROP_XDISTANCE, 10); ObjectSet(nameobj, OBJPROP_YDISTANCE, 75); } ObjectSetText(nameobj, "Баланс: " + DoubleToStr(AccountBalance(), 2), 14, "Courier New", Yellow); }