Itos Finance

Automated Market Taking

The Itos Convexity Primitive
Automated Market Taking (Takers) is our new Convex Primitive. A convex primitive simply means the position has a positive asymmetric, you stand to profit more than you lose. In our case, our Taker position's value can never go negative, and is always profitable; however, there's no free lunch in finance and it comes with a opening cost, and a funding rate. The proper way to use convexity is to balance this funding cost against the profits you stand to make. The classic example of convexity in TradFi is options, so we will start by explaining Takers and comparing them to options.
The Taker Call Primitive
The Taker Put Primitive
Taker Payoffs.
A Taker position can either be a TakerCall or a TakerPut. They are opened by selecting a price range and a size (a number of tokens).

Taker Call

For a TakerCall, below the price range the position is worth exactly zero. It doesn't lose money nor is it profitable. Above the price range the position rises one to one with respect to the token pair's price. Within the price range, the value of the position smoothly rises from 0 to the 1 to 1 region. It's curved so that the geometric mean (
) of the lower and upper price, is the average strike. This means on average, for every dollar above the average strike, the overall position earns one to one. Let's use an analogy and then an example to clear things up.
Let's say you're driving and want to make a right turn in 20 meters. You can start the turn early and make a really wide turn, or you can late and make a sharp turn. Either way the car will be facing right in 20 meters. In this case, the width of the turn is the width of the price range and the 20 meters is determined by the middle (the geometric mean) of the range.
If the price range is 1600 to 2500 and the size is 10ETH, then below 1600 the position is always worth nothing, but if the price of ETH goes above 2500, then for ever dollar above, the position earns 10 dollars. The curved part in the middle averages out to the geometric mean of
16002500=2000\sqrt{1600 * 2500} = 2000
. This helps us find the value of the position overall. If the price of ETH is 3000, we just have to subtract our average strike from it, and multiply by our size to calculate our profit. In this case (3000 - 2000) * 10 = 10,000. When above the price range, the profit formula is simply
Size(PriceStrike)Size * (Price - Strike)
When we're within the range, we're making a wide turn so we'll actually be more profitable than what previous formula tells us. Within the range, the exact formula is this:
SizePPH(1+PL)PLPH(1+P)PPHPPLSize * \frac{\sqrt{PP_H}(1+P_L) - \sqrt{P_LP_H}(1+P)}{\sqrt{PP_H} - \sqrt{PP_L}}
. If you're familiar with Traditional options and want to compare with an exact strike price, this would be the comparison:
We'll reexamine this in the options comparison section.

Taker Put

TakerPuts are just like TakerCalls except the payout is for the other side. Below the range the position appreciates in value according to the size. Above the range the position is worth nothing. And in range we have the curve again.
Again there is the average strike which is the geometric mean of the price range bounds. The value of the position when below the range is
Size(StrikePrice)Size * (Strike - Price)
. In range the formula is
SizePH+1PHP1PPHPLSize * \frac{\sqrt{P_H} + \frac{1}{\sqrt{P_H}} - \sqrt{P} - \frac{1}{\sqrt{P}}}{\sqrt{P_H} - \sqrt{P_L}}
Comparison To TradFi Options
Traditional options