Author: Argon71
0 Views
0 Downloads
0 Favorites
MAX_LOT
//+------------------------------------------------------------------+
//|                                                      MAX_LOT.mq4 |
//|                                                          Argon71 |
//|                                      http://argon71.blogspot.com |
//+------------------------------------------------------------------+
#property copyright "Argon71"
#property link      "http://argon71.blogspot.com"
#property indicator_chart_window

extern int Lot = 100000; // Ñòàíäàðòíîå çíà÷åíèå ëîòà â òîðãîâëå.
extern int Leverage = 0; // Åñëè çíà÷åíèå ïëå÷à èçâåñòíî, åãî ëó÷øå ââåñòè âðó÷íóþ.

int AL;
int Find;
double AFM;
string AC;
double LotS;
double LotB;
string OutS;
string OutB;

//+------------------------------------------------------------------+
//| Äåèíñòàëÿöèÿ ïðè óäàëåíèè èíäèêàòîðà                             |
//+------------------------------------------------------------------+
int deinit()
  {
//---- Ïðîñòî óäàëÿåì âñå ñîçäàííûå îáúåêòû ----
   ObjectDelete("MAX Lot for Sell");
   ObjectDelete("MAX Lot for Buy");
   ObjectDelete("Leverage");
//---- Ãðàôèê î÷èùåí ----
   return(0);
  }
//+------------------------------------------------------------------+
//| Íà÷àëî âûïîëíåíèÿ                                                |
//+------------------------------------------------------------------+
int start()
  {
if (Leverage == 0) AL = AccountLeverage( ); // Âîçâðàùàåò çíà÷åíèå ïëå÷à äëÿ òåêóùåãî ñ÷åòà. 
else AL = Leverage;
AFM = AccountFreeMargin( ); // Âîçâðàùàåò çíà÷åíèå ñâîáîäíûõ ñðåäñòâ, ðàçðåøåííûõ äëÿ îòêðûòèÿ ïîçèöèé íà òåêóùåì ñ÷åòå. 
AC = AccountCurrency( ); // Âîçâðàùàåò íàèìåíîâàíèå âàëþòû äëÿ òåêóùåãî ñ÷åòà. 
Find = StringFind(Symbol(),AC,0); // Èùåò íàèìåíîâàíèå âàëþòû äëÿ òåêóùåãî ñ÷åòà â íàçâàíèè ãðàôèêà.
//---- Ðàññ÷¸ò çíà÷åíèÿ ìàêñèìàëüíîãî ëîòà ----
   if (Find == 0) { // Âàëþòà â ÷èñëèòåëå:
   LotS = AFM*AL/Lot;
   LotB = LotS;
   }
   else {
         if (Find == 3) { // Âàëþòà â çíàìåíàòåëå:
         LotS = AFM*AL/(Lot*Ask);
         LotB = AFM*AL/(Lot*Bid);
         }
         else AFM = -1.0; // Âàëþòà íå íàéäåíà - èä¸ì ìèìî.
   }
//---- Âûâîä íàäïèñè íà ãðàôèê ----
if (AFM > 0) {
OutS = "MAX Lot for Sell: " + LotS; // Çíà÷åíèå ìàêñèìàëüíîãî ëîòà äëÿ ïðîäàæè.
OutB = "MAX Lot for Buy: " + LotB; // Çíà÷åíèå ìàêñèìàëüíîãî ëîòà äëÿ ïîêóïêè.
}
else {
OutS = "You can`t!"; // Íåò âîçìîæíîñòè ñîâåðøèòü ñäåëêó.
OutB = OutS;
}
//---- MAX Lot for Sell ---- Êðàñíîãî öâåòà ----
   ObjectCreate("MAX Lot for Sell", OBJ_LABEL, 0, TimeLocal( ), LotS);
   ObjectSetText("MAX Lot for Sell", OutS, 8, "Comic Sans MS", Tomato);
   ObjectSet("MAX Lot for Sell", OBJPROP_CORNER, 0);
   ObjectSet("MAX Lot for Sell", OBJPROP_XDISTANCE, 5);
   ObjectSet("MAX Lot for Sell", OBJPROP_YDISTANCE, 10);
//---- MAX Lot for Buy ---- Ñèíåãî öâåòà ----
   ObjectCreate("MAX Lot for Buy", OBJ_LABEL, 0,  TimeLocal( ), LotB);
   ObjectSetText("MAX Lot for Buy", OutB, 8, "Comic Sans MS", LightSkyBlue);
   ObjectSet("MAX Lot for Buy", OBJPROP_CORNER, 0);
   ObjectSet("MAX Lot for Buy", OBJPROP_XDISTANCE, 5);
   ObjectSet("MAX Lot for Buy", OBJPROP_YDISTANCE, 22);
//---- Leverage ---- Ƹëòîãî öâåòà ----
   ObjectCreate("Leverage", OBJ_LABEL, 0,  TimeLocal( ), 0);
   ObjectSetText("Leverage", "(Leverage 1:" + AL + ")", 8, "Comic Sans MS", Yellow);
   ObjectSet("Leverage", OBJPROP_CORNER, 0);
   ObjectSet("Leverage", OBJPROP_XDISTANCE, 5);
   ObjectSet("Leverage", OBJPROP_YDISTANCE, 36);
//----
   return(0);
  }
//+------------------------------------------------------------------+

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---