Demo on a mainnet fork: the real Upside program, the real Voltr and Phoenix programs, live Phoenix prices; only the USDC is test money. Nothing here is real money. What that means
upside

Transparency

dAAPLLive

What backs the token, where the keeper’s lines are, and every action it has taken. Read straight from the keeper’s own records.

Last snapshot 12 s ago
Leverage bandin band
Leverage 1.95xband 1.8–2.3x · hard delever 2.6x
1.95x
dAAPL realised leverage 1.95x; realised leverage = notional ÷ NAV; the keeper rebalances outside the band
1.80x2.00x2.30x2.60x
Venue equity / notionalbetween floor and ceiling
Margin 25.5% of notionalfloor 17.9% · target 25% · ceiling 32.1%
25.5%
dAAPL equity / notional 25.5%; venue equity ÷ notional; top-up below the floor, withdraw above the ceiling, liquidation at the venue's maintenance
17.9%25%32.1%17.9%

Action ladder

At what underlying move does each keeper action fire, from the latest snapshot and this token's policy.

external index
−19%
−13%
−6%
+6%
+13%
+19%
$313.35
$320.67
$347.68
$351.11
$360.27
$403.87
$329.74
If the price falls
  1. Band edge 1.80x−2.8% · $320.67
    Rebalance up to target (external session only)
  2. Margin ceiling 32.1% of notional−5.0% · $313.35
    Withdraw excess collateral to idle
If the price rises
  1. Band edge 2.30x+5.4% · $347.68
    Rebalance down to target (any hour)
  2. Margin floor 17.9% of notional+6.5% · $351.11
    Top up collateral from idle
  3. Hard delever 2.60x+9.3% · $360.27
    Emergency delever to target, market order
  4. Liquidation (est.)+22.5% · $403.87
    Phoenix liquidates the account; the stop and top-ups sit well before this

Computed from realised leverage 1.950x and venue equity at 25.5% of notional at mark $329.74, holding everything else fixed. Margin distances follow this token's own policy: lower tiers post more collateral, so a 2x token has further to fall than a 3x one (D27). Liquidation is where equity reaches the 2.5% maintenance margin Phoenix requires on notional (registry value, Q13); the on-chain stop and the keeper's top-ups are designed to act well before it. Estimates for reading, not for trading.

Leverage over time

Realised leverage against the band, the target and the hard-delever line. Markers are keeper actions; hover for reason, before/after and fill.

Realised leverageBand 1.8x2.3xHard delever 2.6xRebalanceEmergency delever

Margin over time

Venue equity (collateral plus unrealised PnL) as a share of notional, against the floor, target and ceiling. Distances do not depend on leverage. Top-ups and withdrawals are the keeper's margin loop; the stop is refreshed after every rebalance.

Venue equity / notionalFloor 17.9% – ceiling 32.1%Top-upWithdraw excessStop set

Buffers and capacity

Idle USDC pays instant redemptions and Jupiter sells; collateral sits at Phoenix; the cap bounds TVL against Phoenix depth.

Idle USDC in vault2,500 of 4,983 USDC · 50.2%
Collateral at Phoenix (share of NAV)2,497 USDC · equity 25.5% of notional
Pending redemptionsnone
Cap used$4,982.9 of $250.0K
LP supply
5,000 dAAPL
Token price
0.996580 USDC
Unrealised PnL
−14.56 USDC
Funding (annualised)

Session

How the underlying is being priced right now.

external indexExternal index live

The underlying exchange is open. Phoenix marks track the external index, and the keeper cranks NAV every 20–30 s. Expansion and defensive rebalances both run.

Mark
$329.74
Index
$329.75
Pool price
no pool
Premium to NAV
Realised vs target
1.950x / 2.0x

Keeper liveness

Heartbeats, halted flag and per-loop status. Two keepers on different RPCs are the target.

  • keeper-stagingv0.1.0 · surfpool#0 · heartbeat 4 s ago
    stream dAAPL:band dAAPL:stop dAAPL:tick dGOLD:band dGOLD:stop dGOLD:tick dMSTR:band dMSTR:stop dMSTR:tick dNVDA:band dNVDA:stop dNVDA:tick dSPCX:band dSPCX:stop dSPCX:tick uAAPL:band uAAPL:stop uAAPL:tick uGOLD:band uGOLD:stop uGOLD:tick uMSTR:band uMSTR:stop uMSTR:tick uNVDA:band uNVDA:stop uNVDA:tick uSPCX:band uSPCX:stop uSPCX:tick dAAPL:crank dAAPL:guard dGOLD:crank dGOLD:guard dMSTR:crank dMSTR:guard dNVDA:crank dNVDA:guard dSPCX:crank dSPCX:guard dUS100:band dUS100:stop dUS100:tick dUS500:band dUS500:stop dUS500:tick uAAPL:crank uAAPL:guard uGOLD:crank uGOLD:guard uMSTR:crank uMSTR:guard uNVDA:crank uNVDA:guard uSPCX:crank uSPCX:guard uUS100:band uUS100:stop uUS100:tick uUS500:band uUS500:stop uUS500:tick dAAPL:inflow dAAPL:margin dAAPL:redeem dGOLD:inflow dGOLD:margin dGOLD:redeem dMSTR:inflow dMSTR:margin dMSTR:redeem dNVDA:inflow dNVDA:margin dNVDA:redeem dSPCX:inflow dSPCX:margin dSPCX:redeem dUS100:crank dUS100:guard dUS500:crank dUS500:guard dWTIOIL:band dWTIOIL:stop dWTIOIL:tick uAAPL:inflow uAAPL:margin uAAPL:redeem uGOLD:inflow uGOLD:margin uGOLD:redeem uMSTR:inflow uMSTR:margin ✗ 3uMSTR:redeem uNVDA:inflow uNVDA:margin uNVDA:redeem uSPCX:inflow uSPCX:margin uSPCX:redeem uUS100:crank uUS100:guard uUS500:crank uUS500:guard uWTIOIL:band uWTIOIL:stop uWTIOIL:tick dAAPL:harvest ✗ 2dGOLD:harvest ✗ 2dMSTR:harvest ✗ 1dNVDA:harvest ✗ 1dSPCX:harvest ✗ 1dUS100:inflow dUS100:margin dUS100:redeem dUS500:inflow dUS500:margin dUS500:redeem dWTIOIL:crank dWTIOIL:guard uAAPL:harvest ✗ 2uGOLD:harvest ✗ 1uMSTR:harvest ✗ 2uNVDA:harvest uSPCX:harvest ✗ 2uUS100:inflow uUS100:margin uUS100:redeem uUS500:inflow uUS500:margin uUS500:redeem uWTIOIL:crank uWTIOIL:guard dUS100:harvest ✗ 2dUS500:harvest ✗ 1dWTIOIL:inflow dWTIOIL:margin dWTIOIL:redeem uUS100:harvest ✗ 1uUS500:harvest uWTIOIL:inflow uWTIOIL:margin uWTIOIL:redeem dWTIOIL:harvest ✗ 1uWTIOIL:harvest ✗ 2

Alerts

Raised by the keeper, resolved when the condition clears.

  • warning
    CRANK_STALE · dAAPL15 Sep 16:03 UTC → resolved 1 min ago
    dAAPL: last crank 104s ago during an external session
  • warning
    CRANK_STALE · dAAPL15 Sep 15:59 UTC → resolved 5 min ago
    dAAPL: last crank 105s ago during an external session
  • warning
    CRANK_STALE · dAAPL15 Sep 15:57 UTC → resolved 8 min ago
    dAAPL: last crank 103s ago during an external session
  • warning
    CRANK_STALE · dAAPL15 Sep 15:45 UTC → resolved 18 min ago
    dAAPL: last crank 105s ago during an external session
  • warning
    CRANK_STALE · dAAPL15 Sep 15:35 UTC → resolved 31 min ago
    dAAPL: last crank never during an external session

Event log

Every action planned, sent or observed for this token, newest first.

TimeKindStatusReasonLeverageAmountFill / markSlipTx
15 Sep 16:06 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —YXpP…KMzN
15 Sep 16:06 UTCCrankconfirmedcrank: receipt 74s old, session external1.95x → —5y57…zam9
15 Sep 16:05 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 16:05 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 16:05 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —8eVt…rxL3
15 Sep 16:04 UTCCrankconfirmedcrank: receipt 193s old, session external1.95x → —66Bi…K5EB
15 Sep 16:04 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 16:04 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 16:04 UTCCrankconfirmedcrank: receipt 134s old, session external1.95x → —29Dt…rRbc
15 Sep 16:03 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 16:03 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 16:02 UTCCrankconfirmedcrank: receipt 74s old, session external1.95x → —3VnW…ppoJ
15 Sep 16:02 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 16:02 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 16:02 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —54fE…nLWH
15 Sep 16:01 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —22kv…FTGz
15 Sep 16:01 UTCCrankconfirmedcrank: receipt 197s old, session external1.95x → —4Euj…eTBa
15 Sep 16:01 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 16:00 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 16:00 UTCCrankconfirmedcrank: receipt 136s old, session external1.95x → —5azL…nSse
15 Sep 15:59 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:59 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:59 UTCCrankconfirmedcrank: receipt 73s old, session external1.95x → —4Qw6…MD29
15 Sep 15:58 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:58 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:58 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —2h3B…WYUP
15 Sep 15:58 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —3iev…F6nP
15 Sep 15:57 UTCCrankconfirmedcrank: receipt 133s old, session external1.95x → —4z6p…LYh8
15 Sep 15:57 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:57 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:56 UTCCrankconfirmedcrank: receipt 75s old, session external1.95x → —4x5V…eVkW
15 Sep 15:56 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:56 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:55 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —4y3r…egNr
15 Sep 15:55 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —4EuE…mLyn
15 Sep 15:55 UTCCrankconfirmedcrank: receipt 12s old, session external1.95x → —46Lz…uV74
15 Sep 15:55 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —MnYE…BPGJ
15 Sep 15:55 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:55 UTCCrankconfirmedcrank: receipt 16s old, session external1.95x → —5nQd…z3ag
15 Sep 15:54 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —SzMc…Xubp
15 Sep 15:54 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —k4Cn…3r27
15 Sep 15:54 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —4fkt…HPbB
15 Sep 15:54 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:53 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —fHQb…WZwg
15 Sep 15:53 UTCCrankconfirmedcrank: receipt 12s old, session external1.95x → —25Ds…MVqC
15 Sep 15:53 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —4Tht…pnVA
15 Sep 15:53 UTCCrankconfirmedcrank: receipt 75s old, session external1.95x → —uDwd…7pbD
15 Sep 15:52 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:52 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:52 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —3Pcw…socW
15 Sep 15:51 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —66WR…4iQa
15 Sep 15:51 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:51 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —5Lc3…SKtr
15 Sep 15:51 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —2QRk…UZYq
15 Sep 15:51 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —5rJG…dXaF
15 Sep 15:50 UTCCrankconfirmedcrank: receipt 75s old, session external1.95x → —39F1…7Q9f
15 Sep 15:50 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:50 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:49 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —5ik7…nvS5
15 Sep 15:49 UTCCrankconfirmedcrank: receipt 75s old, session external1.95x → —3D9G…GBcx
15 Sep 15:49 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:49 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:48 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —4VFY…LZFi
15 Sep 15:48 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:48 UTCCrankconfirmedcrank: receipt 254s old, session external1.95x → —4Wx5…GRzq
15 Sep 15:47 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:47 UTCCrankconfirmedcrank: receipt 194s old, session external1.95x → —LxKf…HKho
15 Sep 15:47 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:46 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.96x → —
15 Sep 15:46 UTCCrankconfirmedcrank: receipt 135s old, session external1.95x → —42Jv…zr4s
15 Sep 15:46 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:45 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:45 UTCCrankconfirmedcrank: receipt 75s old, session external1.95x → —2BXZ…ZjAj
15 Sep 15:44 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:44 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:44 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —3rXV…Kd2t
15 Sep 15:44 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —nQ19…wwUB
15 Sep 15:43 UTCCrankconfirmedcrank: receipt 73s old, session external1.95x → —4JVu…wtJM
15 Sep 15:43 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:43 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:42 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —NRQ8…KfYQ
15 Sep 15:42 UTCCrankconfirmedcrank: receipt 76s old, session external1.95x → —L6H1…p5vq
15 Sep 15:42 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:42 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:41 UTCCrankconfirmedcrank: receipt 12s old, session external1.95x → —2JUE…La7H
15 Sep 15:41 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —36ga…f5JT
15 Sep 15:41 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:41 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —wAVX…5ta2
15 Sep 15:40 UTCCrankconfirmedcrank: receipt 17s old, session external1.95x → —5ixF…Povv
15 Sep 15:40 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —2ExN…QMtW
15 Sep 15:40 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —2KmG…dszf
15 Sep 15:40 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:40 UTCCrankconfirmedcrank: receipt 15s old, session external1.95x → —5ke5…jM2P
15 Sep 15:39 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —5AMn…mCTv
15 Sep 15:39 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —2qH1…w5v3
15 Sep 15:39 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —39Cz…i3uM
15 Sep 15:39 UTCCrankconfirmedcrank: receipt 14s old, session external1.95x → —Bkut…TwtG
15 Sep 15:39 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:38 UTCCrankconfirmedcrank: receipt 75s old, session external1.95x → —4iWu…TQYv
15 Sep 15:38 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:38 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:37 UTCCrankconfirmedcrank: receipt 13s old, session external1.95x → —5PLJ…Mp5i
15 Sep 15:37 UTCCrankconfirmedcrank: receipt 11s old, session external1.95x → —3Fjc…Qm93
15 Sep 15:37 UTCCrankconfirmedcrank: receipt 16s old, session external1.95x → —5FUb…m39u
15 Sep 15:37 UTCCrankconfirmedcrank: receipt 74s old, session external1.95x → —5NN3…c2Br
15 Sep 15:36 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection
15 Sep 15:36 UTCCrankskippedPrior vault transaction reconciled; read fresh state before replanning1.95x → —
15 Sep 15:36 UTCCrankconfirmedcrank: receipt 12s old, session external1.95x → —62PE…fUzf
15 Sep 15:35 UTCCrankconfirmedfirst crank for dAAPL1.95x → —5mMQ…6cmW
15 Sep 15:35 UTCCrankskippedstop placement is disabled for this deployment; there is no verified keeper-independent backstop until it can, so keeper uptime is the only protection