Начать новую тему

Shift all contracts

«Shift all contracts», с работает вверх ногами, по моему.

Сейчас алгоритм такой, что  все  страйки маркет-мейкера смещаются на  собственный заданный «Shift percontracts» помноженный на количество контрактов  во всех сделках  всех страйков маркет-мейкера.

При таком алгоритме получается, что если «Shift per contract» задать разный для разных страйков маркет-мейкера, а разный «Shift per contract»   необходим особенно для дальних и центральных страйков,  то в работе улыбка становится кривой, какие то страйки резко задираются вверх или вниз, другие почти неизменны,  в общем хаос и куча нежелательных сделок не по тем ценам. Избежать таких эффектов возможно только, если  «Shift per contract» одинаков для всех страйков, а это не приемлемо.

Очень хотелось бы что бы алгоритм «Shift all contracts» работал таким образом, что бы улыбка не кривилась, а оставалась как есть даже при разных значениях в разных страйках, изменяя только свою высоту,  равномерно вверх и вниз целиком.  

Для этого алгоритм должен  быть такой, что бы «Shift all contracts» изменял спред   для всего маркет-мейкера  по значению «Shift per contract» того страйка в котором прошла сделка.

 

Возможно ли это изменить в ближайшее время?

Не до конца понимаю, какую логику вы предлагаете. Вы хотите смещать всю кривую на 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» задавть разным, но  текущая логика уже так  не работатет.  

Войти или Зарегистрироватьсячтобы опубликовать комментарий