Так, на чем я остановился в первой части описания настроек бота.
Настроили мы свою кривую волатильности. Еще два момента забыл отметить. Про чекбокс Auto restart и поле Comment.
Не забывайте активировать и заполнять эти поля. Поле Comment я бы на месте биржи сделал обязательным для заполнения. Еще один технический момент, Если вы взглянете на строку активации бота то в самом последнем столбце увидите непонятные буквы OID, насколько я понимаю это некий уникальная, случайным образом сгенерированная последовательность символов которая идентифицирует вашего "единственного и прекрасного" бота на сервере биржи. Если ваш "единственный и прекрасный" накосячит, а вы не поймете почему, то разбираться с техподдержкой придется ссылаясь на этот идентификатор, для того что-бы скопировать идентификатор в память достаточно правой кнопкой мыши кликнуть по строке, и в выпадающем списке обнаружится поле Copy OID to clipboard.
И самое главное, при создании бота перетащите в поле создания бота именно фьючерс, а то, если перетащите опцион бот вполне это примет и вам такого надельтахеджирует.
Повествование о настройках бота я сейчас веду в игровом терминале, собрал для этого бычий спред на путах, и давайте для него настроим свою кривую волатильности. Вернее "прямую", как настраивать кривую приближенную к биржевой по форме в окне бобр Curve я вам рассказывал в части первой статьи, в ней же упомянул тот случай, когда кривую волатильности вполне можно заменить прямой. Вот прямо сейчас давайте это и сделаем. В окне Strikes блока Volatility editor я вбил собственные значения и сохранил этот вариант.
Важно выбрать при этом правильную серию опционов, ту, которую вы собрались дельтахеджировать. Обращайте на это ваше внимание. Ну и не забывать проверять появились ли "ваша" волатильность во вкладке Positions.
Волатильность задана, двигаемся дальше. А дальше у нас блок Levels, выглядит он вот так.
Поле Current показывает вам текущую дельту вашей позиции предполагаемой к дельтахеджу ботом. Эта дельта рассчитана при цене фьючерса LAST, но можно изменить методику расчета и вычислять дельту позиции по средней цене фьючерса между бидом и аском. Для этого нужно активировать чекер Middle spread mode.
Поля Min/Max задают диапазон в рамках которого ваша дельта ботом хеджироваться не будет, если я задам диапазон Min = -6 , Max = 6 то покуда значение Current будет оставаться в этом диапазоне никакого действия по приведению дельты к нулевому значению бот выполнять не будет. Это необходимо для того что-бы бот особо не "частил", слишком частые сделки ухудшат финансовый результат дельтахеджа при хедже проданной волатильности, ну и "влет на комиссию" это тоже ничего хорошего. Какой диапазон выбирать? Обобщенного ответа на этот вопрос нет, задача слишком многофакторная, так что вам тут придется думать самим, ну или в чате спрашивать.
При нажатии чекера Hold on у вас появиться возможность заставить бота поддерживать не нулевое значение дельты, а выбранное вами. Зачем это нужно? Ну например вы видите что сейчас явный ап - тренд, зачем в этом случае вам стоять нейтрально к рынку. Примите в этом участие, выставите в окошке Level дельту например 10, и бот в процессе дельтахеджа будет эту дельту поддерживать. Вы таким образом не только защитите свою позицию в опционах но и примите финансовое участие в росте базового актива.
Теперь давайте рассмотрим следующие два окошка, Start price и Position.
Start price - это активация начала работы дельтахеджера по условию достижения ценой БА опциона того уровня на котором вы хотите запустить ДХ. В выпадающем списке Type можно выбрать условие срабатывания: не использовать, больше, меньше. Ценовой уровень активации указывается в соседнем поле. И тут де расположен очень важный чекер Cross only once. Если вы примените условие активации по цене, но оставите этот чекер пустым бот станет выравнивать дельту вашей позиции только в те моменты когда цена БА будет находиться в зоне условия (например меньше 86000), если же цена фьючерса повысится и станет больше 86000 бот остановиться и не будет осуществлять никаких действий до того момента пока цена снова не снизиться ниже 86000. При активации же чекера, цене БА будет достаточно один раз уйти за эти условные 86000 и бот начнет выравнивать дельту вне зависимости от того как цена БА будет вести себя в дальнейшем.
Position - здесь задаются два условия, первое мне не совсем понятно, я никогда им не пользовался. Предназначено оно для того что-бы останавливать стратегию после того, как будет проторговано заданное количество контрактов. Задать уровень этого максимального количества проторгованных контрактов можно в поле Max. Зачем это нужно и почему именно количество проторгованных контрактов, и что такое это - количество проторгованных контрактов мне не известно. Могу предположить только насчет зачем. Если вы неверно настроили бот или если на рынке начало твориться некое безумие и ваш бот совершает огромное количество трейдов , то вы хоть как то можете его ограничить.
Второе же поле Position Group мне более понятно. Если у вас на данной опционной серии собран зоопарк из купленных/проданных с разных сторон опционов, а вы хотите дельтахеджировать только один/несколько то вы можете присвоить этим опционам определенное наименование (латиницей, на всякий случай) и указать это наименование в поле Group, при таком раскладе бот будет работать только с дельтой поименованных и указанных вами опционов. Для того что-бы присвоить имя можно перейти во вкладку бота выбрать необходимый вам опцион, щелкнуть по нему правой кнопкой мыши и в вывалившемся списке выбрать Change position group, и после вписать нужное вам наименование группы. Присваивать/редактировать имена групп опционов можно не только в боте, но и в окре Accounts во вкладке Position, главное сами не запутайтесь.
Поле Opder - параметров которые можно задать там много, но нам понадобятся не все. В этом поле справочно выводятся значения Current price и Current shares, они показывают по какой цене и какое количество контрактов фьючерса бот выставил бы для хеджа прямо сейчас, это позволяет вам ориентироваться в задаваемых вами настройках. Очень удобно, как по мне. Давайте разбирать параметры. Type - вы этом выпадающем списке мы задаем тип и список заявки которую будет выставлять наш бот для выравнивания дельты, в выпадающем списке присутствуют следующие значения: Market, Theor, Spreаd, Last. Значение Theor отбрасывайте сами, это для дельтахеджирования опционами, туда-же идет чекер Price коридор. При выборе значения Market заявка бота будет выставлена так что бы удовлетвориться о ближайшую лимитку с нужной стороны (учитывает ли бот количество ордеров в ближайшей лимитной заявке я не знаю). При выборе значения Spread бот поставит заявку по середине бида и аска, при выборе цены Last - по цене последней сделки. При выборе лимитных заявок (Spred, Last) важно понимать что выставление заявки не гарантирует ее исполнения, и выставленная заявка может не только не исполниться но и "подвиснуть". А выставленная и не исполненная заявка в подсчете ботом дельты не учитывается. Для ограничения неприятностей которые могут быть доставлены таким вот "высеванием" заявок существует возможность задания параметров Indent и Timeout.
Indent задает смещение цены хеджирующего ордера в шагах цены (шаг цены смотрите в спецификациях фьючерсных контрактов в документации биржи). Ориентируется ли бот самостоятельно в направлении этого самого индента (+/-) в зависимости от предполагаемого направления сделки я не знаю, не проверял, но по логике вроде должен.
До того момента как на бирже АЕ комиссия была едина и для и для тейкеров и для мейкеров была одинаковой индент справлялся со своими задачами хорошо, а вот когда комиссию разделили и уменьшили ее для мейкеров (тех которые "ходят" лимитными заявками) "бить по маркету" стало не очень выгодно (вернее "ходить" лимитками стало выгоднее). А что бы при этом неисполненные заявки не оставались и не несли вашему счету финансовые неожиданности есть параметр Timeout. Задавая Timeout (в секундах) вы даете боту следующее задание - если ордер не исполнился в течении заданного времени, сними его. Бот снимает ордер по истечении заданного времени, далее логика бота заново выставляет заявку (конечное если цена БА актива за это время не убежала совсем уж далеко и дельта выровнялась этим движением цены то тогда боту новую заявку выставлять смысла не будет). Из моего опыта 5 сек. тот вариант который меня устраивает.
Поля Basket и Max.basket это для тех параноиков которые считают что маркетмейкер биржи из корыстных интересов будет "объезжать" их заявки на 10 - 100 контрактов. Так что на первое время, пока на 5 - 10 битков не начнете заходить, ими не пользуйтесь, тем более что использование этих полей достаточно затейливо соотносится с параметрами бота из окошка Levels, в общем - не трогайте.
Поле Option/Equty ratio это для американского рынка где между количеством опционов и количеством акций существует соотношение. Ну вот пожалуй и все.
Не помню, упоминал я об этом в начале статьи, бот Delta Hedger десктоп терминала биржи закрывает задачу дельтахеджирования и купленной и проданной волатильности. Чем бот занят, определяется той группой опционов которые вы ему указали для дельтахеджа - указали купленные опционы, будет дельтахеджировать купленную волатильность, указали проданный - проданную.
В третей части данной статьи я рассмотрю работу ботов дельтахеджеров в веб терминале биржи их там двое.