The last auction price mechanism in Marinade’s Stake Auction Marketplace
The Last Auction Price Mechanism allows validators to set their bid as the maximum amount they are willing to pay, instead of having to monitor their bids each epoch.
Last price auction
At the end of the scoring process, Marinade has a list of validators ordered by max_yield, as well as an amount of stake to be distributed to each validator.
The "realized_yield" for the epoch will be set to the "max_yield" of the last validator to receive stake, which is consequently the lowest yield of the list.
Validators that had a higher "max_yield" for that epoch will not provide their full "max_yield" but will only need to provide the "realized_yield" for the epoch. This means that their bid might get charged less than the maximum that has been set, as a lower amount of SOL would be needed to achieve this lower "realized_yield", unless they are the last validator from the list.
This mechanism prevents validators from overpaying, as your bid will only get charged to match the realized_yield of the epoch, which for most validators will be lower than their actual "max_yield".
Example:
Validator ID |
max_yield (APY) |
max_stake_wanted (SOL) |
stake_received (SOL) |
realized_yield (APY) |
1 |
10.6% |
95 000 |
95 000 |
8.12% |
2 |
9.58% |
1 000 000 |
200 000* |
8.12% |
3 |
9.4% |
80 000 |
80 000 |
8.12% |
… |
… |
… |
… |
… |
166 |
8.12% |
50 000 |
15 000** |
8.12% |
167 |
8.12% |
200 000 |
15 000** |
8.12% |
168 |
8.10% |
80 000 |
0 |
0% |
In the example above, Marinade would distribute stake to a total of 168 validators.
Let's imagine that the validator ranked 1 has a base APY of 7.6%, and has set a bid (CPMPE) that pushes his max_yield to 10.6%.
In that epoch, Validator 1 would not spend his full "CPMPE" to achieve a 10.6% yield, but their bond would only get charged enough SOL to arrive at an 8.12% APY. This will be the case for all validators that provide a max_yield that is higher than 8.12% APY.
Alternatively, if the validator ranked 167 in that example had a base APY of 7.6%, and a bid to push his max_yield to 8.12% APY, this validator would be paying their full bid (CPMPE) for that epoch.
This mechanism ensures that validators can set their true max_yield without worrying about overpaying for stake at any given point.