1. Не согласен. По умолчанию там как раз стоит TRUE (возможность менять объём позиции это одна из новых фишек второй версии).
Предложение 1 "Max Risk не должен нарушаться"
Сорри, но если Вы хотите сломать робота -- вы его сломаете. В Вашей ситуации MaxRisk=100 && Qty=100 && EntryLevel=-20 пожалуйста откройте Orders Manager и купите себе 100 лотов по рынку (ну, или лимиткой внутри спреда).
Поясню: для общности, блок-котировщик ничего не знает про Вашу метрику риска. Поэтому он по сути не знает, как изменится риск, если он купит квант котирования.
У меня есть мысли на этот счет, но пока так.
На самом деле, как правило, сценарий использования выглядит по-другому: мы покупаем 1000 лотов квантами по 50-100 штук. С этой точки зрения даже если мы случайно купим 1030 лотов -- это вообще не проблема.
Предложение 2 "Уентральный страйк изменился, а позиция так и осталась"
Всё верно. Мы не планировали перетаскивать позицию вслед за рынком. Это непрактично и очень дорого. Ключевым в поведении скрипта является вопрос: "максимальный риск уже набран, или ещё нет?".
Если нет, он продолжает котировать НОВЫЙ центральный страйк.
Здесь я прошу Вас сразу перестроить своё мышление на новый уровень: опционная позиция -- это не "
5 колов на страйке 70". Опционная позиция -- это сразу совокупность всех опционов (и фьючерсов) в данной серии. В перспективе -- во всех сериях сразу.
Что касается вопроса "
как определить есть уже позиция или нет?". Отвечаю: если текущий риск равен 0 -- позиции нет. Если он достиг величины
MaxRisk -- позиция полностью сформирована. Промежуточные значения соответствуют состоянию "позиция в процессе формирования".
ПС В перспективе каждый трейд будет отмечен на графике маркером по аналогии с Квиком независимо от того был он агрегирован он или нет, но сейчас эта фича ещё в разработке.