Скачать MetaTrader 5

MQL4 OrderSend Error 130

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Подключи MQL5 Cloud Network. Миллионы трейдеров ждут этого!
Matvey Alekseev
506
Matvey Alekseev 2016.08.22 20:36 

Всем привет! Получаю эту ошибку при открытии отложенных ордеров советником, на реальном счёте... установил условия возникновения, со стоп уровнями всё в порядке, с ценой открытия тоже... однако, если инструмент `скрыт` (в обзоре рынка), то собственно error 130!
Скажите, пожалуйста - это так и задумано или я что-то упустил...?

ПС: перед открытием проверяю символ : MarketInfo(mySymbol, MODE_TRADEALLOWED) - всё ок!

MT4 4.00 build 988 (4 Jul 2016)

Vitaly Muzichenko
3440
Vitaly Muzichenko 2016.08.22 23:23  

Попробуйте так, раньше работало

 double ask=MarketInfo(mySymbol,MODE_ASK);
 double bid=MarketInfo(mySymbol,MODE_BID);
    if(ask==0 && bid==0) {
     Alert("Нет символа в обзоре рынка: ", mySymbol, GetLastError());
    }
Artyom Trishkin
Модератор
75590
Artyom Trishkin 2016.08.23 00:45  
Matvey Alekseev:

Всем привет! Получаю эту ошибку при открытии отложенных ордеров советником, на реальном счёте... установил условия возникновения, со стоп уровнями всё в порядке, с ценой открытия тоже... однако, если инструмент `скрыт` (в обзоре рынка), то собственно error 130!
Скажите, пожалуйста - это так и задумано или я что-то упустил...?

ПС: перед открытием проверяю символ : MarketInfo(mySymbol, MODE_TRADEALLOWED) - всё ок!

MT4 4.00 build 988 (4 Jul 2016)

Для того, чтобы можно было торговать на символе, он должен находиться в обзоре рынка.
Sergei Vladimirov
8764
Sergei Vladimirov 2016.08.23 01:01  

Хм... Отсутствие символа в Обзоре приводит к ошибке 3, а не 130. Что-то вы не договариваете. 

А проверить наличие символа в Обзоре - примерно так:

bool CheckSymbol(const string sSymbol)
{
        if(SymbolInfoInteger(sSymbol, SYMBOL_VISIBLE) == false)
        {
                if(SymbolSelect(sSymbol, true) == false)
                        return(false);
        }
        
        return(true);
}
Matvey Alekseev
506
Matvey Alekseev 2016.08.23 01:44  
Artyom Trishkin:
Для того, чтобы можно было торговать на символе, он должен находиться в обзоре рынка.
Только непонятно зачем....

Sergei Vladimirov:

Хм... Отсутствие символа в Обзоре приводит к ошибке 3, а не 130. Что-то вы не договариваете. 

А проверить наличие символа в Обзоре - примерно так:

Да нет.. 130 пишет (string)GetLastError() ... 2016.08.22 21:13:23.917 expert FDAX,M1: Order send error: 130, Symbol: XAUUSD; Lots: 0.01; Price: 1340.05; SL: 0; TP: 0

 

Vitaly Muzichenko:

Попробуйте так, раньше работало

Спасибо!

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий