Не до конца понимаю, какую логику вы предлагаете. Вы хотите смещать всю кривую на spc * fill_quantity того контракта, в котором произошла сделка? Но ведь тогда если сделка будет в центре, она сильно повлияет на края.
Вы значения спредов задаёте в пунктах цены или в процентах волатильности?
Задаю в волатильностях естественно, если улбыбка строится по волатильностям, то и спред так же должен быть в волатильностях. В пунктах почти не использую, очень давно не использовал.
По предлагаемой логике, улыбка будет ровно смещатся только вверх и вниз, и это ни как не повлияет на форму улыбки и края вместе с ней. Т.к. улыбка будет подниматься и опускаться одинаково, только по параметрам страйка в которм идут сделки.
По предлагаемой логике, если задавать одинаковый спред на всех страйках, хоть в пунктах хоть в волатильностях , то все будет работать так же как и сейчас, а вот если задавать разный спред на разных страйках в волатильностях, то улыбка перестанет ломаться и будет ровно перемещаться верх и вниз.
Пример на текущем марте РИ сейчас:
Хочу продать 135000 колл "-2000" лот, и купить колл 120000 равнозначность по веге и гамме будет "+200" лот. Мидмаркет рынка 20v. Продажу и покупу ставлю со спредом в 1 %, 21% и 19%.
Как мне нужно задать спреды в волатильности, что бы весь объем и того и другого растянуть на 2%? Для 130колла cпред будет 0,001v (2/2000), а для 120 колла 0,01v (2/200).
По текущей логике, когда пойдет продажа 130-ого, то уже через 220 проданных лот из необходимых 2000, бид 120 колла сравняется по волатильности с аском 130-ого, каждый будет по 21,2, а дальше вообще начнется хаос сделок в обоих страйках. И все потому, что при продаже 1-ого 130-ого лота аск его смещается вверх на 0,001v, а бид 120-ого на свои 0,01v.
В пунктах тоже ни чего хорошего не получиться, если перевести % в пункты на 2000 лот, то получится шаг спреда 0,02п. для 135 и 1,35п. для 120., потому то в центре вега линейна от % волатильности, а на краях экспоненциальна с нарастающей крутизной при удалении. 120 колл по 19% - 1890п , по 21% - 2160п , 135 колл по 21% - 45п, по 23% - 80п. Т.е. бид с аском встретяться примерно так же через проданных 220 лот 135 страйка.
Невозможно маркетмейтить спреды в разных страйках при текущей логике.
Для этого алгоритм должен быть такой, что бы «Shift all contracts» изменял спред для всего маркет-мейкера по значению «Shift per contract» того страйка в котором прошла сделка.
Но в вашем примере получается, что при сделке в 120м он сместится на свои 0.01v, и 130-й тоже сместится на 0.01v вместо 0.001v, то есть в 10 раз быстрее, чем должен.
да , так и нужно, ведь 1 лот 120-ого, соответсвует 10 лотам 130-ого. По гамме и веге соответсвуют 1 к 10. Именно из этого расчета я и задаю параметры «Shift per contract» 1/10 (0,01v/0.001v).
Если задавть этот параметр одинковым для всех страйков , то различий работы в логиках не будет, ни в пунктах, ни в % волы, именно так мне сейчас и приходится работать торгуя дальние страйки полуавтоматом небольшими объемами, по 0,1 от того что хочу.
А правельнее просто учитывать соотношения количества лот к гамме и веге, как основных параметров риска и тогда нужно параметр «Shift per contract» задавть разным, но текущая логика уже так не работатет.
Александр Зайков
«Shift all contracts», с работает вверх ногами, по моему.
Сейчас алгоритм такой, что все страйки маркет-мейкера смещаются на собственный заданный «Shift percontracts» помноженный на количество контрактов во всех сделках всех страйков маркет-мейкера.
При таком алгоритме получается, что если «Shift per contract» задать разный для разных страйков маркет-мейкера, а разный «Shift per contract» необходим особенно для дальних и центральных страйков, то в работе улыбка становится кривой, какие то страйки резко задираются вверх или вниз, другие почти неизменны, в общем хаос и куча нежелательных сделок не по тем ценам. Избежать таких эффектов возможно только, если «Shift per contract» одинаков для всех страйков, а это не приемлемо.
Очень хотелось бы что бы алгоритм «Shift all contracts» работал таким образом, что бы улыбка не кривилась, а оставалась как есть даже при разных значениях в разных страйках, изменяя только свою высоту, равномерно вверх и вниз целиком.
Для этого алгоритм должен быть такой, что бы «Shift all contracts» изменял спред для всего маркет-мейкера по значению «Shift per contract» того страйка в котором прошла сделка.
Возможно ли это изменить в ближайшее время?