Transparency
dTSLALocal
What backs the token, where the keeper’s lines are, and every action it has taken. Read straight from the keeper’s own records.
Action ladder
At what underlying move does each keeper action fire, from the latest snapshot and this token's policy.
- Band edge 1.80x−3.6% · $354.45Rebalance up to target (external session only)
- Margin ceiling 32.1% of notional−5.5% · $347.76Withdraw excess collateral to idle
- Band edge 2.30x+4.5% · $384.28Rebalance down to target (any hour)
- Margin floor 17.9% of notional+5.9% · $389.65Top up collateral from idle
- Hard delever 2.60x+8.3% · $398.22Emergency delever to target, market order
- Liquidation (est.)+20.7% · $443.87Phoenix liquidates the account; the stop and top-ups sit well before this
Computed from realised leverage 2.004x and venue equity at 24.9% of notional at mark $367.84, 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 3.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.
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.
Buffers and capacity
Idle USDC pays instant redemptions and Jupiter sells; collateral sits at Phoenix; the cap bounds TVL against Phoenix depth.
- LP supply
- 5,000 dTSLA
- NAV per token
- 0.998109 USDC
- Unrealised PnL
- −5.98 USDC
- Funding (annualised)
- —
Session
How the underlying is being priced right now.
The underlying exchange is closed. Phoenix prices the market from its own order flow, bounded to 1/max-leverage from the last external print. NAV marks to that price. Only defensive rebalances run; NAV shows "internal pricing".
- Mark
- $367.84
- Index
- none (no external print)
- Pool price
- no pool
- Premium to NAV
- —
- Realised vs target
- 2.004x / 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 5 s agostream ✓dMSTR:band ✓dMSTR:stop ✓dMSTR:tick ✓dNVDA:band ✓dNVDA:stop ✓dNVDA:tick ✓dTSLA:band ✓dTSLA:stop ✓dTSLA:tick ✓uMSTR:band ✓uMSTR:stop ✓uMSTR:tick ✓uNVDA:band ✓uNVDA:stop ✓uNVDA:tick ✓uTSLA:band ✓uTSLA:stop ✓uTSLA:tick ✓dMSTR:crank ✓dMSTR:guard ✓dNVDA:crank ✓dNVDA:guard ✓dTSLA:crank ✓dTSLA:guard ✓dUS100:band ✓dUS100:stop ✓dUS100:tick ✓dUS500:band ✓dUS500:stop ✓dUS500:tick ✓uMSTR:crank ✓uMSTR:guard ✓uNVDA:crank ✓uNVDA:guard ✓uTSLA:crank ✓uTSLA:guard ✓uUS100:band ✓uUS100:stop ✓uUS100:tick ✓uUS500:band ✓uUS500:stop ✓uUS500:tick ✓dMSTR:inflow ✓dMSTR:margin ✓dMSTR:redeem ✓dNVDA:inflow ✓dNVDA:margin ✓dNVDA:redeem ✓dTSLA:inflow ✓dTSLA:margin ✓dTSLA:redeem ✓dUS100:crank ✓dUS100:guard ✓dUS500:crank ✓dUS500:guard ✓uMSTR:inflow ✓uMSTR:margin ✓uMSTR:redeem ✓uNVDA:inflow ✓uNVDA:margin ✓uNVDA:redeem ✓uTSLA:inflow ✓uTSLA:margin ✓uTSLA:redeem ✓uUS100:crank ✓uUS100:guard ✓uUS500:crank ✓uUS500:guard ✓dMSTR:harvest ✗ 1dNVDA:harvest ✗ 1dTSLA:harvest ✗ 1dUS100:inflow ✓dUS100:margin ✓dUS100:redeem ✓dUS500:inflow ✓dUS500:margin ✓dUS500:redeem ✓uMSTR:harvest ✗ 1uNVDA:harvest ✗ 1uTSLA:harvest ✗ 1uUS100:inflow ✓uUS100:margin ✓uUS100:redeem ✓uUS500:inflow ✓uUS500:margin ✓uUS500:redeem ✓dUS100:harvest ✗ 1dUS500:harvest ✗ 1uUS100:harvest ✗ 1uUS500:harvest ✗ 1
- keeper-ahaltedv0.1.0 · test · heartbeat 20 min ago (stale)
Alerts
Raised by the keeper, resolved when the condition clears.
- warningTICK_FAILED · dTSLA12 Sep 23:03 UTC → resolved 16 s agodTSLA: tick failed: phoenix /exchange/markets -> 429
- warningTICK_FAILED · dTSLA12 Sep 23:00 UTC → resolved 4 min agodTSLA: tick failed: phoenix /exchange/markets -> 429
- warningTICK_FAILED · dTSLA12 Sep 22:14 UTC → resolved 49 min agodTSLA: tick failed: phoenix /exchange/markets -> 429
Event log
Every action planned, sent or observed for this token, newest first.
| Time | Kind | Status | Reason | Leverage | Amount | Fill / mark | Slip | Tx |
|---|---|---|---|---|---|---|---|---|
| 12 Sep 23:05 UTC | Crank | confirmed | crank: receipt 209s old, session impact | 2.00x → — | — | — | — | 49Dq…CCmL |
| 12 Sep 23:02 UTC | Crank | confirmed | crank: receipt 241s old, session impact | 2.00x → — | — | — | — | 26Cb…AvJz |
| 12 Sep 23:02 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:58 UTC | Crank | confirmed | first crank for dTSLA | 2.00x → — | — | — | — | 627d…E34a |
| 12 Sep 22:58 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:37 UTC | Crank | confirmed | crank: receipt 85s old, session impact | 2.00x → — | — | — | — | 4q2L…5SbX |
| 12 Sep 22:35 UTC | Crank | confirmed | crank: receipt 131s old, session impact | 2.00x → — | — | — | — | 5jsE…XEFB |
| 12 Sep 22:33 UTC | Crank | confirmed | crank: receipt 128s old, session impact | 2.00x → — | — | — | — | 3F7f…bsNu |
| 12 Sep 22:33 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:31 UTC | Crank | confirmed | crank: receipt 94s old, session impact | 2.00x → — | — | — | — | 4ZCc…Rvxs |
| 12 Sep 22:29 UTC | Crank | confirmed | crank: receipt 135s old, session impact | 2.00x → — | — | — | — | 5GKw…mAoX |
| 12 Sep 22:27 UTC | Crank | confirmed | crank: receipt 145s old, session impact | 2.00x → — | — | — | — | 3r7Y…Warz |
| 12 Sep 22:27 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:24 UTC | Crank | confirmed | attempt 1: Solana error #-32002; Decode this error by running `npx @solana/errors decode -- -32002 'X19jb2RlPS0zMjAwMiZsb2dzPSU1QlByb2dyYW0lMjBDb21wdXRlQnVkZ2V0MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJTIwaW52b2tlJTIwJTVCMSU1RCUyQyUyMFByb2dyYW0lMjBDb21wdXRlQnVkZ2V0MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJTIwc3VjY2VzcyUyQyUyMFByb2dyYW0lMjBDb21wdXRlQnVkZ2V0MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJTIwaW52b2tlJTIwJTVCMSU1RCUyQyUyMFByb2dyYW0lMjBDb21wdXRlQnVkZ2V0MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJTIwc3VjY2VzcyUyQyUyMFByb2dyYW0lMjBDSnhCUE44M2o3WXZIRHVMQ2FxOURkcnA5UUhxVkFBVTlUWFFHUFJCcEF0ViUyMGludm9rZSUyMCU1QjElNUQlMkMlMjBQcm9ncmFtJTIwbG9nJTNBJTIwSW5zdHJ1Y3Rpb24lM0ElMjBjcmFuayUyQyUyMFByb2dyYW0lMjBDSnhCUE44M2o3WXZIRHVMQ2FxOURkcnA5UUhxVkFBVTlUWFFHUFJCcEF0ViUyMGNvbnN1bWVkJTIwODIzMSUyMG9mJTIwMTM5OTcwMCUyMGNvbXB1dGUlMjB1bml0cyUyQyUyMFByb2dyYW0lMjBDSnhCUE44M2o3WXZIRHVMQ2FxOURkcnA5UUhxVkFBVTlUWFFHUFJCcEF0ViUyMGZhaWxlZCUzQSUyMGN1c3RvbSUyMHByb2dyYW0lMjBlcnJvciUzQSUyMDB4MTc3MyU1RCZhY2NvdW50cz1udWxsJnVuaXRzQ29uc3VtZWQ9ODUzMW4mbG9hZGVkQWNjb3VudHNEYXRhU2l6ZT1udWxsJnJldHVybkRhdGE9JTVCb2JqZWN0JTIwT2JqZWN0JTVEJmlubmVySW5zdHJ1Y3Rpb25zPW51bGwmcmVwbGFjZW1lbnRCbG9ja2hhc2g9bnVsbCZmZWU9bnVsbCZwcmVCYWxhbmNlcz1udWxsJnBvc3RCYWxhbmNlcz1udWxsJnByZVRva2VuQmFsYW5jZXM9bnVsbCZwb3N0VG9rZW5CYWxhbmNlcz1udWxsJmxvYWRlZEFkZHJlc3Nlcz1udWxs'` | 2.00x → — | — | — | — | 3KTF…jtXH |
| 12 Sep 22:22 UTC | Crank | confirmed | crank: receipt 214s old, session impact | 2.00x → — | — | — | — | 2Uy9…o6S4 |
| 12 Sep 22:22 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:19 UTC | Crank | confirmed | crank: receipt 119s old, session impact | 2.00x → — | — | — | — | 5Cu5…VLzB |
| 12 Sep 22:17 UTC | Crank | confirmed | crank: receipt 263s old, session impact | 2.00x → — | — | — | — | 4e7o…cPsq |
| 12 Sep 22:17 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:12 UTC | Crank | confirmed | first crank for dTSLA | 2.00x → — | — | — | — | Mmb3…y4pB |
| 12 Sep 22:12 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:07 UTC | Crank | confirmed | crank: receipt 137s old, session impact | 2.00x → — | — | — | — | 2vJj…vhEQ |
| 12 Sep 22:05 UTC | Crank | confirmed | crank: receipt 130s old, session impact | 2.00x → — | — | — | — | 5iNh…xQF8 |
| 12 Sep 22:05 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 22:03 UTC | Crank | confirmed | crank: receipt 145s old, session impact | 2.00x → — | — | — | — | 2gWy…NGrF |
| 12 Sep 22:00 UTC | Crank | confirmed | crank: receipt 114s old, session impact | 2.00x → — | — | — | — | 3yWs…Skaf |
| 12 Sep 22:00 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |
| 12 Sep 21:58 UTC | Crank | confirmed | crank: receipt 142s old, session impact | 2.00x → — | — | — | — | CTAD…gcJg |
| 12 Sep 21:56 UTC | Crank | confirmed | first crank for dTSLA | 2.00x → — | — | — | — | 2hom…aMnE |
| 12 Sep 21:56 UTC | Crank | skipped | the adaptor cannot place a conditional stop yet (#8); there is no keeper-independent backstop until it can, so keeper uptime is the only protection | — | — | — | — | — |