нюансы расчёта вариационной маржы

около нулевая продуктивность, зато уже 3-ий день кошмарю поддержку Тинькофф своими недопониманием результатов по нефтяным фьючерсам.
ничтожно минимальна вероятность, что я правее биржи, но у меня вообще никак не сходится математика, ну и нужно ж узнать в чём проблема. вот поддержке приходится выполнять функцию учителей.

вводная

итак, мои эксперименты уже дали результат, чуть ранее получив опыт с вечными фьючерсами, узнал про такую штуку как фандинг. про это надо бы знать до использования инструмента, у меня ж вышло через жопу и я по факту, и на своих кровных, ощутил его работу.

теперь ж пришло время разобраться с клирингами и вариационной маржой.
тут уже главный герой - brj4, фьючерс на нефть с исполнением в апреле 2024.

источники данных

  • https://moex.com/ru/contract.aspx?code=BR-4.24 - можно найти исторические данные Расчётной цены за требуемую дату
  • https://www.moex.com/ru/derivatives/currency-rate.aspx?currency=USD_RUB - можно найти исторические данные по зафиксированному курсу в конкретный клиринг, а для нефтеного фьючерса он является Стоимостью пункта цены, если правильно учесть шаг и лотность, - в данном случае достаточно двинуть плавающую точку.

приступаем

дальше, открываем эксель, закидываем исторические данные, применяем нехитрую математику с умножениями и делениями одного на другое и вот те результат.
причём, чтобы оценить результаты дня, считать дневной клиринг - не нужно, так как он лишь промежуточный, и, по факту, окончательно всё решается в вечерний (основной).
поэтому, в расчётах можно учитывать расчётную цену по итогу дня и курс на момент основного клиринга.

как уже сказал, моя нехитрая математика не сошлась. её демка: расчёты вариационной маржи в excel

  • слева - фактические расчёты биржи, списания/начисления брокером.
  • справа - мои расчёты.
  • справа внизу расчёт клиринга одного дня (22 августа).

цветом выделил данные, которые должны были совпасть. и тут можно заметить, что мои расчёты по итогу дня, а также по сумме клирингов - сходятся (две зелёные ячейки в правой части). а вот с фактическими итогами - цифры отличаются.

при этом, если математика справа верна, что попытается опровергнуть поддержка Тинькофф, то случился недосчёт почти в 2 раза. я лишь надеюсь, что если мою математику смешают с говном, то хотя бы объяснят, как насчитался минус в овер 2к.
пока что я могу найти одну потенциальную ошибку - не верно обозначил Стоимость шага цены.

но вот результат в 13К выглядит реалистичнее результата в 8К, при росте актива с 87.95 до 92.5, а также росте валюты, в котором он номинирован, с 93.57 до 96.22. тут нужно учесть, что контракта 2.
сейчас меня пытаются убедить, что такой рост равен 4К за контракт, что прям на интуитивном уровне вызывает у меня сомнения.


тут прям вообще более наглядный пример есть, если посмотреть на 6 сентября, изменение цены актива случилось на 0.02 при этом бакс вырос на 0.6. биржа списала несколько монет, хотя очевидно, что валютная переоценка должна была дать плюс, по итогу должно было случиться начисление, что и получается по моим расчётам.
блин, я прям горю узнать ответ от поддержки Тинькофф. уже готов поддержке мосбиржи отписывать. а то у меня схожая дичь случилась с фьючом на серебро. актив мизерно отъехал, при этом стоимость шага цены заметнее выросла, что уже точно, как мне кажется, не должно было дать такой минус (хотя я там скорее вижу вообще плюс, начисление)

такое чувство, что биржа считает изменение просто от изменения расчётной цены, а вот чтобы оценить сколько списать в рублях, это изменение оценивает в зафиксированном в клиринг курсе.
если так, то это какой-то трэш.
т.е. актив, рассчитываемый в долларе, вообще не даёт никакого профита от роста этого доллара.
условно, цена в долларах упала на 1 пункт (т.е. на 1 доллар), при этом если в клиринг оказалось, что доллар улетел с 10 на 100, значит с меня нужно списать 100 рублей. и пофиг, что актив, в который я вложился, в рублях должен был подорожать в 10 раз, т.е. я должен получить почти 1000% рублёвую прибыль.


я задал вопрос в тг чате мосбиржи, и прикол в том, что расчёты берут вчерашние итоги по текущему курсу. и это мосбиржа называет валютной переоценкой. ахах.

  • пост мосбиржи в телеграм
  • формула:
    ВМпк = РЦпк * стоимость шага цены по курсу на 13:45 / шаг цены – РЦвк1 * стоимость шага цены по курсу на 13:45 / шаг цены
    • ВМвк1 - цена в вечерний клиринг прошлого дня;
    • РЦпк - расчётная цена текущего (промежуточного) клиринга;
    • ВМпк - вариационная маржа;

что просто выносит мозг и если представить, к каким результатам это может привести: мой поверхностный бомбёж по поводу текущей механики расчёта вариационной маржи


подводим итоги

изменение курса не влияет на тело, только на размер изменения.

к чему это может привести:

ценакурсбаза обеспечениявар. маржа
покупка10101000
клиринг9100900-100
продажа101010010
результат-90

при этом гарантийное обеспечение (часть суммы от базы) удерживается в рублях, а значит что может легко замарджинколить в одном из клирингов.

случай маржинкола на примере выше

обеспечение может ровняться 15уе.
тогда чтобы открыть контракт с базой в 100уе, достаточно на счету хранить указанное обеспечение.
если вдруг случается описанный клиринг, то со счёта списывают 100уе, при том что на счету всего 15уе.
индикатор гарантийного обеспечения бьёт тревогу, брокер принудительно закроет позицию после открытия торгов.

если эт была единственная позиция на счёте, то ещё "ок", суммарный убыток будет -90, т.е. чел потерял свои 15 и ещё останется должен 75 рублей брокеру.
если же дело происходит на счету с другими позициями, то там вообще "прекрасно", будут резаться позиции и каким зафиксируется итоговый убыток - зависит от ситуации в портфеле: -90уе и принудительно закрытые позиции.

и это в тот момент, когда контракт в уе, в которых произвелись расчёты, в разы прибавил в цене, и человек держал лонговую позицию.
ставка на рост, позиция в уе выросла, а зафиксирован убыток в уе.

для себя я не вижу смысла использовать данный инструмент, так как при покупке лота за 90 долларов, при цене бакса в 100 рублей, и продаже по 90 долларов, при цене бакса в 100 рублей, результат не нулевой ни в одной из упомянутых валют, и вообще может быть любым, как можно судить по абстрактному случаю.

в сырьевых фьючерсах, которые считаются по указанной в предыдущем сообщении формуле, решает каждый клиринг, и покупка с продажей - лишь в точки от куда ты желаешь завязаться и отвязаться от динамики сырья к доллару в рублях. очень странная обвязка.
учитывая абсолютно некотролируемые риски, которые могут накрыть.

на мой взгляд:

  • "валютная переоценка" - это когда вчерашние итоги по вчерашнему курсу, сегодняшние итоги по сегодняшнему. Разница - и есть результат с учётом переоценки.
    а имеющийся механизм (установленный мосбиржей) нельзя назвать курсовой переоценкой, так как указанная механика даёт другие результаты, которые не коррелируют с реальным движением валюты, а на прямую зависят от движение самого актива.
  • результатом сделки должна быть разница купли-продажи. либо она в долларах, либо она конвертирована в рубли, как если бы я их на них купил доллар и вложил, а по закрытию обменял обратно в рубли.
    текущей же механизм, при переносе позиции, работает аналогично покупки каждый день по цене прошлого закрытия, но по курсу сегодняшнего дня. и я это вижу как то, что до клиринга, в котором зафиксируется цена шага, невозможно определить размер позиции. а значит, и оценить гарантийное обеспечение. ну и провести какую-либо оценку связанных позиций в портфеле.

исходя из этого, я не вижу смысла в гарантийном обеспечении в рублях, так как в очередной клиринг вариационная маржа может быть сколь угодно велика.

если хотели в рублях рассчитать, то мне кажется, тут нужно как налоговая делает с долларовыми бумагами, смотрит в рублях на момент покупки и продажи. вот вам курсовая разница. если считать вчерашние итоги по вчерашнему курсу - всё становится на места.

ценакурсбаза обеспечениявар. маржа
покупка10101000
клиринг9100900800
продажа1010100-800
результат0

PS

дорогим получился урок. у меня были перекрёстные хэджевые позиции, которые, по факту просто минусовали меня. подсчитать убытки - оч долгая тема, да и страшная, не хочу знать. это минимум -35К.