Broker_Mode_Script

Author: Copyright 2022, MetaQuotes Ltd.
Miscellaneous
It opens Message Boxes to the user
0 Views
0 Downloads
0 Favorites
Broker_Mode_Script
ÿþ//+------------------------------------------------------------------+

//|                                           Broker_Mode_Script.mq5 |

//|                                  Copyright 2022, MetaQuotes Ltd. |

//|                                             https://www.mql5.com |

//+------------------------------------------------------------------+

#property copyright "Copyright 2022, MetaQuotes Ltd."

#property link      "https://www.mql5.com"

#property version   "1.00"

//+------------------------------------------------------------------+

//| Script program start function                                    |

//+------------------------------------------------------------------+

void OnStart()

  {

//--- Check real accaunt

   ENUM_ACCOUNT_TRADE_MODE acc_trade_mode = ENUM_ACCOUNT_TRADE_MODE(AccountInfoInteger(ACCOUNT_TRADE_MODE));

   if(acc_trade_mode == ACCOUNT_TRADE_MODE_DEMO)

     {

      MessageBox("!:@8?B 70?CI5= =0 !" & B>@3>2>< AGQB5!"+ "\n" +"><5@ B>@3>2>3> AGQB0 " +

                 (string)AccountInfoInteger(ACCOUNT_LOGIN) + "", "=8<0=85", MB_OK | MB_ICONWARNING);

     }

   if(acc_trade_mode == ACCOUNT_TRADE_MODE_REAL)

     {

      MessageBox("!:@8?B 70?CI5= =0  , B>@3>2>< AGQB5!"+ "\n" +"><5@ B>@3>2>3> AGQB0 " +

                 (string)AccountInfoInteger(ACCOUNT_LOGIN) + "", "=8<0=85", MB_OK | MB_ICONWARNING);

     }

   if(acc_trade_mode == ACCOUNT_TRADE_MODE_CONTEST)

     {

      MessageBox("!:@8?B 70?CI5= =0 # ! B>@3>2>< AGQB5!"+ "\n" +"><5@ B>@3>2>3> AGQB0 " +

                 (string)AccountInfoInteger(ACCOUNT_LOGIN) + "", "=8<0=85", MB_OK | MB_ICONWARNING);

     }

//--- Check margine mode

   ENUM_ACCOUNT_MARGIN_MODE margin_mode = ENUM_ACCOUNT_MARGIN_MODE(AccountInfoInteger(ACCOUNT_MARGIN_MODE));

   if(margin_mode != ACCOUNT_MARGIN_MODE_RETAIL_NETTING)

     {

      MessageBox("@>:5@ =5 ?>445@68205B 18@652>9 @0AGQB <0@68 2 @568<5 '5BB8=3'!", "H81:0", MB_OK | MB_ICONHAND);

     }

//--- Check symbol calc mode

   ENUM_SYMBOL_CALC_MODE calc_mode = ENUM_SYMBOL_CALC_MODE(SymbolInfoInteger(_Symbol, SYMBOL_TRADE_CALC_MODE));

   if((calc_mode != SYMBOL_CALC_MODE_EXCH_FUTURES_FORTS) && (calc_mode != SYMBOL_CALC_MODE_EXCH_OPTIONS_MARGIN))

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B @0AGQB DLNG5@A>2 4;O FORTS!", "H81:0", MB_OK | MB_ICONHAND);

      Print(""5:CH89 @0AGQB: ", EnumToString(calc_mode));

     }

//--- Check for full mode

   ENUM_SYMBOL_TRADE_MODE trade_mode = ENUM_SYMBOL_TRADE_MODE(SymbolInfoInteger(_Symbol, SYMBOL_TRADE_MODE));

   if(trade_mode != SYMBOL_TRADE_MODE_FULL)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B ?>;=CN B>@3>2;N!", "H81:0", MB_OK | MB_ICONHAND);

     }

//--- Check trade execution mode

   ENUM_SYMBOL_TRADE_EXECUTION market_info = ENUM_SYMBOL_TRADE_EXECUTION(SymbolInfoInteger(_Symbol, SYMBOL_TRADE_EXEMODE));

   if((market_info & SYMBOL_TRADE_EXECUTION_EXCHANGE) != SYMBOL_TRADE_EXECUTION_EXCHANGE)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B TRADE EXECUTION EXCHANGE @568<!", "H81:0", MB_OK | MB_ICONHAND);

     }

//--- Check orders mode

   int order_mode = int(SymbolInfoInteger(_Symbol, SYMBOL_ORDER_MODE));



   if((SYMBOL_ORDER_MARKET & order_mode) != SYMBOL_ORDER_MARKET)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B Market Execution @568< CAB0=>2:8 >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((SYMBOL_ORDER_LIMIT & order_mode) != SYMBOL_ORDER_LIMIT)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B Limit @568< CAB0=>2:8 >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((SYMBOL_ORDER_STOP_LIMIT & order_mode) != SYMBOL_ORDER_STOP_LIMIT)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B Stop Limit @568< CAB0=>2:8 >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((SYMBOL_ORDER_STOP & order_mode) != SYMBOL_ORDER_STOP)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B Stop @568< CAB0=>2:8 >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((SYMBOL_ORDER_SL & order_mode) != SYMBOL_ORDER_SL)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B Stop Loss @568< CAB0=>2:8 >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((SYMBOL_ORDER_TP & order_mode) != SYMBOL_ORDER_TP)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B Take Profit @568< CAB0=>2:8 >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

//---Filing mode

   int filling_mode = int(SymbolInfoInteger(_Symbol, SYMBOL_FILLING_MODE));

   if((SYMBOL_FILLING_IOC & filling_mode) != SYMBOL_FILLING_IOC)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B filling IOC @568< 8A?>;=5=8O >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((SYMBOL_FILLING_FOK & filling_mode) != SYMBOL_FILLING_FOK)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B filling FOK @568< 8A?>;=5=8O >@45@>2!", "H81:0", MB_OK | MB_ICONHAND);

     }

//---Ckeck expiration

   int symbol_exp_type = int(SymbolInfoInteger(_Symbol, SYMBOL_EXPIRATION_MODE));

//---

   if((symbol_exp_type & SYMBOL_EXPIRATION_DAY) != SYMBOL_EXPIRATION_DAY)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B M:A?8@0F8N DAY!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((symbol_exp_type & SYMBOL_EXPIRATION_SPECIFIED_DAY) != SYMBOL_EXPIRATION_SPECIFIED_DAY)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B M:A?8@0F8N SPECIFIED DAY!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((symbol_exp_type & SYMBOL_EXPIRATION_SPECIFIED) != SYMBOL_EXPIRATION_SPECIFIED)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B M:A?8@0F8N SPECIFIED!", "H81:0", MB_OK | MB_ICONHAND);

     }

   if((symbol_exp_type & SYMBOL_EXPIRATION_GTC) != SYMBOL_EXPIRATION_GTC)

     {

      MessageBox("!8<2>; " + _Symbol + " =5 ?>445@68205B M:A?8@0F8N GTC!", "H81:0", MB_OK | MB_ICONHAND);

     }

  }

//+------------------------------------------------------------------+

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