ошибка "request failed [Off quotes]"

 
Добрый день. Работаю с экзотами. Иногда одна валюта начинает котироваться позже других. Когда советник получает сигнал на вход в рынок, бывает, что по какой-то валюте нет котировки. И я получаю такую ошибку.
2007.01.15 02:37:49 '700291': request failed [Off quotes]
И мой мультивалютный советник попадает в ситуацию, когда не хвататет открытого ордера по одной из пар, по которой получилась ошибка. Вся логика сбивается и результат не предсказуем.

Вопрос - как программно до открытия ордеров можно выяснить - по всем ли нужным парам есть котировки?
 

Я бы попробовал цикличный проход по всем используемым советником символам, чтобы принудительно запросить котировки:

double x=MarketInfo(y, MODE_ASK);
double x=MarketInfo(y, MODE_BID);
 
KimIV:

Я бы попробовал цикличный проход по всем используемым советником символам, чтобы принудительно запросить котировки:

double x=MarketInfo(y, MODE_ASK);
double x=MarketInfo(y, MODE_BID);

Игорь спасибо за ответ, но скорее всего я получу последнюю зафиксированную котировку.
 
KimIV:

Я бы попробовал цикличный проход по всем используемым советником символам, чтобы принудительно запросить котировки:

Это не поможет - запрос на сервер не пойдет.
 
Так что-же делать? Может введете функцию типа IfQuotesOff()??
 
maloma:
Так что-же делать? Может введете функцию типа IfQuotesOff()??
К сожалению, функцию вводить не будем.

Это определяется только после торгового запроса и выдается точный ответ.
Off quotes можно и на быстром рынке получить и при слишком частых запросах, от времени не всегда зависит.
 
maloma:
Добрый день. Работаю с экзотами. Иногда одна валюта начинает котироваться позже других. Когда советник получает сигнал на вход в рынок, бывает, что по какой-то валюте нет котировки. И я получаю такую ошибку.
2007.01.15 02:37:49 '700291': request failed [Off quotes]
И мой мультивалютный советник попадает в ситуацию, когда не хвататет открытого ордера по одной из пар, по которой получилась ошибка. Вся логика сбивается и результат не предсказуем.

Вопрос - как программно до открытия ордеров можно выяснить - по всем ли нужным парам есть котировки?


Попробуйте проверить по времени открытия бара на различных инструментах...

Второй вариант, правда не уверен, что сработает, функция

MarketInfo( string symbol, int type)

MarketInfo(Symbol(), MODE_TRADEALLOWED);

Причина обращения: