Fees

Taker Fees

Fees are paid by the taker of an order to the protocol treasury. Taker pays 50bps fee (0.5%) of the entire collateral. These fees are proportional to the collateral required to establish the position. The calculation for taker fees is as follows:

takerFees = fillFeeBps * collateral = fillFeeBps * orderSize * (cap - floor)

[Advanced] Keeper Bot Incentives

Keeper Bots are economically incentivized to execute the StartPools() and EndPools() functions. The cost of these incentives is shared between the Buy and Sell sides, being deducted from their potential payout. This arrangement is designed to cover the gas expenses incurred by the bots, in addition to providing a modest profit. The expected outcome is that the incentives awarded to Keeper Bots for calling StartPools() and EndPools() adequately compensates for their operational expenses, ensuring they are motivated to maintain the protocol's functionality.

The formulas for calculating the incentives (also called bounties) are as follows:

Start Bounty:
uint256 uncappedBountyFraction = block.timestamp > poolParams.targetStartTimestamp + sBountyGracePeriod ? uint256(block.timestamp - poolParams.targetStartTimestamp - sBountyGracePeriod) * sBountyFractionIncreasePerSecond : 0;
uint256 bountyFraction = uncappedBountyFraction > sMaxBountyFraction ? sMaxBountyFraction : uncappedBountyFraction;
bounty = (bountyFraction * collateral) / (10 ** 18);

End Bounty:
uint256 uncappedBountyFraction = block.timestamp > poolParams.targetEndTimestamp + sBountyGracePeriod ? uint256(block.timestamp - poolParams.targetEndTimestamp - sBountyGracePeriod) * sBountyFractionIncreasePerSecond : 0;
uint256 bountyFraction = uncappedBountyFraction > sMaxBountyFraction ? sMaxBountyFraction : uncappedBountyFraction;\
bounty = (bountyFraction * collateral) / (10 ** 18);

This incentive structure plays a crucial role in the smooth operation of the protocol by motivating Keeper Bots to perform essential maintenance tasks. By doing so, it contributes to the overall health and efficiency of the system, ensuring timely starts and ends of pools, which is vital for the accurate settlement of positions.

Last updated