В прошлых 2-х темах мы затронули проблемы, связанные с нерыночными рисками… Например, — разрывы связи, вылеты сервера, перезагрузка операционки, а также внезапные остановки торгов по неизвестным причинам. Желающие могут ознакомится с выводами в соответствующих темах, которые легко найти по тэгу «торговые роботы». Причем некоторые коллеги были настолько любезны, что смогли обобщить обсуждения и сформулировать изящные резюме.
Ныне я предлагаю обсудить решение, связанное с приостановкой торгов по одному или нескольким инструментам.
Вечером 30 августа 2022 года Газпром объявил о новой рекордной выплате дивидендов. В результате, утром 31 августа, на торгах акциями Газпрома было минимум 10 приостановок торгов. Сначала был гэп на открытии, затем неоднократные приостановки торгов.
Что делать в таких случаях?
Если у нас случилась приостановка торгов на время, то как это понять на уровне алгоритма?
Вероятно, можно ввести простое условие об отсутствии тиков по каким-либо инструментам одновременно, которое будет означать приостановку торгов. И, наоборот, наличие тиков по каким-нибудь другим инструментам из этой же или из другой секции мосбиржи. Тогда, для этого, нужно задавать несколько дополнительных и несвязанных инструментов, по наличию тиков на которых мы будем делать вывод о том, что «это просто приостановка торгов по заданным инструментам». Тогда, если найдется хотя бы один такой проверочный инструмент, по которому продолжают поступать тики, то мы, таким образом, поймем, что у нас есть ситуация простой «приостановки торгов», а не чего-то худшего.
Вместо этого можно было бы сделать систему анализа сообщений, поступающих с биржи или от брокера, но это, вероятно, было бы намного сложнее в реализации.
Мнения? Критика? Предложения?