Блог им. jamebonds
Что-то никто не написал вчерашнем сбое.
Тогда напишу я, чтобы в истории осталось. Это будет история без финансовых потерь и без громких обвинений, но, надеюсь, не скучная.
Речь пойдет о терминалах и серверах Metatrader у брокера «Открытие».
Если кратко, то почти сразу после начала утренней сессии на срочном рынке, около 7:02 сервера перестали корректно работать и вскоре были выключены. Некорректность работы заключалась в том, что часть заявок, отправленных с пользовательского терминала «зависли». С такими заявками невозможно было ничего сделать, ни снять, ни переставить.
Не очень приятно иметь на рынке заявки (кроме стопов) в момент, когда вы не можете ничем управлять. К счастью (счастье, как известно, приходит к подготовленным), терминал Quik работал корректно. Быстро запускаем Quik и отменяем все лишние заявки: Ctrl-D, Enter, Ctrl-D, Enter, …, фух, все.
Остается только ждать, когда починят неисправность на сервере.
Сервера долго не работали, ненадолго включались и тут же выключались. Окончательно включились около 7:50. Однако, даже после того как они включились все те же «зависшие» заявки, которые были уже сняты через Quik по-прежнему отображались в терминалах и ничего с ними сделать было нельзя. Для моих роботов это большая проблема, потому что такую заявку они принимают за корректную, принимаются ее переставлять или снимать. С «зависшими» заявками роботы получали ошибки, а через определенное количество ошибок мои роботы принимают «абсолютно оправданное) решение о том, что «что-то пошло не так». От этого они перестают что-либо делать, периодически сигнализируя «Хьюстон, кажется, у нас проблема».
Причем, торговая система у меня построена так, что достаточно одного робота в таком состоянии, чтобы отключились и все остальные роботы. Как итог-пока в терминалах показываются такие заявки у меня ничего не работает. Даже там, где никаких зависших заявок нет.
Написал в техподдержку и стал дожидаться каких-либо изменений.
Незаметно прошло время до 10:00. От скуки проверил, что новые заявки ставятся-снимаются корректно как через Quik, так и через Metatrader. Все было бы прекрасно, если бы не эти заявки, которые никак не хотели уходить.
На смартлабе никто не писал обычные в таких случаях посты. Значит, проблемы была только у небольшой части клиентов. Все яснее была мысль, что техподдержка не смогла исправить проблему не перезапуская сервер. А сервер не хотят перезапускать, из-за нескольких клиентов, тогда как у остальных клиентов все прекрасно работает.
Скорее всего, проблему будут решать в большой вечерний перерыв или после 23:50. Это означало, что сегодняшний день придется пропустить, а это было бы неприятно, учитывая, какая сейчас волатильность. Уже почти совсем смирившись с этим, я начал заниматься другими делами, и тут мне пришла в голову новая мысль.
Быстро открыв исходные коды от роботов, я нашел место, где происходит работа с заявками. Тяп-ляп и прямо в цикл перебора заявок вписаны номера заявок, которые нужно игнорировать.
Компилируем-заливаем в рабочую папку-запуск… «Хьюстон…» не поступает. Роботы ставят и переставляют заявки. Мы спасены.
Так все и работало до самого клиринга. Зависшие заявки молча исчезли во время вечернего клиринга.
Вечером, уже около 21:00 пришел ответ от техподдержки, обычная дежурная отписка:
Добрый день!
К сожалению, на момент обращения наблюдался массовый сбой в рамках терминала MT5.
К настоящему времени проблема устранена. Приносим извинения за неудобства.
Какие выводы можно по этому поводу сделать?
1) Можно держать под контролем рыночный риск, но риск технический контролировать полностью невозможно, часть его лежит на брокере и на других контрагентах.
2) Финансовых потерь удалось избежать благодаря готовности к такой ситуации. Помогло и автоматическое отключение роботов в непонятной ситуации и передача роботами «У нас проблема», и наличие второго терминала и то, что я был у компьютера в нужный момент.
3) Проверено на «собственной шкуре» не раз: запасные способы управления позициями на счете всегда должны быть под рукой, включая: запасной терминал, терминалы на смартфоне, приложение брокера, телефон для выставления заявок «с голоса». Бесперебойник и запасной интернет для компьютера, повербанк и вторая симка другого оператора для смартфона.
4) Хорошо, когда в программе нет костылей, но, в некоторых ситуациях костыль — это лучшее, что можно сделать.
P.S. Добавлю, что это самый значительного сбой, который я наблюдал у «Открытия» за последние несколько лет почти круглосуточного использования Metatrader.
в айти 2 основных сервера
и 2 резервных
и еще сервер под квик
кстати в айти за 5000 руб в месяц фикс...
Но, как иногда бывает, прилегли сразу все.
Вчера, очевидно из-за какой-то ошибки/недоработки в ПО ошибка/сбой появились на всех серверах одновременно.
Резерв понятно перекрывает первый случай, но не помогает при втором. Тут нужен резерв другого уровня, например другой терминал.
Сочувствую!
По моему мнению, надо максимально действовать, так, чтобы потом не приходилось защищать свои права. Перспективы суда с брокером в России весьма туманные. У абсолютно всех российских брокеров в договоре прописано, что брокер за неработоспособность технических средств ответственности не несет.
Всякое для контроля рисков тоже мастхэв, сразу видно человек берет на себя ответственность за свои результаты.
Ну а влезть руками — бесценно)).