Контракт GammaSwap

Знакомство

В этой статье я расскажу о контракте GammaSwap, его формуле P/L и других характеристиках контракта, которые пригодятся спекулянтам и хеджерам. GammaSwap — это первая децентрализованная платформа для торговли волатильностью, не требующая оракулов, способная работать с любой парой токенов. То есть нет посредников в содействии сделке. Издержки определяются рыночными силами в соответствии с параметрами, заложенными в модели структуры комиссионных. Все функции и формулы получены из исследований, опубликованных в предыдущих статьях на Medium.

Формула значения GammaSwap

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

Например, для длинной позиции с волатильностью в пуле WETH/USDC из 1 токена LP, предполагая цену 1 500 USDC за WETH, длинная позиция с волатильностью выглядит следующим образом

Поскольку формула непостоянных потерь измеряется как разница между портфелем токенов с постоянным владением и портфелем LP, а позиция открывается через кредит токенов LP, его доходность будет противоположна формуле непостоянных убытков с кредитным плечом. В математическом выражении это позиция, которую занимает покупатель волатильности в GammaSwap (если измерять его стоимость в токене y)

С этого момента мы будем называть x количеством WETH, а y — количеством USDC.

Комбинация этих двух позиций составляет стоимость портфеля трейдера, держащего позицию.

Так как короткая позиция приобретается в качестве займа LP-токенов, то со временем стоимость позиции меняется из-за начисления процентов.

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

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

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

В приведенном выше определении k — это отношение между будущей ценой p и текущей ценой p_0, которая также является ценой, по которой была открыта позиция (цена, по которой была взята ликвидность). Если мы рассматриваем начальную цену как некое событие, произошедшее в прошлом, и используем текущую цену, а не будущую, то мы можем определить p_0 (начальный коэффициент обеспечения CFMM) как цену исполнения позиции GammaSwap. Тогда наша окончательная формула для стоимости позиции GammaSwap выглядит следующим образом:

Формула P/L GammaSwap

Теперь, чтобы рассчитать P/L, нам нужно знать стоимость портфеля на момент открытия позиции. То есть, мы хотим знать стоимость портфеля при t = 0, то есть в то время, когда проценты еще не начислялись. Эта величина также является величиной залогового буфера, который поглощает убытки от начисления процентов и изменения цен.

Буфер залога — это колонка «Депозит» на торговой странице app.gammaswap.com при открытии позиции.

В этом примере внесение 100 USDC привело к получению 99,063 залогового буфера (Deposit colum) для кредита вместо 100 USDC

Если бы сделка по ребалансировке обеспечения при открытии позиции не оказывала влияния на рынок или не взимала торговых комиссий, ее значение было бы идентично значению, введенному в поле ввода «Добавить начальный депозит» торгового инструмента на торговой странице app.gammaswap.com.

В этом примере внесение 100 USDC привело к получению буфера залога в размере 99,063 (столбец Депозит) для займа вместо 100 USDC

Имея значение позиции t=0 (величина залогового буфера), мы теперь можем рассчитать P/L как изменение стоимости портфеля с момента его открытия до текущего времени. Это зависит от динамики цены и накопления процентов по кредиту. Таким образом, формула для P/L выглядит следующим образом

С помощью некоторой алгебры формулу можно упростить в виде

Коэффициент залога, он же цена исполнения

Поскольку цена исполнения — это просто соотношение резервных токенов в CFMM на момент заимствования ликвидности, а заемщик ликвидности в GammaSwap имеет контроль над резервными токенами, обеспечивающими долг ликвидности, он может ребалансировать резервные токены для достижения другой цены исполнения. Модификация коэффициента обеспечения – это то, что позволяет заемщику ликвидности изменить профиль доходности своей позиции.

На торговой странице app.gammaswap.com вкладки «Лонг» и «Шорт» торгового инструмента устанавливают страйк-цену равной 2/3 и 3/2 от текущей цены CFMM при открытии длинной или короткой позиции соответственно. Стрэддл-позиции приводят к цене исполнения, эквивалентной текущей цене CFMM.

Например, если цена CFMM для WETH/USDC в настоящее время составляет 1 580. Вкладка «Long» установит цену исполнения на уровне 1 053,33, вкладка «Short» — на 2 370, а вкладка «Straddle» — на 1 580.

Однако контракт может установить любую цену исполнения, которую пожелает пользователь, при условии, что он вносит достаточное буферное обеспечение для достижения желаемого коэффициента LTV. Эта функция будет доступна в app.gammaswap.com в ближайшие недели.

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

Таким образом, чем дальше вы устанавливаете страйк-цену от текущей цены CFMM, тем меньше время экспирации/ликвидации позиции, которое мы рассмотрим в следующем разделе.

Время до истечения срока действия/ликвидации

Поскольку GammaSwap требует избыточного обеспечения заемной ликвидности, стоимость L_hat (инвариант ликвидности залоговых токенов) всегда должна быть больше, чем L_o на определенную маржу, чтобы предотвратить ликвидацию. Эти два значения составляют значение LTV, наблюдаемое в app.gammaswap.com, когда у пользователя есть открытая позиция.

По мере начисления процентов по L_o коэффициент LTV увеличивается, что приводит к паритету инвариантного по ликвидности долга с инвариантным обеспечением ликвидности, и в этот момент залога достаточно только для погашения инвариантного долга ликвидности. Этот сценарий можно рассматривать как время экспирации позиции. Поэтому, если мы приведем LTV к константе и перестроим приведенную выше формулу в виде

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

Увеличение большего залога (более низкий LTV) увеличивает время до экспирации вашей позиции, придавая вашей позиции большую временную ценность, но также влияет на вашу формулу P/L, которая связана с изменением дельты вашей позиции, тему, которую мы затронем в следующем разделе.

Хотя это app.gammaswap.com пока невозможно, заемщик ликвидности всегда может продлить срок действия существующего кредита ликвидности, внеся больше залоговых токенов в том же или в другом соотношении, чем текущие залоговые токены, которыми он владеет. Конечно, если он предоставляет залоговые токены в соотношении, отличном от того, в котором в настоящее время находится его кредит, это изменит коэффициент обеспечения кредита. Если он хочет сохранить то же соотношение, контракт GammaSwap ребалансирует депонированное обеспечение, чтобы получить желаемое соотношение. Это, однако, снизит стоимость депонированных залоговых токенов из-за влияния на рынок и торговых комиссий, связанных с CFMM.

Дельта

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

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

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

Взяв его первый производный по отношению к цене, мы получим

Из формулы можно заметить следующее

  • Более высокая страйк-цена => более низкая дельта => прибыль от снижения цены
  • Более низкая цена исполнения => более высокая дельта = > прибыль от роста цены
  • Цена вверх = > дельта вверх => больше прибыли от роста цены
  • Цена вниз = > дельта вниз => больше прибыли от снижения цены
Дельта увеличивается по мере роста цены. Приведенный выше пример был построен с длинной позицией по волатильности GammaSwap со страйк-ценой $1,250, когда рыночная цена была на уровне $1,580. Депоист составил $1 580, а LTV был установлен на уровне 99,14%. Предполагалось наличие достаточной ликвидности в CFMM.

Свойства дельты определяют нелинейную доходность длинной позиции с волатильностью GammaSwap.

Дельта, увеличивающаяся по мере роста цены, заставляет P/L расти экспоненциально по мере роста цены. Приведенный выше пример был построен с длинной позицией по волатильности GammaSwap со страйк-ценой $1,250, когда рыночная цена была на уровне $1,580. Депоист составил $1 580, а LTV был установлен на уровне 99,14%. Предполагалось наличие достаточной ликвидности в CFMM.

Заемщик ликвидности не имеет контроля над будущей ценой CFMM, процентной ставкой и комиссией за выдачу кредита, но при t=0 некоторые переменные, предлагаемые ему рынком (процентная ставка и цена CFMM), не влияют на его дельту. Тем не менее, комиссия за выдачу кредита и цена буферного обеспечения влияют на размер позиции, которую он может открыть, но, как правило, незначительно. Выбором, который окажет наибольшее влияние на его дельту, будет коэффициент обеспечения (цена исполнения). Которые он всегда может отрегулировать в любой момент.

Кредитное плечо и хеджирование с Delta

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

Например, предположим, что цена WETH/USDC в настоящее время составляет 1 580 USDC в CFMM. Учитывая рыночные условия в WETH / USDC CFMM с начальным депозитом 104,92 USDC мы можем получить позицию GammaSwap стоимостью 100 USDC с ценой исполнения 1 053,33 USDC. Инвариант обеспечения этой позиции равен 31, а ликвидность, заемная для достижения позиции (включая комиссию за выдачу в размере 0,1%), составляет 30,377. У нас LTV 98%. При процентной ставке 10% и максимальном LTV 99,5% на платформе потребуется 55 дней, чтобы наша позиция достигла ликвидации/истечения срока действия.

Используя приведенную выше формулу, мы получаем дельту при текущей цене 0,19. Это означает, что на каждый 1 USDC изменение цены WETH/USDC наша позиция в 100 USDC будет увеличиваться на 19 центов. Это означает, что на каждые 6 базисных пунктов роста WETH/USDC наша позиция будет расти на 19,08 базисных пункта. Это в 3 раза больше по сравнению с удержанием спотового WETH без какого-либо риска ликвидации из-за колебания цены, при этом имея возможность держать позицию открытой в течение почти 2 месяцев.

Кредитное плечо этой позиции можно рассчитать, умножив дельту на спотовую цену CFMM и разделив ее на стоимость позиции (формула для значения позиции GammaSwap)

Это означает, что мы можем использовать депозит в размере около 100 USDC в GammaSwap для хеджирования портфеля в 300 USDC в течение 55 дней без какого-либо риска ликвидации из-за изменения цены. Или, если вы спекулянт, более чем в три раза увеличить доходность небольших изменений цены на WETH, если он вырастет в цене в течение этих 55 дней, без какого-либо риска ликвидации, как в случае с бессрочными фьючерсами. Через 55 дней, если цена не изменится, большая часть вашего депозита в 100 USDC будет съедена процентами за удержание этой позиции, и поэтому ваша позиция будет закрыта ликвидатором.

В настоящее время платформа GammaSwap может открывать позиции с LTV до 99,49%. Конечно, при таких темпах ваша позиция истечет очень быстро. Тем не менее, та же позиция, описанная выше, но с LTV 99,14%, сможет воспроизвести воздействие WETH в 4 раза больше за 13 дней до истечения срока действия.

Ставка по займу

Ставка заимствования для предоставления ликвидности зависит от коэффициента использования пула по следующей формуле

По мере увеличения коэффициента использования процентная ставка увеличивается до максимальной ставки 250%. Выплачиваемые проценты начисляются провайдерам ликвидности GammaPool с каждой транзакцией на блок. Протоколу выплачивается небольшой процент, в настоящее время установленный в размере 10% от начисленных процентов. Эта разница гарантирует, что по мере увеличения коэффициента использования и скачка процентных ставок спред между тем, что заемно поставщикам ликвидности, и тем, что взимается с заемщиков, увеличивается.

Предполагая, что доходность комиссии CFMM составляет 6%, α — 5%, а r_base — 5%

Динамические комиссии за оригинацию

Комиссия за выдачу кредита — это сборы, уплачиваемые в начале кредита. Это авансовый платеж, который оплачивается только один раз, когда вы берете ликвидность в долг. Они взимаются в виде небольшого процента от заемной ликвидности позиции. Таким образом, он взимается в единицах, инвариантных по ликвидности, и добавляется как часть ликвидности, взятой в начале кредита. Таким образом, формула P/L с учетом комиссий за оригинацию выглядит следующим образом

Комиссия за оригинацию в GammaSwap является динамической и также зависит от коэффициента использования пула. Это означает, что по мере того, как коэффициент использования пула снижается из-за увеличения спроса на волатильность лонгинга, комиссия за оригинацию также увеличивается в соответствии со следующими формулами

В настоящее время параметры настроены таким образом, что комиссия за выдачу начинается с 10 базисных пунктов и остается на уровне 10 базисных пунктов до тех пор, пока коэффициент использования не достигнет 76%. В этот момент он начинает расти линейно с увеличением коэффициента использования на 1 базисный пункт на 1% пункта, пока не достигнет 91%. В этот момент он начинает расти экспоненциально, пока не достигнет максимума в 100%, когда коэффициент использования пула составляет 99% или выше. Это означает, что с вас будет взиматься 100% заемной ликвидности в качестве комиссии за оригинацию. Цель такой высокой комиссии состоит в том, чтобы воспрепятствовать заимствованию ликвидности при очень высоких ставках использования.

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

Например, если ставка по займу составляет 28,32%, а заемщик ликвидности закрывает свою позицию в первый день, заплатив комиссию за выдачу кредита в размере 20 базисных пунктов, это подразумевает общую годовую стоимость комиссий в размере 119,6%. Если он удерживает его в течение второго дня, это влечет за собой комиссию в размере почти половины его размера в 73,94%. Три дня 58,73% и т.д. Таким образом, активные трейдеры (спекулянты) платят премию за использование платформы, в то время как менее активные трейдеры (хеджеры) получают выгоду от более низких долгосрочных затрат, не подвергаясь серьезному влиянию краткосрочного поведения спекулянтов.

Закрытие позиции через 1 день равносильно уплате комиссии в размере 120% годовых. Однако через две недели стоимость удержания той же позиции начинает выравниваться вблизи годовых 28,35%

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

Комиссия за выдачу кредита также может быть настроена таким образом, чтобы она всегда возвращала 0, и в этом случае комиссия за выдачу не будет взиматься, а формула P/L будет такой же, как и указанная ранее, без комиссии за оригинацию.

Защита коэффициента использования

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

Величина α с целью обновления EMA определяется следующим образом

Согласно приведенным выше формулам, EMA коэффициента использования, если не будет обновлений контракта пула GammaSwap, будет соответствовать текущему коэффициенту использования после 100 блоков сети Ethereum. Если в контракте пула GammaSwap происходят транзакции, EMA коэффициента использования будет соответствовать текущему коэффициенту использования быстрее, чем 100 блоков.

Торговые комиссии CFMM

Торговые комиссии CFMM начисляются провайдерам ликвидности в GammaSwap и, следовательно, также взимаются с заемщиков ликвидности. Тем не менее, существование торговых комиссий также влияет на влияние ребалансировки обеспечения кредита для достижения желаемого коэффициента обеспечения (цены исполнения). Таким образом, торговые комиссии CFMM снижают конечную L_hat в формуле P/L.

Ребалансировка влияния на рынок залогового обеспечения

Ребалансировка коэффициента обеспечения (выбор цены исполнения от текущей цены) также влияет на инвариант ликвидности окончательного обеспечения из-за влияния сделки на рынок. Более низкие уровни ликвидности в пуле CFMM означают, что сделка повлечет за собой более высокое проскальзывание и, следовательно, приведет к снижению скорости транзакции для достижения желаемого коэффициента обеспечения (цены исполнения), тем самым снижая L_hat (инвариантность обеспечения) в формуле P/L и приводя к меньшей стоимости начальной позиции, чем внесенные суммы. Расчет, необходимый для выяснения того, какое влияние на рынок окажет ваша сделка для установления определенного коэффициента обеспечения (также известного как цена исполнения), требует решения квадратичной формулы, чтобы определить, сколько нужно ребалансировать (решить для Δx), чтобы получить желаемый коэффициент обеспечения с учетом текущего уровня ликвидности и торговых комиссий в CFMM и ваших текущих сумм обеспечения.

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

Калькулятор GammaSwap

Эта таблица в репозитории GammaSwap на github может быть использована для расчета стоимости открытия позиции в GammaSwap с разными страйк-ценами. Стоимость указана, а также дельта и время до истечения срока действия с учетом различных рыночных условий, которые определяются в качестве входных данных в электронной таблице. Входные данные выделены оранжевым цветом.

  • Депозит (USDC Buffer) — относится к столбцу «Депозит», когда у вас открыта позиция в app.gammaSwap.com. В этой таблице вы указываете, какую сумму вы хотите иметь в качестве залогового буфера для вашей позиции. Это поле относится к «Формуле залогового буфера», приведенной выше.
  • LTV — это отношение кредита к стоимости задолженности ликвидности к обеспечению ликвидности позиции. Чем выше LTV, тем ближе он будет к ликвидации, следовательно, тем меньше «Time to Liquidation (Days)»
  • Страйк-цена (колл. соотношение) — относится к коэффициенту залога (также известному как страйк-цена) позиции, которую вы хотите открыть. Разные страйк-цены имеют разную дельту, как указано в приведенной выше формуле
  • Время до ликвидации (дней) — относится к тому, сколько дней до ликвидации будет у этой позиции с данным LTV.
  • Цена депозита — это цена, которую вы платите за единицу «Депозита (буфера USDC)». В приведенном выше примере это означает 1,0474 USDC за 1 депозит USDC.
  • Начальный депозит (USDC) — относится к сумме, которую вам нужно будет внести в поле ввода «Начальный депозит» на странице торговли app.gammaswap.com. Это означает, что для получения депозита в размере 100 USDC вам необходимо внести 104,74 USDC.
  • Дельта — это изменение стоимости позиции на каждые 1 USDC изменения цены волатильного актива (в данном случае WETH). В приведенном выше примере это 25 центов за каждые 1 изменение цены USDC в WETH. Дельта увеличивается по мере роста цены WETH.
  • Кредитное плечо — это кредитное плечо, которое вы получаете, открывая эту позицию. В данном примере это 4x. Таким образом, открытие этой позиции с залоговым буфером в размере 100 USDC (депозит (USDC Buffer)) — это то же самое, что иметь позицию ETH на сумму 399,68 USDC.
  • Размер (USDC) — относится к размеру позиции с кредитным плечом (100 x 4 ~ 399.68)
  • Цена ETH в USDC — в разделе «Post Trade» относится к цене ETH после открытия позиции с буфером в 100 USDC.
  • Влияние на цену — в разделе «Post Trade» относится к тому, насколько цена была сдвинута к открытию позиции. В приведенном выше примере открытие позиции сдвинуло цену ETH на 2 базисных пункта. Входные параметры для CFMM и GammaSwap приведены ниже
  • Текущая цена ETH (USDC) — относится к текущей цене ETH в пересчете на USDC в CFMM.
  • Инвариант ликвидности — среднее геометрическое, т.е. sqrt(X*Y), резервных активов (ETH и USDC) внутри CFMM
  • комиссия — это торговая комиссия, взимаемая CFMM
  • ETH в CFMM и USDC в CFMM — это сколько ETH и USDC находится в CFMM с учетом входных параметров «Инвариант ликвидности» и «Текущая цена ETH»
  • Ставка заимствования — это ставка в год, взимаемая GammaSwap с заемщиков ликвидности (покупателей волатильности), включая торговые комиссии в CFMM. Это переменное число, но его можно усреднить за определенные периоды времени, чтобы получить справедливую оценку ожидаемых затрат.
  • Max LTV — максимальный LTV, разрешенный пулом GammaSwap до того, как кредит ликвидности будет ликвидирован (истек).
  • Комиссия за оригинацию — относится к комиссии за оригинацию, взимаемой пулом GammaSwap в текущий момент времени. Эта сумма также варьируется в зависимости от коэффициента использования пула, но она выплачивается только один раз, авансом при открытии кредита ликвидности.
  • Px Change — столбец — насколько изменилась цена базового актива в CFMM.
  • Цена (USD) — цена волатильного актива
  • Pos Size (USD) — стоимость позиции в долларах США
  • P/L % — прибыль и убыток в процентном выражении позиции при изменении цены волатильного актива
  • P/L (USD) — прибыль и убыток позиции при изменении цены
  • Delta — дельта позиции при изменении цены. Позиция GammaSwap является сделкой волатильности, поэтому дельта будет увеличиваться по мере роста цены актива. Таким образом, доходность нелинейна, и P/L будет расти быстрее, чем линейная.
  • Кредитное плечо — это кредитное плечо, которое представляет собой позиция при изменении цены. Кредитное плечо по отношению к тому, сколько был использован залогового буфера (депозита) для открытия позиции.

В ближайшие дни мы добавим в app.gammaswap.com больше функций из таблицы калькулятора, а также добавим больше информации, полезной для спекулянтов и хеджеров, в электронную таблицу в нашем репозитории github.

Заключение

В этой статье я описал формулу P/L для контракта GammaSwap. Я также описал факторы, влияющие на P/L, такие как цена исполнения и время до истечения срока действия/ликвидации. Я также объяснил затраты, влияющие на кредит, такие как ставка по займу, комиссия за выдачу кредита, торговые сборы CFMM и влияние на рынок при установлении цены исполнения. Я также предоставил электронную таблицу для расчета P/L, дельты, кредитного плеча, времени до ликвидации и стоимости залога для депозита для открытия длинной позиции с волатильностью GammaSwap. В следующей статье я расскажу о греках контракта и некоторых стратегиях торговли и хеджирования.

Источник