probapera писал(а) >>
Вот что советуют разработчики:
ERR_TRADE_TIMEOUT | 128 | Истек срок ожидания совершения сделки. Прежде, чем производить повторную попытку (не менее, чем через 1 минуту), необходимо убедиться, что торговая операция действительно не прошла (новая позиция не была открыта, либо существующий ордер не был изменён или удалён, либо существующая позиция не была закрыта) |
Talex >>:
Вот что советуют разработчики:
Лично я, перед OrderSend запоминаю текущее время и если получена такая ошибка, то через необходимый промежуток смотрю нет ли ордера со временем открытия больше запомненого, вот как-то так.
Вот что советуют разработчики:
ERR_TRADE_TIMEOUT | 128 | Истек срок ожидания совершения сделки. Прежде, чем производить повторную попытку (не менее, чем через 1 минуту), необходимо убедиться, что торговая операция действительно не прошла (новая позиция не была открыта, либо существующий ордер не был изменён или удалён, либо существующая позиция не была закрыта) |
А необходимый - это какой? 1 мин?
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вопрос наверное к разработчикам.
Вот написано
Это отвечает сервер, или просто таймер в MT досчитывает до какого-то значения?
И если в этот момент (пока MT ждет результатов) оборвалась связь, что будет - 6 или 128.
Как правильно обрабатывать такую ошибку.
Конткретно попробовал 2 варианта (при открытии ордера)
1. Зацикливать OrderSend, пока не откроется - было 2 или 3 случая, что открывалось сразу несколько ордеров
2 Раз вызвать OrderSend и поверить, что все хорошо - бывает, что не открывается.
А как правильно?
Это не так часто встречается, так что отладить по ошметкам информации в логах сложновато
HELP!!!