# Gamma Swap by Deri Protocol

In the previous paper, we introduced a new type of derivative, Gamma Swap. As discussed, the trading of Gamma swap depends on a composite trading venue consisting of two (virtual) primitive trading venues for power perps and perpetual futures. This paper explains the implementation of such a composite trading venue by the DPMM of Deri Protocol.

Following the terminology in the previous paper, in this paper,

$i$

refers to the index price while $M$

refers to the different kinds of mark prices. **The core role of DPMM is to determine the mark prices based on the index price input and the trading activities.**Everything else (e.g., PnL, funding fees) is then based on the mark prices.Internally, 1 unit of Gamma swap is treated as a portfolio of powers and perps. DPMM simultaneously keeps track of the power and perp positions and calculates their respective mark prices. When 1 unit of long Gamma swap is entered, the DPMM adds 1 unit of power and

$-\frac{2i_0}{1-h_0T}$

units of perp to the two positions, respectively. One could also enter a Gamma swap position with a specified entry price $i_s$

. In that case, DPMM would add 1 unit of power and $-\frac{2i_s}{1-h_0T}$

units of perp to the two positions, respectively. Denote the total net position of power as $n$

and total net position of perp as $m$

, then DPMM calculates the mark price of perp as follows:$\frac{M_{perp}-i}{i}=k_{perp}\left(n\cdot\frac{2i}{1-hT}+m\right)=k_{perp}m'$

where

$i$

is the index price of the underlying, and $m'=n\cdot\frac{2i}{1-hT}+m$

. Please note that:- This is just the classical DPMM for perp with$m'=\left(n\cdot\frac{2i}{1-hT}+m\right)$as the total net position, instead of just$m$.
- Notice that$m'=0$at a “balanced point”, at which the liquidity pool has no Delta exposure. For example, immediately after the first position was opened, we have$n =1$and$m=-\frac{2i_0}{1-h_0T}$, hence$m'=0$. A “balanced point” is equivalent to the scenario of zero net position in a regular DPMM of perp.
- A trading action reducing$|m'|$(and thus bringing the system to the “balanced point”) enjoys a negative slippage of$M_{perp}$. However, since opening a new position at the current price (without specifying entry price) does not change$m'$, it does not enjoy a negative slippage. This is a bit different from the case of perp DPMM, in which a new position reducing the total net position always enjoys negative slippage.

And the mark price of power is:

$\frac{M_{power}-i_{power}}{i_{power}}=k_{power}n$

where

$i_{power}$

is the theoretical price of the power, calculated just like that in the power perp DPMM:$i_{power}=\frac{i^2}{1-hT}$

Now we have a composite DPMM that, at any point, takes the state variables

$(n, m, i, \sigma)$

to determine $(M_{perp}, M_{power})$

and hence gives$M_{gamma}$

as$M_{gamma}=M_{power}-\frac{2i_0}{1-h_0T}M_{perp}+\frac{i_0^2}{1-h_0T}$

$M_{gamma}$

determines the trading cost of every trade and consequently determines PnL.

1 unit of Gamma swap has composite funding based on the power funding and the perp funding:

$F_{gamma}=F_{power}+\left(\frac{2i}{1-hT}-\frac{2i_0}{1-h_0T}\right)F_{perp}$

where

$(i_0, h_0)$

are the $(i,h)$

as of the position entry point, and$\begin{align*}
F_{power}=&\frac{M_{power}-i^2}{T}\\
F_{perp}=&\frac{M_{perp}-i}{T}=i\cdot\frac{k_{perp}}{T}\left(n\cdot\frac{2i}{1-hT}+m\right)
\end{align*}$

$F_{power}$

is simply handled the same way as power perps.Whereas the handling of

$F_{perp}$

is somewhat tricky, as the coefficient of the $F_{perp}$

term is constantly changing with $i$

. Essentially, this can be understood as every unit of Gamma swap has $-\frac{2i_0}{1-h_0T}$

“real futures” as well as $\frac{2i}{1-hT}$

“virtual futures”, and hence totally $\left(\frac{2i}{1-hT}-\frac{2i_0}{1-h_0T}\right)$

effective futures. The tricky part is the constantly varying virtual part. Because of this constantly varying virtual part, the perp funding should be calculated **per Gamma swap, instead of per futures**.By definition, the exact funding fee of 1 unit of Gamma swap accumulated over the time period

$(t_1, t_2)$

should be the integral of $F_{perp}$

over this period.$\begin{align*}
\text{Funding}_{perp}(t_1,t_2)=&\int_{t_1}^{t_2}\left(\frac{2i}{1-hT}-\frac{2i_0}{1-h_0T}\right) F_{perp}dt
\\
=&\int_{t_1}^{t_2}\left(\frac{2i}{1-hT}\right) F_{perp}dt-\frac{2i_0}{1-h_0T}\int_{t_1}^{t_2} F_{perp}dt
\\
=&
A|_{t_1}^{t_2}-
\frac{2i_0}{1-h_0T}B|_{t_1}^{t_2}
\end{align*}$

where

$A|_{t_1}^{t_2}$

and $B|_{t_1}^{t_2}$

are the accumulated increment of $A$

and $B$

over $(t_i,t_2]$

:$\begin{align*}
A|_{t_1}^{t_2}=&\int_{t_1}^{t_2}\frac{2i}{1-hT}\cdot F_{perp}dt=\int_{t_1}^{t_2}\frac{2i}{1-hT}\cdot i\cdot\frac{k_{perp}}{T}\left(n\cdot\frac{2i}{1-hT}+m\right)dt\\
B|_{t_1}^{t_2}=&\int_{t_1}^{t_2} F_{perp}dt=\int_{t_1}^{t_2} i\cdot\frac{k_{perp}}{T}\left(n\cdot\frac{2i}{1-hT}+m\right)dt\\
\end{align*}$

Please note that the two accumulating variables

$A$

and $B$

are universal to all positions while $\frac{i_o}{1-h_0T}$

is position-specific. We need to track the accumulations of $A$

and $B$

separately and then for any position we can calculate its accumulated funding fee with its own value of $\frac{i_0}{1-h_0T}$

. That is, for a position of $x$

gamma swaps entered at $t_a$

with entry values $(i_0, h_0)$

, its accumulated funding fee from $t_1$

to $t_2$

is:$\left[(A_{t_2}-A_{t_1})-(B_{t_2}-B_{t_1})\frac{2i_0}{1-h_0T}\right]\cdot x$

In practice, it is impossible to rigorously calculate

$A$

and $B$

due to their path-dependencies. Hence, we need some numerical approximations.We assume the funding over the time period

$(t_{i-1},t_i]$

is accumulated at the speed as of $t_i$

. Essentially this assumes $i=i(t_2), \forall i \in(t_{i-1}, t_i]$

. With this approximation, the two integrals over $(t_i,t_2]$

degenerate into simple multiplications:$\begin{align*}
A|_{t_1}^{t_2}=&\frac{2i}{1-hT}\cdot i \cdot\frac{k_{perp}}{T}\left(n\cdot\frac{2i}{1-hT}+m\right)\Delta t\\
B|_{t_1}^{t_2}=&
i \cdot\frac{k_{perp}}{T}\left(n\cdot\frac{2i}{1-hT}+m\right)\Delta t
\end{align*}$

A more reasonable approximation is to assume the index price

$i$

changes linearly over $(t_1, t_2]$

:$i(t)=i_1+(i_2-i_1)\frac{t-t_1}{t_2-t_1}, \forall i \in(t_{i-1}, t_i]$

Then we can calculate the accumulating variables

$A$

and $B$

as follows:$\begin{align*}
A|_{t_1}^{t_2}=&\frac{2}{1-hT}\cdot\frac{k_{perp}}{T}\left(n\cdot\frac{2}{1-hT}\cdot\overline {i^3}+m\cdot\overline {i^2}\right)\Delta t\\
B|_{t_1}^{t_2}=&
\frac{k_{perp}}{T}\left(n\cdot\frac{2}{1-hT}\cdot\overline {i^2}+m\cdot\overline {i}\right)\Delta t
\end{align*}$

where

$\overline {i^3}$

, $\overline {i^2}$

and $\overline i$

are the time-weighted average value of $i^3$

, $i^2$

and $i$

over $(t_1, t_2]$

, respectively:$\begin{align*}
\overline{i^3}&=\frac{1}{\Delta t}\int_{t_1}^{t_2}i^3dt=\frac{(i_1+i_2)(i_1^2+i_2^2)}{4}\\
\overline{i^2}&=\frac{1}{\Delta t}\int_{t_1}^{t_2}i^2dt=\frac{i_1^2+i_1i_2+i_2^2}{3}\\
\overline{i}&=\frac{1}{\Delta t}\int_{t_1}^{t_2}idt=\frac{i_1+i_2}{2}\\
\end{align*}$

With this approximation, the power funding component can be calculated similarly:

$\text{Funding}_{power}(t_1,t_2) = \frac{(k_{power}n+hT)}{(1-hT)T}\cdot \overline{i^2} \Delta t= A_{power}|_{t_1}^{t_2}$

where

$A_{power}|_{t_1}^{t_2}$

is the accumulating variable tracking the accumulation of power funding. In practice, the two $A$

variables of power and futures can be combined into a single variable.The previous paper introduces the concept of Gamma Swap, a new type of derivative depending on a composite trading venue consisting of two primitive trading venues for power perps and perpetual futures. This paper explains the implementation of such a composite trading venue by the DPMM of Deri Protocol. With the DPMM for Gamma Swap constructed, now we are ready to roll out a comprehensive solution for Gamm Swap.

Last modified 11mo ago