Docs / trading

The hedge workstation

How the dark workstation at /hedge composes hedges — intents, payoff chart, sizing, and the cost stack that's deducted from every scenario.

The workstation at /hedge is Hedgepit's whole product surface. It reads your existing perp / outcome positions, lets you stage a hedge against them on a live payoff chart, and fires the legs as one atomic batch.

This page covers what each part of the surface does. If you've already done the first trade walkthrough, this is the reference for the controls you'll touch every day.

Intents#

A pill bar above the chart picks the intent for the staged construction:

  • Protect — buy outcomes against an existing perp. You bring directional risk; the workstation suggests outcome legs that cover the tail.
  • Pair — build a perp + outcome combo from scratch. Both legs fire as one batched order.
  • Range — buy a basket of buckets across a multi-threshold market.

The picker auto-switches when you select a different underlying — e.g. if you switch to an asset with no live HIP-4 market, only the perp surface stays enabled.

Payoff chart#

The chart plots net PnL at every settlement price for the selected underlying. Two lines:

  • Perp PnL (no hedge) — what the bare perp pays at each price. Dotted.
  • After hedge · gain / loss — the same scenarios with the staged outcome legs and fees deducted. Green above the baseline, red below.

Markers along the curve label entry, current mark, threshold(s), liquidation, and any breakevens. Hover or tap to pin a settlement price — the execution rail's "At $X · net Y" row reads off the same anchor so you can ask "what does this look like at $90k?" and read the answer next to the chart.

Scenario strip#

Below the chart, four rows pin the headline numbers a hedger reads:

  • Worst case · the lowest "after hedge" PnL across a ±50% domain plus structural anchors (perp liq, threshold(s), entry, 0). Audit C3 widened this from ±25% because crypto routinely moves outside that band.
  • BE lower / BE upper · breakevens (binary hedges often have two — one each side of the threshold).
  • Best case · highest "after hedge" PnL across the same domain.

Each row shows the underlying price, the perp's bare PnL at that price, the after-hedge PnL, and ROE on the perp's margin.

Execution rail#

The right rail is the staging ticket — legs in order (perp first, then outcome legs), then the cost stack:

  • Outcome premium · $X · max $Y — the mid-priced premium and the worst-case premium after the IoC slip (mid + 2¢ per leg).
  • Perp notional · USD value of the staged perp leg, if any.
  • Fees + funding (est.) · all-in cost. Hover the label for a per-component breakdown.
  • At $X · net Y · only when you've pinned a price on the chart.
  • Max loss after hedge · worst-case after-hedge PnL across the sampled domain.
  • Perp liq · liquidation price for the perp leg (prefixed ~ when synthesised from the 1% maintenance-margin proxy).
  • Payout / notional · max outcome payout ÷ perp notional. Not a hedge-coverage metric — see the audit notes on what "hedged %" means.
  • Account value / Free margin · live HL state.

The rail's worst-case math deducts the same fees + funding total as the chart, so the headline numbers stay consistent.

Fees + funding breakdown#

The tooltip on "Fees + funding (est.)" lists every non-zero component:

  • Builder open · only when the perp is being newly opened (Pair mode). Existing perps already paid this.
  • Builder close (outcome max) · contracts × $1 × builder fee rate. Conservative: assumes every contract pays $1 at settle. Overstates the lose case where the contract pays $0.
  • HL perp taker (open / close · tier · bps) · HL classifies every perp pair server-side. The tooltip names the resolved tier:
    • standard → 4.5 bps (volatile underlying)
    • aligned → 3.6 bps (20% discount)
    • stable → 0.9 bps (80% discount; stablecoin underlying)
  • Funding over ~Xh · |notional × predicted rate × hours / interval hours|. Magnitude is reported as a sunk cost regardless of sign — a long pays positive funding and receives negative funding; the disclosure doesn't promise the rebate.

Per-user volume-tier discounts aren't modelled; the values shown are list prices.

Sizing#

The SizeStepper picks the contract count. Three inputs feed it:

  • A numeric field for an exact size.
  • A 0–100% slider whose 100% snaps to the lesser of:
    • Affordabilityfloor(free margin / unit cost).
    • Book depth at touch — cumulative ask-side size at every L2 level within the IoC slip ceiling (mid + 2¢). Shown inline under the slider; bucket baskets use the minimum depth across every selected bucket, since a batched IoC needs every leg to fill.
  • A Suggested · X ct button when the candidate offsets perp risk. Sized to cover the perp's loss at the hedge anchor:
    • For a long perp + NO-above-threshold hedge: |perp size × (threshold − mark)| is the dollar loss; the suggestion is that many contracts (each contract caps at $1).
    • Capped by depth-at-touch so the button can't recommend a size the book can't fill.

Pre-fire gates#

The CTA disables submit when any of the following is true:

  • Wallet disconnected (staging-only mode).
  • No legs staged (e.g. bucket basket with zero buckets selected).
  • A perp leg is staged but the underlying has no main USDC dex listing.
  • The outcome leg falls below HIP-4's size × min(p, 1−p) ≥ 10 USDH floor — the warning names the contracts needed at the current price.

Inline warnings also fire (but don't block submit) when:

  • Settles in under 10 minutes — spreads widen.
  • Max loss after hedge exceeds 25% of account value — consider downsizing.
  • Every bucket selected on a basket — premium > $1 redemption ≤ $1, a guaranteed loss.

Order fire#

Submit fires the perp leg first, then the outcome legs as one batched action. If the perp rests instead of filling (shouldn't happen for IoC but HL behaviour can change), the rail bails before the outcome legs fire and asks you to cancel the resting order manually.

If the perp fills but every outcome leg rejects (orphan), the rail surfaces a "Close orphaned [side] [underlying]" button that fires a single IoC at ±5% slip against the live mid.