π€―Theoretical pricing
The formulas presented below are theoretical and used for forward pricing. Contango protocol uses similar but different formulas by taking advantage of the trader's margin to make expirables in DeFi capital-efficient (see the protocol pricing section).
Theory
In TradFi, forwards on currencies are priced using the well-known interest rate parity relationship. Given the quote currency can be borrowed or lent at the yearly fixed rate rQβ , the base currency at the yearly rate rBβ and given a spot price S then the theoretical price Pthβ to buy or sell 1 forward expiring in a time T is given by:
The pricing formula above is adapted from from "Options, futures and other derivatives", 6th edition, John C. Hull, Chapter 5 on futures pricing.
Example
Let's consider a contract on ETHDAI expiring in 3 months (T=0.25) where the spot price is S=100DAI. Given the yearly fixed interest rate on the quote currency DAI is rQβ=10% and on the base currency ETH is rQβ=3% then the theoretical price to buy or sell 1 forwards would be:
Pthβ=100β(1+0.031+0.1β)0.25=101.66DAI
Derived formula
In the section, a more realistic formula is derived. Taking the example of the currency pair ETHDAI, it is supposed that:
the quote currency is borrowed at the yearly fixed rate rQ,bβ, e.g. borrow DAI
the quote currency is lent at the yearly fixed rate rQ,lβ, e.g. lend DAI
the base currency is borrowed at the yearly fixed rate rB,bβ , e.g. borrow ETH
the base currency is lent at the yearly fixed rate rB,lβ , e.g. lend ETH
the base currency is bought at the spot price SLβ , e.g. buy ETH by selling DAI
the base currency is sold at the spot price SSβ, e.g. sell ETH to buy DAI.
The table below provides the theoretical prices at which a trader can go long or short a forward:
Pth,Sβ=SSββ(1+rB,bβ1+rQ,lββ)T
Pth,Lβ=SLββ(1+rB,lβ1+rQ,bββ)Tβ
It could be noticed that, the tighter the spread between the borrowing and lending rates and the tighter the spread on the spot price then the tighter the spread between the forward prices to go long and short.
Example
Let's consider a contract on ETHDAI expiring in 3 months (T=0.25) :
Given one could borrow DAI at a yearly fixed rate of rQ,bβ=10.10%β, lend ETH at a yearly fixed rate rB,lβ=2.90%and buy ETH on the spot market at SLβ=100.10, the price to go long on 1 forward would be:
Pth,Lβ=100.10β(1+0.02901+0.1010β)0.25=101.81DAI
Given one could borrow ETH at a yearly fixed rate of rB,bβ=3.10%β, lend DAI at a yearly fixed rate of rQ,lβ=9.90% and sell ETH on the spot market at SSβ=99.90, the price to go short would be:
Pth,Sβ=99.90β(1+0.03101+0.0990β)0.25=101.51DAI
Price equilibrium
If the price of a forward is above or under the theoretical formula then an arbitrage condition arises. Since market participants can take advantage of this "free lunch", by using significant amounts of money, prices are brought back to their theoretical formulas. In the examples below, where the same numerical assumptions as in the example above are kept, the two arbitrages to bring the price at equilibrium are presented.
Forward price above Pth,Sβ
Let's say the price to sell 1 forward is 110.00DAI instead of Pth,Sβ=101.51DAI. An arbitrageur could:
Borrow now 10000.00DAI. In 3 months 10000β(1.11)0.25=10243.46DAI need to be given back.
Convert now those 10000DAI to 10000/100.10=99.90ETH.
Invest now the 99.90ETH to receive 99.90β(1.029)0.25=100.62ETHβ in 3 months.
Sell now a forward contract for a quantity of 100.62ETH for a price of100.62β110=11067.83DAI.β
Deliver the 100.62ETH at expiry to get 11067.83DAI for a cost of 10243.46DAI, locking-in a risk-free profit of 824.37DAI.
This arbitrage could be done with much bigger amounts and would disappear when the forward price is brought back to its theoretical pricing.
Forward price under Pth,Lβ
Let's say the price to buy 1 forward is 90.00DAI instead of Pth,Lβ=101.81DAI. An arbitrageur could:
Borrow now 100ETH. In 3 months 100β(1.029)0.25=100.77ETHβ need to be given back.
Convert now those 100ETH to 100β99.9=9990DAI.
Invest now those DAIs to receive 100000β(1.099)0.25=10228.57DAI in 3 months.β
Buy now a forward contract for a quantity of 100.77ETH for a price of 100.77β90=9975.85DAI.
At expiry, the trader would receive 10228.57DAI from lending and use 9975.85DAIto buy the 100.77ETHneeded to reimburse the debt, locking-in a risk-free profit of 252.72DAI.
This arbitrage could be done with much bigger amounts and would disappear when the forward price is brought back to its theoretical pricing.
Last updated