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

dWTIOILLive

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 25 s ago
Leverage bandin band
Leverage 2.13xband 1.8–2.3x · hard delever 2.6x
2.13x
dWTIOIL realised leverage 2.13x; realised leverage = notional ÷ NAV; the keeper rebalances outside the band
1.80x2.00x2.30x2.60x
Venue equity / notionalbetween floor and ceiling
Margin 23.4% of notionalfloor 17.9% · target 25% · ceiling 32.1%
23.4%
dWTIOIL equity / notional 23.4%; 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
−18%
−12%
−6%
+6%
+12%
+18%
$92.29
$93.30
$101.15
$103.40
$104.81
$118.95
$98.80
If the price falls
  1. Band edge 1.80x−5.6% · $93.30
    Rebalance up to target (external session only)
  2. Margin ceiling 32.1% of notional−6.6% · $92.29
    Withdraw excess collateral to idle
If the price rises
  1. Band edge 2.30x+2.4% · $101.15
    Rebalance down to target (any hour)
  2. Margin floor 17.9% of notional+4.7% · $103.40
    Top up collateral from idle
  3. Hard delever 2.60x+6.1% · $104.81
    Emergency delever to target, market order
  4. Liquidation (est.)+20.4% · $118.95
    Phoenix liquidates the account; the stop and top-ups sit well before this

Computed from realised leverage 2.133x and venue equity at 23.4% of notional at mark $98.80, 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 vault4,759 of 9,510 USDC · 50.0%
Collateral at Phoenix (share of NAV)5,236 USDC · equity 23.4% of notional
Pending redemptionsnone
Cap used$9,509.63 of $250.0K
LP supply
10,062 dWTIOIL
Token price
0.945143 USDC
Unrealised PnL
−489.32 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
$98.80
Index
$98.94
Pool price
no pool
Premium to NAV
Realised vs target
2.133x / 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 6 s ago
    stream dGOLD:band dGOLD:stop dGOLD:tick dMSTR:band dMSTR:stop dMSTR:tick uGOLD:band uGOLD:stop uGOLD:tick uMSTR:band uMSTR:stop uMSTR:tick dGOLD:crank dGOLD:guard dMSTR:crank dMSTR:guard dUS100:band dUS100:stop dUS100:tick dUS500:band dUS500:stop dUS500:tick uGOLD:crank uGOLD:guard uMSTR:crank uMSTR:guard uUS100:band uUS100:stop uUS100:tick uUS500:band uUS500:stop uUS500:tick dGOLD:inflow dGOLD:margin dGOLD:redeem dMSTR:inflow dMSTR:margin dMSTR:redeem dUS100:crank dUS100:guard dUS500:crank dUS500:guard dWTIOIL:band dWTIOIL:stop dWTIOIL:tick uGOLD:inflow uGOLD:margin uGOLD:redeem uMSTR:inflow uMSTR:margin uMSTR:redeem uUS100:crank uUS100:guard uUS500:crank uUS500:guard uWTIOIL:band uWTIOIL:stop uWTIOIL:tick dGOLD:harvest ✗ 3dMSTR:harvest ✗ 3dUS100:inflow dUS100:margin dUS100:redeem dUS500:inflow dUS500:margin dUS500:redeem dWTIOIL:crank dWTIOIL:guard uGOLD:harvest ✗ 3uMSTR:harvest ✗ 3uUS100:inflow uUS100:margin uUS100:redeem uUS500:inflow uUS500:margin uUS500:redeem uWTIOIL:crank uWTIOIL:guard dUS100:harvest ✗ 3dUS500:harvest ✗ 3dWTIOIL:inflow dWTIOIL:margin dWTIOIL:redeem uUS100:harvest ✗ 3uUS500:harvest ✗ 3uWTIOIL:inflow uWTIOIL:margin uWTIOIL:redeem dWTIOIL:harvest ✗ 3uWTIOIL:harvest ✗ 3

Alerts

Raised by the keeper, resolved when the condition clears.

  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 22:20 UTC → resolved 21 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 22:18 UTC → resolved 24 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 22:17 UTC → resolved 26 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 22:09 UTC → resolved 33 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 22:06 UTC → resolved 36 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 22:05 UTC → resolved 37 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    TICK_FAILED · dWTIOIL13 Sep 21:55 UTC → resolved 43 min ago
    dWTIOIL: tick failed: hawkeye view_bbo WTIOIL: Hawkeye return data expected at least 8 bytes, got 0
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:53 UTC → resolved 50 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:50 UTC → resolved 53 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:48 UTC → resolved 54 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:44 UTC → resolved 58 min ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:30 UTC → resolved 1.2 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:21 UTC → resolved 1.4 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    TICK_FAILED · dWTIOIL13 Sep 21:13 UTC → resolved 1.5 h ago
    dWTIOIL: tick failed: hawkeye view_bbo WTIOIL: Hawkeye return data expected at least 8 bytes, got 0
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 21:06 UTC → resolved 1.6 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 20:43 UTC → resolved 2.0 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 20:34 UTC → resolved 2.1 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 20:16 UTC → resolved 2.4 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:59 UTC → resolved 2.7 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:58 UTC → resolved 2.7 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:48 UTC → resolved 2.9 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:44 UTC → resolved 3.0 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:39 UTC → resolved 3.1 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:33 UTC → resolved 3.1 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:11 UTC → resolved 3.5 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:03 UTC → resolved 3.7 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 19:00 UTC → resolved 3.7 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:56 UTC → resolved 3.8 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:55 UTC → resolved 3.8 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:51 UTC → resolved 3.8 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:50 UTC → resolved 3.9 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:26 UTC → resolved 4.3 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:19 UTC → resolved 4.4 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 18:01 UTC → resolved 4.7 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 17:51 UTC → resolved 4.9 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 17:36 UTC → resolved 5.1 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 17:28 UTC → resolved 5.2 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    LEVERAGE_OUT_OF_BAND · dWTIOIL13 Sep 17:10 UTC → resolved 5.3 h ago
    dWTIOIL: leverage 1.01x outside band [1.80x, 2.30x] for 617s
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 17:01 UTC → resolved 5.7 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 16:47 UTC → resolved 5.9 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 16:46 UTC → resolved 5.9 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 16:46 UTC → resolved 5.9 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 16:44 UTC → resolved 6.0 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 16:19 UTC → resolved 6.4 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 16:09 UTC → resolved 6.5 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 15:55 UTC → resolved 6.8 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 15:52 UTC → resolved 6.8 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 15:44 UTC → resolved 7.0 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 15:36 UTC → resolved 7.1 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth
  • warning
    DEPTH_UNAVAILABLE · dWTIOIL13 Sep 15:23 UTC → resolved 7.3 h ago
    dWTIOIL: order-book depth unreadable; expansion is refused and defensive slices use the fallback depth

Event log

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

TimeKindStatusReasonLeverageAmountFill / markSlipTx
21 Jan 17:01 UTCMintconfirmeduser deposit5,000.00 USDC4jn8…Ud4P