MarketInfo_v3

Author: Sergey Mechanic
Miscellaneous
It opens Message Boxes to the user
0 Views
0 Downloads
0 Favorites
MarketInfo_v3
//+------------------------------------------------------------------+
//|                                                   MarketInfo.mq4 |
//|                                                  Sergey Mechanic |
//|        https://login.mql5.com/ru/users/sergey_mechanic/portfolio |
//+------------------------------------------------------------------+
#property copyright "Sergey Mechanic"
#property link      "https://login.mql5.com/ru/users/sergey_mechanic/portfolio"
#property version   "1.00"

void OnStart()
{
   string TradeAllowed;
   if(MarketInfo(_Symbol, MODE_TRADEALLOWED) == 1)
      TradeAllowed = "Äà";
   else
      TradeAllowed = "Íåò";
      
   string SwapType;
   switch((int) MarketInfo(_Symbol, MODE_SWAPTYPE))
   {
      case 0:
      SwapType = "Â ïóíêòàõ";
      break;
      
      case 1:
      SwapType = "Â áàçîâîé âàëþòå";
      break;
      
      case 2:
      SwapType = "Â ïðîöåíòàõ";
      break;
      
      case 3:
      SwapType = "Â âàëþòå äåïîçèòà";
      break;
      
      default:
      SwapType = "";
      break;
   }

   string ProfitMode;
   switch((int) MarketInfo(_Symbol, MODE_PROFITCALCMODE))
   {
      case 0:
      ProfitMode = "FOREX";
      break;
      
      case 1:
      ProfitMode = "CFD";
      break;
      
      case 2:
      ProfitMode = "Futures";
      break;
      
      default:
      ProfitMode = "";
      break;
   }
   
   string MarginCallMode;
   switch((int) MarketInfo(_Symbol, MODE_MARGINCALCMODE))
   {
      case 0:
      MarginCallMode = "FOREX";
      break;
      
      case 1:
      MarginCallMode = "CFD";
      break;
      
      case 2:
      MarginCallMode = "Futures";
      break;
      
      case 3:
      MarginCallMode = "CFD íà èíäåêñû";
      break;
      
      default:
      MarginCallMode = "";
      break;
   }
   
   string TradeStarting;
   if(MarketInfo(_Symbol, MODE_STARTING) != 0)
      TradeStarting = TimeToStr((datetime) MarketInfo(_Symbol, MODE_STARTING), TIME_DATE);
   else
      TradeStarting = "-";
      
   string TradeEpiration;
   if(MarketInfo(_Symbol, MODE_EXPIRATION) != 0)
      TradeEpiration = TimeToStr((datetime) MarketInfo(_Symbol, MODE_EXPIRATION), TIME_DATE);
   else
      TradeEpiration = "-";

   string MktInfo =   _Symbol                                                                                               + "\n" +
                                                                                                                              "\n" +
                     "Bid\t\t\t\t"                          + DoubleToStr(MarketInfo(_Symbol, MODE_BID), _Digits)           + "\n" +
                     "Ask\t\t\t\t"                          + DoubleToStr(MarketInfo(_Symbol, MODE_ASK), _Digits)           + "\n" +
                     "Òåêóùèé ñïðåä\t\t\t"                  + DoubleToStr(MarketInfo(_Symbol, MODE_SPREAD), 0)              + "\n" +
                     "Âðåìÿ ïîñëåäíåé êîòèðîâêè\t\t"        + TimeToStr((datetime)MarketInfo(_Symbol, MODE_TIME), TIME_DATE|TIME_MINUTES|TIME_SECONDS) + "\n" +
                     "Äíåâíîé ìàêñèìóì\t\t\t"               + DoubleToStr(MarketInfo(_Symbol, MODE_HIGH), _Digits)          + "\n" +
                     "Äíåâíîé ìèíèìóì\t\t\t"                + DoubleToStr(MarketInfo(_Symbol, MODE_LOW), _Digits)           + "\n" +
                                                                                                                              "\n" +
                     "Ðàçìåð ïóíêòà (Point)\t\t"            + DoubleToStr(MarketInfo(_Symbol, MODE_POINT), _Digits)         + "\n" +
                     "Øàã èçìåíåíèÿ öåíû (TickSize)\t"      + DoubleToStr(MarketInfo(_Symbol, MODE_TICKSIZE), _Digits)      + "\n" +
                     "Öåíà ïóíêòà â âàëþòå äåïîçèòà\t"      + DoubleToStr(MarketInfo(_Symbol, MODE_TICKVALUE), 2)           + "\n" +
                                                                                                                              "\n" +
                     "Ðàçìåð ëîòà\t\t\t"                    + DoubleToStr(MarketInfo(_Symbol, MODE_LOTSIZE), 0)             + "\n" +
                     "Ìèíèìàëüíûé ëîò\t\t\t"                + DoubleToStr(MarketInfo(_Symbol, MODE_MINLOT), 2)              + "\n" +
                     "Ìàêñèìàëüíûé ëîò\t\t\t"               + DoubleToStr(MarketInfo(_Symbol, MODE_MAXLOT), 2)              + "\n" +
                     "Øàã ëîòà\t\t\t\t"                     + DoubleToStr(MarketInfo(_Symbol, MODE_LOTSTEP), 2)             + "\n" +
                                                                                                                              "\n" +
                     "Ìåòîä âû÷èñëåíèÿ ïðèáûëè\t\t"         + ProfitMode                                                    + "\n" +
                     "Ìåòîä ðàñ÷¸òà çàëîãîâûõ ñðåäñòâ\t"    + MarginCallMode                                                + "\n" +
                     "Íà÷àëüíûé çàëîã äëÿ 1 ëîòà\t\t"       + DoubleToStr(MarketInfo(_Symbol, MODE_MARGININIT), 2)          + "\n" +
                     "Ðàçìåð çàëîãà äëÿ ïîääåðæêè\t\t"      + DoubleToStr(MarketInfo(_Symbol, MODE_MARGINMAINTENANCE), 2)   + "\n" +
                     "îòêðûòîé ïîçöèè 1 ëîò"                                                                                + "\n" +
                     "Ìàðæà, âçûìàåìàÿ ñ ïåðåêðûòûõ\t"      + DoubleToStr(MarketInfo(_Symbol, MODE_MARGINHEDGED), 2)        + "\n" +
                     "ïîçèöèé â ïåðåñ÷¸òå íà 1 ëîò"                                                                         + "\n" +
                     "Ðàñ÷¸ò ñâîáîäíûõ ñðåäñòâ äëÿ\t\t"     + DoubleToStr(MarketInfo(_Symbol, MODE_MARGINREQUIRED), 2)      + "\n" +
                     "îòêðûòèÿ 1 ëîòà íà ïîêóïêó"                                                                           + "\n" +
                                                                                                                              "\n" +
                     "Stop level\t\t\t\t"                   + DoubleToStr(MarketInfo(_Symbol, MODE_STOPLEVEL), 0)           + "\n" +
                     "Freeze level\t\t\t"                   + DoubleToStr(MarketInfo(_Symbol, MODE_FREEZELEVEL), 0)         + "\n" +
                                                                                                                              "\n" +
                     "Ìåòîä âû÷èñëåíèÿ ñâîïîâ\t\t"          + SwapType                                                      + "\n" +
                     "SWAP äëèííûõ ïîçèöèé\t\t"             + DoubleToStr(MarketInfo(_Symbol, MODE_SWAPLONG), 2)            + "\n" +
                     "SWAP êîðîòêèõ ïîçèöèé\t\t"            + DoubleToStr(MarketInfo(_Symbol, MODE_SWAPSHORT), 2)           + "\n" +
                                                                                                                              "\n" +
                     "Äàòà íà÷àëà òîðãîâ\t\t\t"             + TradeStarting                                                 + "\n" +
                     "Äàòà îêîí÷àíèÿ òîðãîâ\t\t"            + TradeEpiration                                                + "\n" +
                                                                                                                              "\n" +
                     "Òîðãîâëÿ ðàçðåøåíà\t\t"               + TradeAllowed;

                  
   MessageBox(MktInfo, "Market Information");

   return; 
}

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 ---