i-UrovenZero-v.2.2.7





//+------------------------------------------------------------------+
//|                                             i-UrovenZero-Uni.mq4 |
//|                      Bor-ix i Kirill + ïîìîùü d_tom i Don_Leone  |
//+------------------------------------------------------------------+
#property copyright "Bor-ix i Kirill"

#property indicator_chart_window

//Èíäèêàòîð ðèñóåò äâà óðîâíÿ íà ãðàôèêå òîðãóåìîé âàëþòû, ïðè äîñòèæåíèè êîòîðîãî öåíîé 
//âñå îòêðûòûå ïîçèöèè â ñóììå óéäóò â òàêîé ìèíóñ, ÷òî ñâîáîäíàÿ ìàðæà ñòàíåò ðàâíà íóëþ (óðîâåíü ZeroMargin)
//è ïðè äîñòèæåíèÿ öåíîé óðîâíÿ, ïðè êîòîðîì âñå îòêðûòûå îðäåðà â ñóììå áóäóò ðàâíû íóëþ (óðîâåíü ZeroProfit)...
//Ðàáîòàåò òîëüêî ïðè òîðãîâëå ïî îäíîé âàëþòå.
//Îòëîæåííûå îðäåðà íå ïðèíèìàþòñÿ â ðàñ÷¸ò

//Âàðèàíòû ðåæèìà ðàñ÷åòà ìîãóò ïðèíèìàòü ñëåäóþùèå çíà÷åíèÿ:
//v.0 - "Íåðåàëèçîâàííûå ïðèáûëè/óáûòêè íå èñïîëüçóþòñÿ. Ñâîáîäíàÿ ìàðæà íå çàâèñèò îò òåêóùåé öåíû".
//v.1 - "Ïðè ðàñ÷åòå ñâîáîäíûõ ñðåäñòâ èñïîëüçóåòñÿ êàê íåðåàëèçîâàííàÿ ïðèáûëü, òàê è óáûòîê ïî îòêðûòûì ïîçèöèÿì íà òåêóùåì ñ÷åòå".
//v.2 - "Íåðåàëèçîâàííûå óáûòêè íå èñïîëüçóþòñÿ. Ñâîáîäíàÿ ìàðæà íå óìåíüøàåòñÿ ïðè èçìåíåíèè òåê. öåíû."
//v.3 - "Ïðè ðàñ÷åòå èñïîëüçóåòñÿ òîëüêî çíà÷åíèå óáûòêà, òåêóùàÿ ïðèáûëü ïî îòêðûòûì ïîçèöèÿì íå ó÷èòûâàåòñÿ. Áóäåò ðàññ÷èòàíî äâà óðîâíÿ".

extern bool    INFO_COMENT       = false;

extern string CALC_Bar_0         = "=== Ïàíåëü Ðàñ÷åòîâ ===";
extern bool    CALC_0            = false;

extern double  Lots_R            = 1.0;      // ââîäèì çíà÷åíèå îáúåìà ëîòà
extern double  Rastojanie_R      = 50.0;    // ââîäèì çíà÷åíèå ðàññòîÿíèÿ â ïóíêòàõ
extern double  Pribyl_R          = 0.0;      // ââîäèì çíà÷åíèå ïðèáûëè/óáûòêà â öåíòàõ

extern color   cvet_CALC_0       = Violet;   //öâåò îñíîâíîé íàäïèñè ïàíåëè
extern color   cvet_CALC_R       = Orange;   //öâåò íàäïèñè ðåçóëüòàòà ðàñ÷åòîâ
extern int     Ugol_0            = 2;        // ïîëîæåíèå íà ãðàôèêå
extern int     MP_X_0            = 10;       // çíà÷åíèå êîîðäèíàò ïî ãîðèçîíòàëè 
extern int     MP_Y_0            = 10;       // çíà÷åíèå êîîðäèíàò ïî âåðòèêàëè

extern string Shrift_Bar         = "=== Ðàçìåð Øðèôòà ===";
extern int     RazmerShrifta     = 9;

extern string MetodR_Block       = "=== Âàðèàíò Ðàñ÷åòà Áåçóáûòêà ===";
extern bool   MetodRBezubytkaNew = true;     // true - íîâûé ìåòîä ðàñ÷åòà; false - ñòàðûé ìåòîä ðàñ÷åòà áåç ñâîïîâ è êîìèññèé;
extern bool   MetodRBNew_Sw_Com  = true;     // true - ñî ñâîïàìè è êîìèññèÿìè; false - áåç ñâîïîâ è êîìèññèé;

extern string ZeroProfit_Block   = "=== Ïàðàì. Îáùåãî Áåçóáûòêà ===";
extern bool    ZeroProfit        = true;
extern color   Colour_ZP         = DarkTurquoise;
extern int     Style_ZP          = 1;        //0,1,2,3,4
extern int     Width_ZP          = 2;        //0,1,2,3,4

extern string ZeroBUY_Block      = "=== Ïàðàì.Áåçóáûòêà äëÿ BUY ===";
extern bool    ZeroBUY           = true;
extern color   Colour_ZB         = DarkTurquoise;
extern int     Style_ZB          = 2;        //0,1,2,3,4
extern int     Width_ZB          = 1;        //0,1,2,3,4

extern string ZeroBUYP_Block      = "=== Óðîâ.Ïðèáûëè ïî ÒÐ äëÿ BUY ===";
extern bool    ZeroBUYP          = false;
extern int     PlusB             = 50;
extern color   Colour_ZB_P       = MediumSeaGreen;
extern int     Style_ZB_P        = 2;        //0,1,2,3,4
extern int     Width_ZB_P        = 1;        //0,1,2,3,4

extern string ZeroSELL_Block     = "=== Ïàðàì.Áåçóáûòêà äëÿ SELL ===";
extern bool    ZeroSELL          = true;
extern color   Colour_ZS         = DarkTurquoise;
extern int     Style_ZS          = 2;        //0,1,2,3,4
extern int     Width_ZS          = 1;        //0,1,2,3,4

extern string ZeroSELLP_Block     = "=== Óðîâ.Ïðèáûëè ïî ÒÐ äëÿ SELL ===";
extern bool    ZeroSELLP         = false;
extern int     PlusS             = 50;
extern color   Colour_ZS_P       = MediumSeaGreen;
extern int     Style_ZS_P        = 2;        //0,1,2,3,4
extern int     Width_ZS_P        = 1;        //0,1,2,3,4

extern string ZeroMargin_Block   = "=== Ïàðàì. Íóëåâîé Ìàðæè ===";
extern bool    ZeroMargin        = true;
extern color   Colour_ZM         = Orange;
extern int     Style_ZM          = 0;        //0,1,2,3,4  
extern int     Width_ZM          = 2;        //0,1,2,3,4

extern string ZeroMarginPr_Block = "=== Ïàðàì. % Íóëåâîé Ìàðæè ===";
extern bool    ZeroMarginPr      = true;
extern int     Procent_ZM        = 150;      // ïðîöåíòû îò îáùåãî óðîâíÿ äëÿ ïðåäóïðåæäåíèÿ
extern int     Style_ZM_Procent  = 2;        //0,1,2,3,4 
extern int     Width_ZM_Procent  = 1;        //0,1,2,3,4 

extern string Zona_LOCK_Param    = "=== Ïàðàì. Çîíû LOCK ===";
extern bool    Cvet_zony_LOCK_p  = false;  
extern color   Cvet_zony_LOCK    = LightYellow; //C'70,100,00';   // öâåò çîíû LOCK

extern string ZeroFull_Block     = "=== Ïàðàì. Ïîëíîãî ÑËÈÂÀ ===";
extern bool    ZeroFull          = true;
extern color   Colour_ZF         = Red;
extern int     Style_ZF          = 0;        //0,1,2,3,4  
extern int     Width_ZF          = 2;        //0,1,2,3,4

extern string ZeroFull_Pr_Block  = "=== StopOut/Ïðèíóä.Çàêð.Îðäåðîâ ===";
extern bool    ZeroFull_Pr       = true;
extern int     Style_ZF_Procent  = 2;        //0,1,2,3,4  
extern int     Width_ZF_Procent  = 1;        //0,1,2,3,4  

extern string Zona_dDZ_Param     = "=== Ïàðàì. Ìåðòâîé Çîíû ===";
extern bool    Cvet_zony_dDZ_f   = false;
extern color   Cvet_zony_dDZ     = LightPink; //C'70,00,00';   // öâåò çîíû DEAD ZONE

extern string INFO_Bar_1         = "=== Ïàíåëü Èíôîðìàöèè 1 ===";
extern bool    INFO_1            = true;
extern int     Ugol_1            = 3;        // ïîëîæåíèå íà ãðàôèêå
extern int     MP_X              = 10;       // çíà÷åíèå êîîðäèíàò ïî ãîðèçîíòàëè 
extern int     MP_Y              = 10;       // çíà÷åíèå êîîðäèíàò ïî âåðòèêàëè

extern string INFO_Bar_2         = "=== Ïàíåëü Èíôîðìàöèè 2 ===";
extern bool    INFO_2            = false;
extern color   cvet_dop_info2    = Silver;   // öâåò èíôî. ïàíåëè 2
extern int     Ugol_2            = 3;        // ïîëîæåíèå íà ãðàôèêå
extern int     MP_X_2            = 10;       // çíà÷åíèå êîîðäèíàò ïî ãîðèçîíòàëè 
extern int     MP_Y_2            = 10;       // çíà÷åíèå êîîðäèíàò ïî âåðòèêàëè

extern string INFO_Bar_3         = "=== Ïàíåëü Èíôîðìàöèè 3 ===";
extern int     Ugol_3            = 1;        // ïîëîæåíèå íà ãðàôèêå èíôî. ïàíåëè 3

extern string INFO_Bar_4         = "=== Ïàíåëü Èíôîðìàöèè 4 ===";
extern bool    INFO_4            = false;
extern color   cvet_dop_info4    = Tan;      // öâåò èíôî. ïàíåëè 4
extern int     Ugol_4            = 3;        // ïîëîæåíèå íà ãðàôèêå
extern int     MP_X_4            = 10;       // çíà÷åíèå êîîðäèíàò ïî ãîðèçîíòàëè 
extern int     MP_Y_4            = 10;       // çíà÷åíèå êîîðäèíàò ïî âåðòèêàëè

extern string Sound_Bar          = "=== Âîñïðîèçâåäåíèå Çâóêà ===";
extern bool    SoundPlay_Menshe  = true;
extern string  Sound_Alert       = "Alert.wav";
extern bool    SoundPlay_Bolshe  = false;
extern string  Sound_OK          = "clock.wav";

extern string Urov.BS.SS_Bar     = "=== Óðîâíè Buy è Sell Stop ===";
extern bool    Urov.BS.SS        = false;
extern color   Colour_SB         = LightPink;
extern int     Style_SB          = 2;
extern int     Width_SB          = 0;
extern color   Colour_SS         = LightSkyBlue;
extern int     Style_SS          = 2;
extern int     Width_SS          = 1;

extern string URLock_Bar         = "=== Óðîâåíü Ðàâíîãî Ëîêà ===";
extern bool    U.R.Lock          = true;
extern color   Colour_URLock     = DodgerBlue;
extern int     Style_URLock      = 2;        //0,1,2,3,4  
extern int     Width_URLock      = 1;        //0,1,2,3,4

string comment = "";
Comment("");

//---------------------------------------------------------------------------------------------//
//ñòèðàíèå íàðèñîâàííûõ îáúåêòîâ ïîñëå çàêðûòèÿ èíäèêàòîðà
//---------------------------------------------------------------------------------------------// 
int deinit()
{
 ObjectDelete ("Óðîâåíü Íóëåâîé Ìàðæè");
 ObjectDelete ("Óðîâåíü ÑËÈÂÀ");
   
 ObjectDelete ("LOCK");
 ObjectDelete ("DEAD ZONE");
 ObjectDelete ("DEAD ZONE =");
 ObjectDelete ("DEAD ZONE = 2");
 ObjectDelete ("GAME OVER");
 ObjectDelete ("GAME OVER 2");
 ObjectDelete ("GAME OVER 3");
         
 ObjectDelete ("Ïðîöåíòû äî Óðîâíÿ Íóëåâîé Ìàðæè");
 ObjectDelete ("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut");
 ObjectDelete ("Îáùèé Óðîâåíü Áåçóáûòêà");
 ObjectDelete ("Óðîâåíü Áåçóáûòêà BUY");
 ObjectDelete ("Óðîâåíü+ îò Áåçóáûòêà BUY");
 ObjectDelete ("Ïðèáûëü - Ðàñ÷åò BUY");
 ObjectDelete ("Óðîâåíü Áåçóáûòêà SELL");
 ObjectDelete ("Óðîâåíü+ îò Áåçóáûòêà SELL");
 ObjectDelete ("Ïðèáûëü - Ðàñ÷åò SELL");
 ObjectDelete ("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0");
 ObjectDelete ("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî");
 ObjectDelete ("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî");
 ObjectDelete ("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî");
 ObjectDelete ("Óðîâåíü Íóëåâîé Ìàðæè - èíôî");
 ObjectDelete ("Óðîâåíü ÑËÈÂÀ - èíôî");
 ObjectDelete ("Ìåðòâàÿ Çîíà - èíôî");
 ObjectDelete ("Ìåðòâàÿ Çîíà - öâåò");
 ObjectDelete ("Çîíà LOCK - öâåò"); 
 ObjectDelete ("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî");
   
 ObjectDelete ("Ìîæíî êóïèòü ëîòîâ - èíôî");
 ObjectDelete ("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî");
 ObjectDelete ("Ìèíèìàëüíûé ëîò - èíôî");
 ObjectDelete ("Ìàêñèìàëüíûé ëîò - èíôî");
 ObjectDelete ("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî");
 ObjectDelete ("Ñïðåä, ïï - èíôî");
 ObjectDelete ("Ñâîï BUY, ïï - èíôî");
 ObjectDelete ("Ñâîï SELL, ïï - èíôî");
   
 ObjectDelete ("Ïðèáûëü - Ðàñ÷åò");
 ObjectDelete ("Ðàññòîÿíèå - Ðàñ÷åò");
 ObjectDelete ("Îáúåì Ëîòà - Ðàñ÷åò");
 ObjectDelete ("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò");
 ObjectDelete ("Êîììåíòàðèè - Ðàñ÷åò");
   
 ObjectDelete ("Îáù.òåêóù.ïðèáûëü - èíôî");
 ObjectDelete ("Ïðèá.îò.SELL.ñäåëîê - èíôî");
 ObjectDelete ("Ïðèá.îò.BUY.ñäåëîê - èíôî");
 ObjectDelete ("Óðîâ.SELL=0 - èíôî");
 ObjectDelete ("Óðîâ.BUY=0 - èíôî");
 ObjectDelete ("Îáúåì.SELL.ëîòîâ - èíôî");
 ObjectDelete ("Îáúåì.BUY.ëîòîâ - èíôî");
 ObjectDelete ("Êîëëè÷.SELL - èíôî");
 ObjectDelete ("Êîëëè÷.BUY - èíôî");

 ObjectDelete ("ZeroLevel");
 ObjectDelete ("ZeroLevel_BUY");
 ObjectDelete ("ZeroLevel_SELL");
 
 ObjectDelete ("íå íèæå äëÿ Buy.Stop");
 ObjectDelete ("íå âûøå äëÿ Sell.Stop");
 
 ObjectDelete ("Óðîâåíü Ðàâíîãî Ëîêà");

 return (0);
}


//---------------------------------------------------------------------------------------------//

int start()
{


//---------------------------------------------------------------------------------------------//
//ñòèðàíèå íàðèñîâàííûõ îáúåêòîâ
//---------------------------------------------------------------------------------------------//
 
 ObjectDelete ("Óðîâåíü Íóëåâîé Ìàðæè");
 ObjectDelete ("Óðîâåíü ÑËÈÂÀ");
   
 ObjectDelete ("LOCK");
 ObjectDelete ("DEAD ZONE");
 ObjectDelete ("DEAD ZONE =");
 ObjectDelete ("DEAD ZONE = 2");
 ObjectDelete ("GAME OVER");
 ObjectDelete ("GAME OVER 2");
 ObjectDelete ("GAME OVER 3");
         
 ObjectDelete ("Ïðîöåíòû äî Óðîâíÿ Íóëåâîé Ìàðæè");
 ObjectDelete ("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut");
 ObjectDelete ("Îáùèé Óðîâåíü Áåçóáûòêà");
 ObjectDelete ("Óðîâåíü Áåçóáûòêà BUY");
 ObjectDelete ("Óðîâåíü+ îò Áåçóáûòêà BUY");
 ObjectDelete ("Ïðèáûëü - Ðàñ÷åò BUY");
 ObjectDelete ("Óðîâåíü Áåçóáûòêà SELL");
 ObjectDelete ("Óðîâåíü+ îò Áåçóáûòêà SELL");
 ObjectDelete ("Ïðèáûëü - Ðàñ÷åò SELL");
 ObjectDelete ("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0");
 ObjectDelete ("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî");
 ObjectDelete ("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî");
 ObjectDelete ("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî");
 ObjectDelete ("Óðîâåíü Íóëåâîé Ìàðæè - èíôî");
 ObjectDelete ("Óðîâåíü ÑËÈÂÀ - èíôî");
 ObjectDelete ("Ìåðòâàÿ Çîíà - èíôî");
 ObjectDelete ("Ìåðòâàÿ Çîíà - öâåò");
 ObjectDelete ("Çîíà LOCK - öâåò"); 
 ObjectDelete ("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî");
   
 ObjectDelete ("Ìîæíî êóïèòü ëîòîâ - èíôî");
 ObjectDelete ("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî");
 ObjectDelete ("Ìèíèìàëüíûé ëîò - èíôî");
 ObjectDelete ("Ìàêñèìàëüíûé ëîò - èíôî");
 ObjectDelete ("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî");
 ObjectDelete ("Ñïðåä, ïï - èíôî");
 ObjectDelete ("Ñâîï BUY, ïï - èíôî");
 ObjectDelete ("Ñâîï SELL, ïï - èíôî");
   
 ObjectDelete ("Ïðèáûëü - Ðàñ÷åò");
 ObjectDelete ("Ðàññòîÿíèå - Ðàñ÷åò");
 ObjectDelete ("Îáúåì Ëîòà - Ðàñ÷åò");
 ObjectDelete ("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò");
 ObjectDelete ("Êîììåíòàðèè - Ðàñ÷åò");
   
 ObjectDelete ("Îáù.òåêóù.ïðèáûëü - èíôî");
 ObjectDelete ("Ïðèá.îò.SELL.ñäåëîê - èíôî");
 ObjectDelete ("Ïðèá.îò.BUY.ñäåëîê - èíôî");
 ObjectDelete ("Óðîâ.SELL=0 - èíôî");
 ObjectDelete ("Óðîâ.BUY=0 - èíôî");
 ObjectDelete ("Îáúåì.SELL.ëîòîâ - èíôî");
 ObjectDelete ("Îáúåì.BUY.ëîòîâ - èíôî");
 ObjectDelete ("Êîëëè÷.SELL - èíôî");
 ObjectDelete ("Êîëëè÷.BUY - èíôî");

 ObjectDelete ("ZeroLevel");
 ObjectDelete ("ZeroLevel_BUY");
 ObjectDelete ("ZeroLevel_SELL");
 
 ObjectDelete ("íå íèæå äëÿ Buy.Stop");
 ObjectDelete ("íå âûøå äëÿ Sell.Stop");
 
 ObjectDelete ("Óðîâåíü Ðàâíîãî Ëîêà");


//---------------------------------------------------------------------------------------------//
//íà÷ëî êîäà - ëè÷íàÿ èíôîðìàöèÿ
//---------------------------------------------------------------------------------------------//
  
 double i, total = OrdersTotal();
 double lots=0.0, shift, shift_ZLB, shift_ZLS;
 Comment_("----------------------------"); 
 Comment_(" " + AccountName());
 string type = "Ðåàë"; if (IsDemo()) type = "Äåìî";
 Comment_(" Òèï ñ÷åòà: " + type + " - ¹: " + AccountNumber());
 Comment_(" 쑌֔: 1/" + AccountLeverage());
 Comment_("----------------------------"); 
      
      
//---------------------------------------------------------------------------------------------//
//êîíñòàíòû
//---------------------------------------------------------------------------------------------//
      
 double minlot = MarketInfo(Symbol(),MODE_MINLOT);                 //ðàçìåð ìèíèìàëüíîãî ëîòà
 double maxlot = MarketInfo(Symbol(),MODE_MAXLOT);                 //ðàçìåð ìàêñèìàëüíîãî ëîòà
 double lot_cena = MarketInfo(Symbol(),MODE_MARGINREQUIRED);       //öåíà 1.0 ëîòà
 double lot_zalog = MarketInfo(Symbol(),MODE_MARGININIT);          //çàëîã çà 1.0 ëîò
 double min_balans = (lot_cena + lot_zalog) * minlot;              //ðàñ÷åò ñòîèìîñòè ìèíèìàëüíîãî ëîòà
 double lotsss = AccountFreeMargin()*minlot/min_balans;            //êîëè÷åñòâî ëîòîâ êîòîðîå ìîæíî êóïèòü
 double pp_cena = MarketInfo(Symbol(),MODE_TICKVALUE);             //öåíà îäíîãî ïóíêòà
 double swap_long = MarketInfo(Symbol(),MODE_SWAPLONG);            //ñâîï äëÿ BUY â ïóíêòàõ
 double swap_short = MarketInfo(Symbol(),MODE_SWAPSHORT);          //ñâîï äëÿ SELL â ïóíêòàõ
 double spread = MarketInfo(Symbol(),MODE_SPREAD);                 //ðàçìåð ñïðýäà
 double sredsva = AccountEquity();                                 //èìåþùèåñÿ íà ñ÷åòó ñðåäñòâà
 double Znakov = MathPow ( 10 , MarketInfo(Symbol(),MODE_DIGITS)); //êîîýô.óìíîæåíèÿ äëÿ çíàêîâ âàëþòíîé ïàðû

      
//---------------------------------------------------------------------------------------------//
//ïàíåëü "GAME OVER"
//---------------------------------------------------------------------------------------------//         
                
 if (AccountBalance() < min_balans)
 {
  if (AccountEquity() < min_balans)
  {
   if (OrderProfit() < min_balans)
   {
    ObjectCreate("GAME OVER", OBJ_LABEL, 0, 0, 0);         
    ObjectSetText("GAME OVER", "GAME OVER", RazmerShrifta*4, "Verdana", Colour_ZF);
    ObjectSet("GAME OVER", OBJPROP_CORNER, Ugol_1);
    ObjectSet("GAME OVER", OBJPROP_XDISTANCE, MP_X+RazmerShrifta*1.5);
    ObjectSet("GAME OVER", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*2);

    ObjectCreate("GAME OVER 2", OBJ_LABEL, 0, 0, 0);         
    ObjectSetText("GAME OVER 2", "ÂÛÈÃÐÛÂÀÅÒ ÒÎÒ, ÊÒÎ ÍÅ ÓÑÒÀÅÒ ÏÐÎÈÃÐÛÂÀÒÜ", RazmerShrifta, "Verdana", Colour_ZM);
    ObjectSet("GAME OVER 2", OBJPROP_CORNER, Ugol_1);
    ObjectSet("GAME OVER 2", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("GAME OVER 2", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta+2);

    ObjectCreate("GAME OVER 3", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("GAME OVER 3", "çàãðóæàé äåíüãè è íà÷èíàé ñíà÷àëà :)", RazmerShrifta-1, "Verdana", Gray);
    ObjectSet("GAME OVER 3", OBJPROP_CORNER, Ugol_1);
    ObjectSet("GAME OVER 3", OBJPROP_XDISTANCE, MP_X+43);
    ObjectSet("GAME OVER 3", OBJPROP_YDISTANCE, MP_Y);
   }         
  }        
 }
         
         
//---------------------------------------------------------------------------------------------//
//ðàñ÷åò áåçóáûòêà #2 - New   
//---------------------------------------------------------------------------------------------//         

 double price_bzu_o = 0;
 double price_bzu_B = 0;
 double price_bzu_S = 0;
 double BuyLots_b = 0;
 double SellLots_b = 0;
 double BuyProfit_b = 0;
 double SellProfit_b = 0;

 if (MetodRBezubytkaNew == true)
 {
  int Total_b = OrdersTotal();
   
  for (int i_b = Total_b-1; i_b >= 0; i_b--)
  {
   if (OrderSelect(i_b, SELECT_BY_POS))
   {
    if (OrderSymbol() != Symbol()) continue;
    if (OrderType() == OP_BUY)
    {
     BuyLots_b = BuyLots_b + OrderLots();
     if (MetodRBNew_Sw_Com  == true) 
     BuyProfit_b = BuyProfit_b + OrderProfit() + OrderCommission() + OrderSwap();

    else BuyProfit_b = BuyProfit_b + OrderProfit();
    }

    if (OrderType() == OP_SELL)
    {
     SellLots_b = SellLots_b + OrderLots();
     if (MetodRBNew_Sw_Com  == true)
     SellProfit_b = SellProfit_b + OrderProfit() + OrderCommission() + OrderSwap();
     else SellProfit_b = SellProfit_b + OrderProfit();
    }
   }
  }
 
  double TickValue_b = MarketInfo(Symbol(), MODE_TICKVALUE);
 
  if (BuyLots_b > 0) 
  price_bzu_B = Bid - (BuyProfit_b / (TickValue_b * BuyLots_b) * Point);      //óðîâåíü áåçóáûòêà äëÿ âñåõ BUY îðäåðîâ
  else price_bzu_B = 0;
 
  if (SellLots_b > 0) 
  price_bzu_S = Ask + (SellProfit_b / (TickValue_b * SellLots_b) * Point);    //óðîâåíü áåçóáûòêà äëÿ âñåõ SELL îðäåðîâ
  else price_bzu_S = 0;
 
  if ((BuyLots_b - SellLots_b) > 0) 
  price_bzu_o = Bid - ((BuyProfit_b + SellProfit_b) / (TickValue_b * (BuyLots_b - SellLots_b)) * Point);
 
  if ((SellLots_b - BuyLots_b) > 0) 
  price_bzu_o = Ask + ((BuyProfit_b + SellProfit_b) / (TickValue_b * (SellLots_b - BuyLots_b)) * Point);
 }

 else 
 {
         
            
//---------------------------------------------------------------------------------------------//
//ðàñ÷åò îáùåãî áåçóáûòêà - ðàñ÷åò áåçóáûòêà #1 - old     
//---------------------------------------------------------------------------------------------//

  double lots_bzu = 0;
  double sum_bzu = 0;
  for (double i_bzu = 0; i_bzu < OrdersTotal(); i_bzu++)
  {
   if ( !OrderSelect ( i_bzu , SELECT_BY_POS , MODE_TRADES )) break;
   if ( OrderSymbol () != Symbol()) continue;
   if ( OrderType () == OP_BUY)
   {
    lots_bzu = lots_bzu + OrderLots ();
    sum_bzu = sum_bzu + OrderLots () * OrderOpenPrice ();
   }

   if ( OrderType () == OP_SELL )
   {
    lots_bzu = lots_bzu - OrderLots ();
    sum_bzu = sum_bzu - OrderLots () * OrderOpenPrice ();
   }
   
   price_bzu_o = 0;
   if (lots_bzu != 0 )
   price_bzu_o = sum_bzu / lots_bzu;                                  // óðîâåíü îáùåãî áåçóáûòêà
  }


//---------------------------------------------------------------------------------------------//
//ðàñ÷åò áåçóáûòêà - BUY     
//---------------------------------------------------------------------------------------------//
  
  double sum_bzu_B = 0;
  for (double i_bzu_B = 0; i_bzu_B < OrdersTotal(); i_bzu_B++)
  {
   if ( !OrderSelect ( i_bzu_B , SELECT_BY_POS , MODE_TRADES )) break;
   if ( OrderSymbol () != Symbol()) continue;
   if ( OrderType () == OP_BUY)
   {
    BuyLots_b = BuyLots_b + OrderLots ();
    sum_bzu_B = sum_bzu_B + OrderLots () * OrderOpenPrice ();
   }

   price_bzu_B = 0;
   if (BuyLots_b != 0 )
   price_bzu_B = sum_bzu_B / BuyLots_b;                                  // óðîâåíü áåçóáûòêà BUY
  }


//---------------------------------------------------------------------------------------------//
//ðàñ÷åò áåçóáûòêà - SELL     
//---------------------------------------------------------------------------------------------//
  
  double sum_bzu_S = 0;
  for (double i_bzu_S = 0; i_bzu_S < OrdersTotal(); i_bzu_S++)
  {
   if ( !OrderSelect ( i_bzu_S , SELECT_BY_POS , MODE_TRADES )) break;
   if ( OrderSymbol () != Symbol()) continue;
   if ( OrderType () == OP_SELL)
   {
    SellLots_b = SellLots_b + OrderLots ();
    sum_bzu_S = sum_bzu_S + OrderLots () * OrderOpenPrice ();
   }

   price_bzu_S = 0;
   if (SellLots_b != 0 )
   price_bzu_S = sum_bzu_S / SellLots_b;                                  // óðîâåíü áåçóáûòêà SELL
  }
 }


//---------------------------------------------------------------------------------------------//
//ðèñîâàíèå îáùåãî óðîâíÿ áåçóáûòêà  
//---------------------------------------------------------------------------------------------//
      
 if (ZeroProfit == true)
 {
  ObjectCreate("Îáùèé Óðîâåíü Áåçóáûòêà", OBJ_HLINE, 0, 0, price_bzu_o);
  ObjectSet("Îáùèé Óðîâåíü Áåçóáûòêà", OBJPROP_COLOR, Colour_ZP);
  ObjectSet("Îáùèé Óðîâåíü Áåçóáûòêà", OBJPROP_STYLE, Style_ZP);
  ObjectSet("Îáùèé Óðîâåíü Áåçóáûòêà", OBJPROP_WIDTH, Width_ZP);
 }
            

//---------------------------------------------------------------------------------------------//
//ðèñîâàíèå óðîâíÿ áåçóáûòêà BUY
//---------------------------------------------------------------------------------------------//
      
 if (ZeroBUY == true)
 {
  ObjectCreate("Óðîâåíü Áåçóáûòêà BUY", OBJ_HLINE, 0, 0, price_bzu_B);
  ObjectSet("Óðîâåíü Áåçóáûòêà BUY", OBJPROP_COLOR, Colour_ZB);
  ObjectSet("Óðîâåíü Áåçóáûòêà BUY", OBJPROP_STYLE, Style_ZB);
  ObjectSet("Óðîâåíü Áåçóáûòêà BUY", OBJPROP_WIDTH, Width_ZB);
 }

 if (ZeroBUYP == true)
 {
 
  ObjectCreate("Óðîâåíü+ îò Áåçóáûòêà BUY", OBJ_HLINE, 0, 0, price_bzu_B + PlusB * Point);
  ObjectSet("Óðîâåíü+ îò Áåçóáûòêà BUY", OBJPROP_COLOR, Colour_ZB_P);
  ObjectSet("Óðîâåíü+ îò Áåçóáûòêà BUY", OBJPROP_STYLE, Style_ZB_P);
  ObjectSet("Óðîâåíü+ îò Áåçóáûòêà BUY", OBJPROP_WIDTH, Width_ZB_P);
 }
 
 if (CALC_0 == true)
 {
  double Pribyl_R_2_Pb = PlusB * BuyLots_b * pp_cena; //Ðàñ÷åò ïðèáûëè +
    
  ObjectCreate("Ïðèáûëü - Ðàñ÷åò BUY", OBJ_LABEL, 0, 0, 0);        
  ObjectSetText("Ïðèáûëü - Ðàñ÷åò BUY", " Ïðèáûëü BUY:   " + DoubleToStr(Pribyl_R_2_Pb, 3), RazmerShrifta, "Verdana", Colour_ZB_P);
  ObjectSet("Ïðèáûëü - Ðàñ÷åò BUY", OBJPROP_CORNER, Ugol_0);
  ObjectSet("Ïðèáûëü - Ðàñ÷åò BUY", OBJPROP_XDISTANCE, MP_X_0 + RazmerShrifta);
  ObjectSet("Ïðèáûëü - Ðàñ÷åò BUY", OBJPROP_YDISTANCE, MP_Y_0 * 8.0);     
 }

 
 
//---------------------------------------------------------------------------------------------//
//ðèñîâàíèå óðîâíÿ áåçóáûòêà SELL 
//---------------------------------------------------------------------------------------------//
      
 if (ZeroSELL == true)
 {
  ObjectCreate("Óðîâåíü Áåçóáûòêà SELL", OBJ_HLINE, 0, 0, price_bzu_S);
  ObjectSet("Óðîâåíü Áåçóáûòêà SELL", OBJPROP_COLOR, Colour_ZS);
  ObjectSet("Óðîâåíü Áåçóáûòêà SELL", OBJPROP_STYLE, Style_ZS);
  ObjectSet("Óðîâåíü Áåçóáûòêà SELL", OBJPROP_WIDTH, Width_ZS);
 }

if (ZeroSELLP == true)
 {
  ObjectCreate("Óðîâåíü+ îò Áåçóáûòêà SELL", OBJ_HLINE, 0, 0, price_bzu_S - PlusS * Point);
  ObjectSet("Óðîâåíü+ îò Áåçóáûòêà SELL", OBJPROP_COLOR, Colour_ZS_P);
  ObjectSet("Óðîâåíü+ îò Áåçóáûòêà SELL", OBJPROP_STYLE, Style_ZS_P);
  ObjectSet("Óðîâåíü+ îò Áåçóáûòêà SELL", OBJPROP_WIDTH, Width_ZS_P);
 }
   
 if (CALC_0 == true)
 {
  double Pribyl_R_2_Ps = PlusS * SellLots_b * pp_cena; //Ðàñ÷åò ïðèáûëè +
    
  ObjectCreate("Ïðèáûëü - Ðàñ÷åò SELL", OBJ_LABEL, 0, 0, 0);        
  ObjectSetText("Ïðèáûëü - Ðàñ÷åò SELL", "Ïðèáûëü SELL:   " + DoubleToStr(Pribyl_R_2_Ps, 3), RazmerShrifta, "Verdana", Colour_ZS_P);
  ObjectSet("Ïðèáûëü - Ðàñ÷åò SELL", OBJPROP_CORNER, Ugol_0);
  ObjectSet("Ïðèáûëü - Ðàñ÷åò SELL", OBJPROP_XDISTANCE, MP_X_0 + RazmerShrifta);
  ObjectSet("Ïðèáûëü - Ðàñ÷åò SELL", OBJPROP_YDISTANCE, MP_Y_0 * 6.9);
 }


//---------------------------------------------------------------------------------------------//
//ðàñòîÿíèå ìåæäó íóëåâûìè óðîâíÿìè BUY è SELL
//---------------------------------------------------------------------------------------------// 
    
 if (CALC_0 == true)
 { 
  ObjectCreate("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0", OBJ_LABEL, 0, 0, 0);        
  ObjectSetText("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0", "Ðàñ.ìåæä. 0/0:   " + DoubleToStr((price_bzu_B - price_bzu_S)/Point, 0), RazmerShrifta, "Verdana", Colour_ZP);
  ObjectSet("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0", OBJPROP_CORNER, Ugol_0);
  ObjectSet("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0", OBJPROP_XDISTANCE, MP_X_0 + RazmerShrifta);
  ObjectSet("Ðàñòîÿíèå ìåæäó BUY = 0 è SELL = 0", OBJPROP_YDISTANCE, MP_Y_0 * 9.3);     
 }
 
 
//---------------------------------------------------------------------------------------------//
//ðàñ÷åò óðîâíÿ Íóëåâîé ìàðæè
//---------------------------------------------------------------------------------------------//

 if(AccountFreeMarginMode() == 0)
 Comment_(" v.0");                // + " - Íåðåàëèçîâàííûå ïðèáûëè/óáûòêè íå èñïîëüçóþòñÿ. \n Ñâîáîäíàÿ ìàðæà íå çàâèñèò îò òåê. öåíû.");
  
 else if(AccountFreeMarginMode() == 2)
 Comment_(" v.2");                // + " - Íåðåàëèçîâàííûå óáûòêè íå èñïîëüçóþòñÿ. \n Ñâîáîäíàÿ ìàðæà íå óìåíüøàåòñÿ ïðè èçìåíåíèè òåê. öåíû.");

 else if(AccountFreeMarginMode() == 1)
 {
  Comment_(" v.1");                // + " - Ïðè ðàñ÷åòå ñâîáîäíûõ ñðåäñòâ èñïîëüçóåòñÿ êàê íåðåàëèçîâàííàÿ ïðèáûëü, \n òàê è óáûòîê ïî îòêðûòûì ïîçèöèÿì íà òåêóùåì ñ÷åòå.");
  for(i=0; i<total; i++)
   {
    OrderSelect(i, SELECT_BY_POS);
    if(OrderSymbol() == Symbol() && OrderType() == OP_BUY)
     lots += OrderLots();   
    else if(OrderSymbol() == Symbol() && OrderType() == OP_SELL)
     lots -= OrderLots();
   }

  if(lots == 0.0)
  {
   Comment_(" Íåò äåáàëàíñà îðäåðîâ." );           //"All Postions Are Locked. Calculations cancelled."
   Comment_(" Äëÿ ðàñ÷åòà íåò äàííûõ." );
   Comment_("----------------------------");  
  }

  else
  {
   Comment_(" ðàáîòàþ..."); 
   Comment_("----------------------------");    
         
         
//---------------------------------------------------------------------------------------------//
//óðîâåíü íóëåâîé ìàðæè     
//---------------------------------------------------------------------------------------------//
         
   double u_shift;
   shift = AccountFreeMargin() / (MarketInfo(Symbol(), MODE_TICKVALUE) * lots);  //ðàññòîÿíèå îò öåíû äî íóëåâîé ìàðæè
   u_shift = Bid - shift*Point; 
       
   if (ZeroMargin == true)
    {
     ObjectCreate("Óðîâåíü Íóëåâîé Ìàðæè", OBJ_HLINE, 0, 0, u_shift);
     ObjectSet("Óðîâåíü Íóëåâîé Ìàðæè", OBJPROP_COLOR, Colour_ZM);
     ObjectSet("Óðîâåíü Íóëåâîé Ìàðæè", OBJPROP_STYLE, Style_ZM);
     ObjectSet("Óðîâåíü Íóëåâîé Ìàðæè", OBJPROP_WIDTH, Width_ZM);
    }
                  

//---------------------------------------------------------------------------------------------//
//Ìåðòâàÿ çîíà + óðîâåíü ñëèâà    
//---------------------------------------------------------------------------------------------//

   double   d_shift_3, u_shift_3, dDZ, OMarginLevel; 
   OMarginLevel = AccountEquity()/AccountMargin()*100;   // óðîâåíü áàëàíñà íà ñ÷åòó
   d_shift_3 = AccountEquity() / (MarketInfo(Symbol(), MODE_TICKVALUE) * lots); 
   u_shift_3 = Bid - d_shift_3*Point;                    // óðîâåíü ïîëíîãî ñëèâà
   dDZ = d_shift_3 - shift;                              // ìåðòâàÿ çîíà
        
   if (ZeroFull == true)
   {
    ObjectCreate("Óðîâåíü ÑËÈÂÀ", OBJ_HLINE, 0, 0, u_shift_3);
    ObjectSet("Óðîâåíü ÑËÈÂÀ", OBJPROP_COLOR, Colour_ZF);
    ObjectSet("Óðîâåíü ÑËÈÂÀ", OBJPROP_STYLE, Style_ZF);
    ObjectSet("Óðîâåíü ÑËÈÂÀ", OBJPROP_WIDTH, Width_ZF);
   }
                  

//---------------------------------------------------------------------------------------------//
//ðàñ÷åò óðîâíÿ % îò íóëåâîé ìàðæè     
//---------------------------------------------------------------------------------------------//
         
   double d_pZM, ur_pZM;         
   d_pZM = d_shift_3 - dDZ*Procent_ZM/100;  //ðàññòîÿíèå îò öåíû ê % îò íóëåâîé ìàðæè
   ur_pZM = Bid - d_pZM*Point;              // óðîâåíü % îò íóëåâîé ìàðæè
         
   if (ZeroMarginPr == true)
   {
    ObjectCreate("Ïðîöåíòû äî Óðîâíÿ Íóëåâîé Ìàðæè", OBJ_HLINE, 0, 0, ur_pZM);
    ObjectSet("Ïðîöåíòû äî Óðîâíÿ Íóëåâîé Ìàðæè", OBJPROP_COLOR, Colour_ZM);
    ObjectSet("Ïðîöåíòû äî Óðîâíÿ Íóëåâîé Ìàðæè", OBJPROP_STYLE, Style_ZM_Procent);
    ObjectSet("Ïðîöåíòû äî Óðîâíÿ Íóëåâîé Ìàðæè", OBJPROP_WIDTH, Width_ZM_Procent);
   }
      

//---------------------------------------------------------------------------------------------//
//Çâóêîâîå îïîâåùåíèå î òåêóùåì óðîâíå äî/ïîñëå âûñòàâëåííîãî % îò óðîâíÿ Íóëåâîé ìàðæè 
//---------------------------------------------------------------------------------------------//           
            
   if (SoundPlay_Menshe == true)
   {
    if (OMarginLevel <= Procent_ZM)   PlaySound(Sound_Alert);
   }
                  
   if (SoundPlay_Bolshe == true)   
   {
    if (OMarginLevel > Procent_ZM)   PlaySound(Sound_OK);
   }
               
   if (OMarginLevel <= Procent_ZM)
   {
    if (OMarginLevel > 100)
    {
     ObjectCreate("LOCK", OBJ_LABEL, 0, 0, 0);        
     ObjectSetText("LOCK", "LOCK", RazmerShrifta*5, "Verdana", Colour_ZM);
     ObjectSet("LOCK", OBJPROP_CORNER, Ugol_3);
     ObjectSet("LOCK", OBJPROP_XDISTANCE, MP_X);
     ObjectSet("LOCK", OBJPROP_YDISTANCE, MP_Y);
    }
   }
         
   if (OMarginLevel <= 100)
   {
    ObjectCreate("DEAD ZONE", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("DEAD ZONE", "DEAD ZONE", RazmerShrifta*2.3, "Verdana", Colour_ZF);
    ObjectSet("DEAD ZONE", OBJPROP_CORNER, Ugol_3);
    ObjectSet("DEAD ZONE", OBJPROP_XDISTANCE, MP_X+4);
    ObjectSet("DEAD ZONE", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*2.3);
   }


//---------------------------------------------------------------------------------------------//
//% - ïðè êîòîðîì ÄÖ çàêðûâàåò ñäåëêè = Stop Out
//---------------------------------------------------------------------------------------------//
        
   double d_pZF, ur_pZF, Afto_Procent_ZF;
   Afto_Procent_ZF = AccountStopoutLevel(); //Stop Out (ïðèíóäèòåëüíîå çàêðûòèå ïîçèöèé)
   d_pZF = d_shift_3 - dDZ*Afto_Procent_ZF/100; //ðàññòîÿíèå äî óðîâíÿ çàêðûòèÿ ÄÖ
   ur_pZF = Bid - d_pZF*Point;
               
   if (ZeroFull_Pr == true)
   {
    ObjectCreate("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut", OBJ_HLINE, 0, 0, ur_pZF);
    ObjectSet("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut", OBJPROP_COLOR, Colour_ZF);
    ObjectSet("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut", OBJPROP_STYLE, Style_ZF_Procent);
    ObjectSet("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut", OBJPROP_WIDTH, Width_ZF_Procent);
   }
      
       
//---------------------------------------------------------------------------------------------//
//çíà÷åíèÿ ðàññòîÿíèÿ â ïèïñàõ äî óðîâíÿ "íóëÿ" è "áåçóáûòêà" íà ãðàôèê      
//---------------------------------------------------------------------------------------------//
     
   double  dZM, price_bzu2, dZP;
   dZM = -shift;
   
   if (lots < 0) {  price_bzu2 = (Ask - price_bzu_o) * (Znakov);  }
   if (lots > 0) {  price_bzu2 = (Bid - price_bzu_o) * (Znakov);  }
        
   dZP = -price_bzu2;


//---------------------------------------------------------------------------------------------//
//âûâîä èíôîðìàöèè íà ãðàôèê
//---------------------------------------------------------------------------------------------//

   if (INFO_1 == true)
   {
    ObjectCreate("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî","...îñòàëîñü:      " + DoubleToStr(dZP, 0)  , RazmerShrifta, "Verdana", Colour_ZP);
    ObjectSet("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Ðàññòîÿíèå äî Îáùåãî Óðîâíÿ Áåçóáûòêà - èíôî", OBJPROP_YDISTANCE, MP_Y);

    ObjectCreate("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî", "Óðîâåíü Îáù.Áåçóá.: " + DoubleToStr(price_bzu_o, Digits), RazmerShrifta, "Verdana", Colour_ZP);
    ObjectSet("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Îáùèé Óðîâåíü Áåçóáûòêà - èíôî", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*1.3);


//---------------------------------------------------------------------------------------------//

    ObjectCreate("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî", "...îñòàëîñü:    " + DoubleToStr(dZM, 0), RazmerShrifta, "Verdana", Colour_ZM);
    ObjectSet("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Ðàññòîÿíèå äî Íóëåâîé Ìàðæè - èíôî", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*3);

    ObjectCreate("Óðîâåíü Íóëåâîé Ìàðæè - èíôî", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Óðîâåíü Íóëåâîé Ìàðæè - èíôî", "Óðîâåíü 0-é Ìàðæè: " + DoubleToStr(Bid - shift*Point, Digits), RazmerShrifta, "Verdana", Colour_ZM);
    ObjectSet("Óðîâåíü Íóëåâîé Ìàðæè - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Óðîâåíü Íóëåâîé Ìàðæè - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Óðîâåíü Íóëåâîé Ìàðæè - èíôî", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*4.3);
      
      
//---------------------------------------------------------------------------------------------//

    ObjectCreate("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî", OBJ_LABEL, 0, 0, 0);         
    ObjectSetText("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî", "Çàêðûòèå / StopOut:       " + DoubleToStr(Afto_Procent_ZF, 0) + "%", RazmerShrifta, "Verdana", Colour_ZF);
    ObjectSet("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Óðîâåíü Ïðèíóäèòåëüíîãî Çàêðûòèÿ Îðäåðîâ ÄÖ / StopOut - èíôî", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*6);

    ObjectCreate("Ìåðòâàÿ Çîíà - èíôî", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Ìåðòâàÿ Çîíà - èíôî", "̸ðòâàÿ çîíà:      " +  DoubleToStr(MathAbs(dDZ), 0) , RazmerShrifta, "Verdana", Colour_ZF);
    ObjectSet("Ìåðòâàÿ Çîíà - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Ìåðòâàÿ Çîíà - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Ìåðòâàÿ Çîíà - èíôî", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*7.3);

    ObjectCreate("Óðîâåíü ÑËÈÂÀ - èíôî", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Óðîâåíü ÑËÈÂÀ - èíôî", "Óðîâåíü Ñëèâà: " + DoubleToStr(u_shift_3, Digits), RazmerShrifta, "Verdana", Colour_ZF);
    ObjectSet("Óðîâåíü ÑËÈÂÀ - èíôî", OBJPROP_CORNER, Ugol_1);
    ObjectSet("Óðîâåíü ÑËÈÂÀ - èíôî", OBJPROP_XDISTANCE, MP_X);
    ObjectSet("Óðîâåíü ÑËÈÂÀ - èíôî", OBJPROP_YDISTANCE, MP_Y+RazmerShrifta*8.6);
   }
  
        
//---------------------------------------------------------------------------------------------//
//Îêðàñêà ̸ðòâîé çîíû      
//---------------------------------------------------------------------------------------------//       

   if (Cvet_zony_dDZ_f == true)   
   {      
    ObjectCreate("Ìåðòâàÿ Çîíà - öâåò", OBJ_RECTANGLE, 0, D'0000.00.00', u_shift_3, TimeCurrent()*1.1, u_shift);
    ObjectSet("Ìåðòâàÿ Çîíà - öâåò", OBJPROP_STYLE, STYLE_SOLID);
    ObjectSet("Ìåðòâàÿ Çîíà - öâåò", OBJPROP_COLOR, Cvet_zony_dDZ);
    ObjectSet("Ìåðòâàÿ Çîíà - öâåò", OBJPROP_BACK, True);
   }
    
 
//---------------------------------------------------------------------------------------------//
//Îêðàñêà çîíû LOCK      
//---------------------------------------------------------------------------------------------//       
   
   if (Cvet_zony_LOCK_p == true)   
   {      
    ObjectCreate("Çîíà LOCK - öâåò", OBJ_RECTANGLE, 0, D'0000.00.00', u_shift, TimeCurrent()*1.1, ur_pZM);
    ObjectSet("Çîíà LOCK - öâåò", OBJPROP_STYLE, STYLE_SOLID);
    ObjectSet("Çîíà LOCK - öâåò", OBJPROP_COLOR, Cvet_zony_LOCK);
    ObjectSet("Çîíà LOCK - öâåò", OBJPROP_BACK, True);
   }
  }
 }
   
   
//---------------------------------------------------------------------------------------------//
//âàðèàíò 3
//---------------------------------------------------------------------------------------------//   
   
 else if(AccountFreeMarginMode() == 3)
 {
  Comment_(" v.3"); // + " - Ïðè ðàñ÷åòå èñïîëüçóåòñÿ òîëüêî çíà÷åíèå óáûòêà, \n òåêóùàÿ ïðèáûëü ïî îòêðûòûì ïîçèöèÿì íå ó÷èòûâàåòñÿ. Áóäåò ðàññ÷èòàíî äâà óðîâíÿ.");

  for(i=0; i<total; i++)
  {
   OrderSelect(i, SELECT_BY_POS);
   if(OrderSymbol() == Symbol() && OrderType() == OP_BUY)
    lots += OrderLots();   
  }
  
  if(lots == 0.0)
  {
   Comment_("Íåò ïîçèöèé íà ïîêóïêó (BUY)." );  //"No Buy Positions."
  }
  
  else
  {
   shift_ZLB = AccountFreeMargin() / (MarketInfo(Symbol(), MODE_LOTSIZE) * lots * Point);
         
   ObjectCreate("ZeroLevel_BUY", OBJ_HLINE, 0, 0, Bid - shift_ZLB*Point);
   ObjectSet("ZeroLevel_BUY", OBJPROP_COLOR, Colour_ZM);
   ObjectSet("ZeroLevel_BUY", OBJPROP_STYLE, Style_ZM);
   ObjectSet("ZeroLevel_BUY", OBJPROP_WIDTH, Width_ZM);
         
   Comment_("ZeroLevel_BUY:    " + DoubleToStr(Bid - shift_ZLB*Point, Digits));
   Comment_("Current Bid:      " + DoubleToStr(Bid, Digits));
   Comment_("Points Left:       " + DoubleToStr(MathAbs(shift_ZLB), 0));               
  }

  for(i=0; i<total; i++)
  {
   OrderSelect(i, SELECT_BY_POS);
   if(OrderSymbol() == Symbol() && OrderType() == OP_SELL)
    lots += OrderLots();   
  }
  
  if(lots == 0.0)
  {
   Comment_("Íåò ïîçèöèé íà ïðîäàæó (SELL)." );  //"No SELL Positions."
  }
  
  else
  {
   shift_ZLS = AccountFreeMargin() / (MarketInfo(Symbol(), MODE_LOTSIZE) * lots * Point);

   ObjectCreate("ZeroLevel_SELL", OBJ_HLINE, 0, 0, Bid + shift_ZLS*Point);
   ObjectSet("ZeroLevel_SELL", OBJPROP_COLOR, Colour_ZM);
   ObjectSet("ZeroLevel_SELL", OBJPROP_STYLE, Style_ZM);
   ObjectSet("ZeroLevel_SELL", OBJPROP_WIDTH, Width_ZM);
         
   Comment_("ZeroLevel_SELL:    " + DoubleToStr(Bid + shift_ZLS*Point, Digits));
   Comment_("Current Bid:       " + DoubleToStr(Bid, Digits));
   Comment_("Points Left:        " + DoubleToStr(MathAbs(shift_ZLS), 0));               
  } 
 }


//---------------------------------------------------------------------------------------------//
//äîïîëíèòåëüíàÿ ïàíåëü èíôî.2      
//---------------------------------------------------------------------------------------------//
      
 if (INFO_2 == true)
 {
  ObjectCreate("Ìîæíî êóïèòü ëîòîâ - èíôî", OBJ_LABEL, 0, 0, 0);        
  ObjectSetText("Ìîæíî êóïèòü ëîòîâ - èíôî", "Ìîæíî êóïèòü ëîòîâ:   " + DoubleToStr(lotsss, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ìîæíî êóïèòü ëîòîâ - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ìîæíî êóïèòü ëîòîâ - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ìîæíî êóïèòü ëîòîâ - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*10.4);

  ObjectCreate("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî", OBJ_LABEL, 0, 0, 0);         
  ObjectSetText("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî", "Çàëîã çà ìèí-ûé ëîò:   " + DoubleToStr(min_balans, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Çàëîã çà ìèíèìàëüíûé ëîò - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*11.7);

  ObjectCreate("Ìèíèìàëüíûé ëîò - èíôî", OBJ_LABEL, 0, 0, 0);        
  ObjectSetText("Ìèíèìàëüíûé ëîò - èíôî", "Ìèíèìàëüíûé ëîò:    " + DoubleToStr(minlot, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ìèíèìàëüíûé ëîò - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ìèíèìàëüíûé ëîò - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ìèíèìàëüíûé ëîò - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*13.0);

  ObjectCreate("Ìàêñèìàëüíûé ëîò - èíôî", OBJ_LABEL, 0, 0, 0);         
  ObjectSetText("Ìàêñèìàëüíûé ëîò - èíôî", "Ìàêñèìàëüíûé ëîò:   " + DoubleToStr(maxlot, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ìàêñèìàëüíûé ëîò - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ìàêñèìàëüíûé ëîò - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ìàêñèìàëüíûé ëîò - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*14.3);

  ObjectCreate("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî", "Ñòîèìîñòü 1 ïï/1 ëîò:    " + DoubleToStr(pp_cena, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ñòîèìîñòü 1 ïï äëÿ 1 ëîòà - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*15.6);

  ObjectCreate("Ñïðåä, ïï - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Ñïðåä, ïï - èíôî", "Ñïðåä, ïï:   " + DoubleToStr(spread, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ñïðåä, ïï - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ñïðåä, ïï - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ñïðåä, ïï - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*16.9);

  ObjectCreate("Ñâîï SELL, ïï - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Ñâîï SELL, ïï - èíôî", "Ñâîï SELL, ïï:    " + DoubleToStr(swap_short, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ñâîï SELL, ïï - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ñâîï SELL, ïï - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ñâîï SELL, ïï - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*18.2);

  ObjectCreate("Ñâîï BUY, ïï - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Ñâîï BUY, ïï - èíôî", "Ñâîï BUY, ïï:   " + DoubleToStr(swap_long, 3), RazmerShrifta, "Verdana", cvet_dop_info2);
  ObjectSet("Ñâîï BUY, ïï - èíôî", OBJPROP_CORNER, Ugol_2);
  ObjectSet("Ñâîï BUY, ïï - èíôî", OBJPROP_XDISTANCE, MP_X_2);
  ObjectSet("Ñâîï BUY, ïï - èíôî", OBJPROP_YDISTANCE, MP_Y_2+RazmerShrifta*19.5);
 }
         
       
//---------------------------------------------------------------------------------------------//
// ïàíåëü ðàñ÷åòîâ      
//---------------------------------------------------------------------------------------------//
        
 if (CALC_0 == true)
 {
  double Pribyl_R_2, Rastojanie_R_2, Lots_R_2;

  ObjectCreate("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
  ObjectSetText("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò", "  ÏÀÍÅËÜ ÐÀÑ×ÅÒÀ:" , RazmerShrifta, "Verdana", cvet_CALC_0);
  ObjectSet("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
  ObjectSet("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta*2.5);
  ObjectSet("Ïàíåëü Ðàñ÷åòà - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*4.5);

  if ((Pribyl_R != Pribyl_R_2 && Rastojanie_R != Rastojanie_R_2 && Lots_R != Lots_R_2) || (Pribyl_R == 0.0 && Rastojanie_R == 0.0 && Lots_R == 0.0) || (Pribyl_R == 0.0 && Rastojanie_R == 0.0 && Lots_R != 0.0) || (Pribyl_R == 0.0 && Rastojanie_R != 0.0 && Lots_R == 0.0) || (Pribyl_R != 0.0 && Rastojanie_R == 0.0 && Lots_R == 0.0))
  {
   ObjectCreate("Êîììåíòàðèè - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
   ObjectSetText("Êîììåíòàðèè - Ðàñ÷åò", "  ÍÅÂÅÐÍ. ÂÂÎÄ ÇÍÀ×.", RazmerShrifta, "Verdana", cvet_CALC_R);
   ObjectSet("Êîììåíòàðèè - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
   ObjectSet("Êîììåíòàðèè - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
   ObjectSet("Êîììåíòàðèè - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*1.6);  
  } 

  else 
  {
   if (Pribyl_R == 0.0 && Rastojanie_R != 0.0 && Lots_R != 0.0) 
   {
    Pribyl_R_2 = Rastojanie_R * Lots_R * pp_cena; //Ðàñ÷åò ïðèáûëè
      
    ObjectCreate("Ïðèáûëü - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Ïðèáûëü - Ðàñ÷åò", "        Ïðèáûëü:   " + DoubleToStr(Pribyl_R_2, 3), RazmerShrifta, "Verdana", cvet_CALC_R);
    ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
    ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
    ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0);     

    ObjectCreate("Ðàññòîÿíèå - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Ðàññòîÿíèå - Ðàñ÷åò", "    Ðàññòîÿíèå:   " + DoubleToStr(Rastojanie_R, 3), RazmerShrifta, "Verdana", cvet_CALC_0);
    ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
    ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
    ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*1.3);     

    ObjectCreate("Îáúåì Ëîòà - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
    ObjectSetText("Îáúåì Ëîòà - Ðàñ÷åò", "   Îáúåì Ëîòà:   " + DoubleToStr(Lots_R, 3), RazmerShrifta, "Verdana", cvet_CALC_0);
    ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
    ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
    ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*2.6);  
   }

   else 
   {
    if (Pribyl_R != 0.0 && Rastojanie_R == 0.0 && Lots_R != 0.0) 
    {
     Rastojanie_R_2 = Pribyl_R / (Lots_R * pp_cena); //Ðàñ÷åò ðàññòîÿíèÿ
                                                      
     ObjectCreate("Ïðèáûëü - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
     ObjectSetText("Ïðèáûëü - Ðàñ÷åò", "       Ïðèáûëü:   " + DoubleToStr(Pribyl_R, 3), RazmerShrifta, "Verdana", cvet_CALC_0);
     ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
     ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
     ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0);     

     ObjectCreate("Ðàññòîÿíèå - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
     ObjectSetText("Ðàññòîÿíèå - Ðàñ÷åò", "   Ðàññòîÿíèå:   " + DoubleToStr(Rastojanie_R_2, 3), RazmerShrifta, "Verdana", cvet_CALC_R);
     ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
     ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
     ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*1.3);     

     ObjectCreate("Îáúåì Ëîòà - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
     ObjectSetText("Îáúåì Ëîòà - Ðàñ÷åò", "  Îáúåì Ëîòà:   " + DoubleToStr(Lots_R, 3), RazmerShrifta, "Verdana", cvet_CALC_0);
     ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
     ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
     ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*2.6);  
    }

    else 
    {
     if (Pribyl_R != 0.0 && Rastojanie_R != 0.0 && Lots_R == 0.0) 
     {
      Lots_R_2 = Pribyl_R / (Rastojanie_R * pp_cena); //Ðàñ÷åò îáúåìà ëîòà
                                              
      ObjectCreate("Ïðèáûëü - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
      ObjectSetText("Ïðèáûëü - Ðàñ÷åò", "       Ïðèáûëü:   " + DoubleToStr(Pribyl_R, 3), RazmerShrifta, "Verdana", cvet_CALC_0);
      ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
      ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
      ObjectSet("Ïðèáûëü - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0);     

      ObjectCreate("Ðàññòîÿíèå - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
      ObjectSetText("Ðàññòîÿíèå - Ðàñ÷åò", "   Ðàññòîÿíèå:   " + DoubleToStr(Rastojanie_R, 3), RazmerShrifta, "Verdana", cvet_CALC_0);
      ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
      ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
      ObjectSet("Ðàññòîÿíèå - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*1.3);     

      ObjectCreate("Îáúåì Ëîòà - Ðàñ÷åò", OBJ_LABEL, 0, 0, 0);        
      ObjectSetText("Îáúåì Ëîòà - Ðàñ÷åò", "  Îáúåì Ëîòà:   " + DoubleToStr(Lots_R_2, 3), RazmerShrifta, "Verdana", cvet_CALC_R);
      ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_CORNER, Ugol_0);
      ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_XDISTANCE, MP_X_0+RazmerShrifta);
      ObjectSet("Îáúåì Ëîòà - Ðàñ÷åò", OBJPROP_YDISTANCE, MP_Y_0+RazmerShrifta*2.6);  
     }
    }
   }
  }
 }

  
//---------------------------------------------------------------------------------------------//
//äîïîëíèòåëüíàÿ ïàíåëü èíôî.4 
//---------------------------------------------------------------------------------------------//
 
 int Order_Buy, Order_Sell, AllOrder_Buy=0, AllOrder_Sell=0;
    
 for(Order_Buy=OrdersTotal()-1;Order_Buy>=0;Order_Buy--)
 {
  if (!OrderSelect(Order_Buy,SELECT_BY_POS,MODE_TRADES)) break;
  if (OrderSymbol()!=Symbol()) continue;
  if (OrderType()==OP_BUY) 
  {
   AllOrder_Buy = AllOrder_Buy + 1;                                         // êîëëè÷åñòâî âñåõ Buy îðäåðîâ
  }
 }
     
 for(Order_Sell=OrdersTotal()-1;Order_Sell>=0;Order_Sell--)
 {
  if (!OrderSelect(Order_Sell,SELECT_BY_POS,MODE_TRADES)) break;
  if (OrderSymbol()!=Symbol()) continue;
  if (OrderType()==OP_SELL) 
  {
   AllOrder_Sell = AllOrder_Sell + 1;                                       // êîëëè÷åñòâî âñåõ Sell îðäåðîâ
  }
 }

 double Buy_pribyl = (Bid - price_bzu_B) * BuyLots_b * pp_cena * Znakov;    // ïðèáûëü îò Buy ñäåëîê 
 double Sell_pribyl = (price_bzu_S - Ask) * SellLots_b * pp_cena * Znakov;  // ïðèáûëü îò Sell ñäåëîê
 double pribyl_itogo = Buy_pribyl + Sell_pribyl;                            // ïðèáûëü îò âñåõ ñäåëîê



 if (INFO_4 == true)   
 {
  ObjectCreate("Îáù.òåêóù.ïðèáûëü - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Îáù.òåêóù.ïðèáûëü - èíôî", "Îáù.Òåêóù.Ïðèá.:  " + DoubleToStr(pribyl_itogo, 2), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Îáù.òåêóù.ïðèáûëü - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Îáù.òåêóù.ïðèáûëü - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Îáù.òåêóù.ïðèáûëü - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*21.3);

  ObjectCreate("Ïðèá.îò.SELL.ñäåëîê - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Ïðèá.îò.SELL.ñäåëîê - èíôî", "Ïðèá. âñåõ SELL:  " + DoubleToStr(Sell_pribyl, 2), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Ïðèá.îò.SELL.ñäåëîê - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Ïðèá.îò.SELL.ñäåëîê - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Ïðèá.îò.SELL.ñäåëîê - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*22.6);      
      
  ObjectCreate("Ïðèá.îò.BUY.ñäåëîê - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Ïðèá.îò.BUY.ñäåëîê - èíôî", "Ïðèá. âñåõ BUY:  " + DoubleToStr(Buy_pribyl, 2), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Ïðèá.îò.BUY.ñäåëîê - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Ïðèá.îò.BUY.ñäåëîê - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Ïðèá.îò.BUY.ñäåëîê - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*23.9);

 
//---------------------------------------------------------------------------------------------//

  ObjectCreate("Óðîâ.SELL=0 - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Óðîâ.SELL=0 - èíôî", "Óðîâ.SELL=0:   " + DoubleToStr(price_bzu_S, Digits), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Óðîâ.SELL=0 - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Óðîâ.SELL=0 - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Óðîâ.SELL=0 - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*25.7);      
      
  ObjectCreate("Óðîâ.BUY=0 - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Óðîâ.BUY=0 - èíôî", "Óðîâ.BUY=0:    " + DoubleToStr(price_bzu_B, Digits), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Óðîâ.BUY=0 - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Óðîâ.BUY=0 - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Óðîâ.BUY=0 - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*27.0); 
  
  
//---------------------------------------------------------------------------------------------//

  ObjectCreate("Îáúåì.SELL.ëîòîâ - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Îáúåì.SELL.ëîòîâ - èíôî", "Îáúåì SELL ëîòîâ:   " + DoubleToStr(-SellLots_b, 2), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Îáúåì.SELL.ëîòîâ - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Îáúåì.SELL.ëîòîâ - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Îáúåì.SELL.ëîòîâ - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*28.8);      
      
  ObjectCreate("Îáúåì.BUY.ëîòîâ - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Îáúåì.BUY.ëîòîâ - èíôî", "Îáúåì BUY ëîòîâ:    " + DoubleToStr(BuyLots_b, 2), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Îáúåì.BUY.ëîòîâ - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Îáúåì.BUY.ëîòîâ - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Îáúåì.BUY.ëîòîâ - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*30.1);      

 
//---------------------------------------------------------------------------------------------//

  ObjectCreate("Êîëëè÷.SELL - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Êîëëè÷.SELL - èíôî", "Êîëëè÷.SELL:   " + DoubleToStr(-AllOrder_Sell, 0), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Êîëëè÷.SELL - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Êîëëè÷.SELL - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Êîëëè÷.SELL - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*31.9);      
      
  ObjectCreate("Êîëëè÷.BUY - èíôî", OBJ_LABEL, 0, 0, 0);       
  ObjectSetText("Êîëëè÷.BUY - èíôî", "Êîëëè÷.BUY:    " + DoubleToStr(AllOrder_Buy, 0), RazmerShrifta, "Verdana", cvet_dop_info4);
  ObjectSet("Êîëëè÷.BUY - èíôî", OBJPROP_CORNER, Ugol_4);
  ObjectSet("Êîëëè÷.BUY - èíôî", OBJPROP_XDISTANCE, MP_X_4);
  ObjectSet("Êîëëè÷.BUY - èíôî", OBJPROP_YDISTANCE, MP_Y_4+RazmerShrifta*33.2);      
 }


//---------------------------------------------------------------------------------------------//
// Óðîâíè ïðåäåëîâ Buy.Stop è Sell.Stop
//---------------------------------------------------------------------------------------------//
 
 if (Urov.BS.SS == true)   
 {
  ObjectCreate("íå íèæå äëÿ Buy.Stop", OBJ_HLINE, 0, 0, 0);
  ObjectSet("íå íèæå äëÿ Buy.Stop", OBJPROP_PRICE1,Ask + MarketInfo(Symbol(), MODE_STOPLEVEL)*Point);
  ObjectSet("íå íèæå äëÿ Buy.Stop", OBJPROP_COLOR, Colour_SB);
  ObjectSet("íå íèæå äëÿ Buy.Stop", OBJPROP_STYLE, Style_SB);
  ObjectSet("íå íèæå äëÿ Buy.Stop", OBJPROP_WIDTH, Width_SB);
  
  ObjectCreate("íå âûøå äëÿ Sell.Stop", OBJ_HLINE, 0, 0, 0);  
  ObjectSet("íå âûøå äëÿ Sell.Stop", OBJPROP_PRICE1, Bid - MarketInfo(Symbol(), MODE_STOPLEVEL)*Point);
  ObjectSet("íå âûøå äëÿ Sell.Stop", OBJPROP_COLOR, Colour_SS); 
  ObjectSet("íå âûøå äëÿ Sell.Stop", OBJPROP_STYLE, Style_SS);
  ObjectSet("íå âûøå äëÿ Sell.Stop", OBJPROP_WIDTH, Width_SS);
 }


//---------------------------------------------------------------------------------------------//
// Óðîâåíü Ðàâíîãî Ëîêà
//---------------------------------------------------------------------------------------------//
 
 if (U.R.Lock == true)   
 {
  double URLock;
  if (SellLots_b - BuyLots_b != 0)
  {
   if (SellLots_b > BuyLots_b)
   {
    URLock = Bid - (AccountFreeMargin() - (SellLots_b - BuyLots_b) * lot_cena )/(MarketInfo(Symbol(), MODE_TICKVALUE) * lots) * Point;
   }
   else
   {
    URLock = Bid - (AccountFreeMargin() - (BuyLots_b - SellLots_b) * lot_cena )/(MarketInfo(Symbol(), MODE_TICKVALUE) * lots) * Point;
   }

   ObjectCreate("Óðîâåíü Ðàâíîãî Ëîêà", OBJ_HLINE, 0, 0, URLock);
   ObjectSet("Óðîâåíü Ðàâíîãî Ëîêà", OBJPROP_COLOR, Colour_URLock);
   ObjectSet("Óðîâåíü Ðàâíîãî Ëîêà", OBJPROP_STYLE, Style_URLock);
   ObjectSet("Óðîâåíü Ðàâíîãî Ëîêà", OBJPROP_WIDTH, Width_URLock);
  }
 }
 
 
//---------------------------------------------------------------------------------------------//
// ñîñòîÿíèå ðàñ÷åòîâ, èíäèêàöèè...
//---------------------------------------------------------------------------------------------//      

 if (MetodRBezubytkaNew == true) 
 { 
  if (MetodRBNew_Sw_Com  == true) Comment_("Ðàñ÷.Áåçóá.New+S&C");
  else Comment_("Ðàñ÷.Áåçóá.New.áåç.S&C");
 }

 else Comment_("Ðàñ÷.Áåçóá.Old");

 if (ZeroProfit != true) Comment_("Âûêë.-Óðîâ.Îáù.Áåçóá.");

 if(AccountFreeMarginMode() == 1)
 {
    if (ZeroBUY != true) Comment_("Âûêë.-Óðîâ.BUY=0");
    if (ZeroBUYP != true) Comment_("Âûêë.-Óðîâ.BUY=0+");
    if (ZeroSELL != true) Comment_("Âûêë.-Óðîâ.SELL=0");
    if (ZeroSELLP != true) Comment_("Âûêë.-Óðîâ.SELL=0+");
    if (ZeroMargin != true) Comment_("Âûêë.-Óðîâ.Ì=0");
    if (ZeroFull != true) Comment_("Âûêë.-Óðîâ.ÑËÈÂÀ");
    if (ZeroMarginPr != true) Comment_("Âûêë.-Óðîâ.%.äî.Ì=0");
    if (ZeroFull_Pr != true) Comment_("Âûêë.-Óðîâ.%.çàêð.ÄÖ");
    if (SoundPlay_Menshe != true) Comment_("Âûêë.ÇÂÊ-Öåíà.<.%Ì=0");
    if (SoundPlay_Bolshe != true) Comment_("Âûêë.ÇÂÊ-Öåíà.>.%Ì=0");
    if (Cvet_zony_dDZ_f != true) Comment_("Âûêë.-Öâåò.Ìåðòâàÿ.Çîíà");
    if (Cvet_zony_LOCK_p != true) Comment_("Âûêë.-Öâåò.Çîíû.LOCK");
    if (Urov.BS.SS != true) Comment_("Âûêë.-Óðîâ.BS&SS");
 }
 
 if (U.R.Lock != true) Comment_("Âûêë.-Óðîâ.Ðàâí.Ëîêà");
 
 if (INFO_1 != true) Comment_("Âûêë.-Ïàíåëü.INFO.1");
 if (INFO_2 != true) Comment_("Âûêë.-Ïàíåëü.INFO.2");
 if (INFO_4 != true) Comment_("Âûêë.-Ïàíåëü.INFO.4");
 if (CALC_0 != true) Comment_("Âûêë.-Ïàíåëü.CALC");


//---------------------------------------------------------------------------------------------//
// îêîí÷àíèå
//---------------------------------------------------------------------------------------------//

 Comment("---------------------------- \n i-UrovenZero-v.2.2.7"  + comment); 
 comment = "";
  
 return(0);
}

void Comment_(string com)
{
 if (INFO_COMENT == true) comment = comment + "\n" + com;
}

// © Bor-ix & Kirill & d_tom & Don_Leone :) Ïðè ïîääåðæêå www.FX4U.ru"






Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:



Custom Indicators Used:

Order Management characteristics:
Checks for the total of open orders

Other Features:


It plays sound alerts