the vault reallocator.
HEGEMON is the reallocator. It moves vault capital between whitelisted Morpho markets along a utilization-targeting curve. Each market receives a score. The scores become target weights. A rebalance executes only when the change clears the churn floor. The bot simulates every move before it sends the move onchain.
MARKET SCORE
utilScore = bellCurve(u; center=U0, width=SIGMA) // prefers u near U0
exitScore = clamp01(exitRatio) ^ EXIT_POWER // penalizes poor exits
score = netApy · utilScore · exitScore // per market, each tick
The bot normalizes the scores and applies a softmax (temperature SOFTMAX_T) to get target weights. The bell curve keeps capital where utilization is healthy: high enough to earn, low enough to exit.
CONSTANTS
| PARAM | VALUE | MEANING |
|---|---|---|
| U0 | 0.88 | Bell-curve peak utilization |
| SIGMA | 0.05 | Bell-curve width |
| U_OPT_LOW | 0.78 | Deposits never push a market below this level |
| U_SAT | 0.92 | Start of the saturated band; inflow is reduced |
| U_CRIT | 0.95 | Hard gate: no deposits at or above this level |
| EXIT_MIN | 0.06 | exitRatio floor for new deposits |
| EXIT_POWER | 1.5 | Convexity of the exit-safety penalty |
| SAT_INFLOW_MULT | 0.4 | Inflow multiplier in the saturated band |
| SOFTMAX_T | 0.2 | Softmax temperature over normalized scores |
| MIN_REALLOC_BPS_DELTA | 25 | Churn floor (bps of totalAssets per market) |
| CRIT_WEIGHT_RISK | 0.25 | Risk-lane trigger (assets in critical markets) |
| RISK_COOLDOWN_HOURS | 2 | Deposit cooldown after a risk-lane exit |
| LIQUIDITY_BUFFER_BPS | 500 | Floor kept in the liquidity market |
The values on this page render directly from the strategy module the site runs on. They cannot differ from the deployed configuration.
GATES & COOLDOWNS
- ▸Deposits never push a market's utilization below U_OPT_LOW or above U_CRIT.
- ▸In the saturated band [U_SAT, U_CRIT), SAT_INFLOW_MULT reduces the inflow.
- ▸A market below the EXIT_MIN exit ratio receives no new deposits until it recovers.
- ▸After a risk-lane exit, the market goes on a deposit cooldown (RISK_COOLDOWN_HOURS).
- ▸A rebalance executes only when a market's weight change clears MIN_REALLOC_BPS_DELTA.
- ▸The bot keeps a liquidity buffer (LIQUIDITY_BUFFER_BPS of totalAssets) in a designated liquidity market. The liquidity market rotates only when a challenger beats the incumbent by LIQUIDITY_ROTATION_FACTOR.