Help /Reading the numbers

The campaign page

Open positions, break-evens, the price chart and the P/L profile, plus the full trade history.

One campaign, top to bottom: what it has earned, what is still open, what it is worth, and every trade that got it there. The page reads in five parts.

1. The header

  • Name, strategy and portfolio — all three editable in place.
  • Underlying price — the current spot, live.
  • VIX since last trade — a chip showing how far VIX has moved since its close on the day this campaign last traded, with that date beside it. Green means volatility has come in since you positioned; red means it is up 30% or more, and the premium you sized this trade around is not the premium available now.
  • Total P/L, and its three parts: Realized (closed lots, FIFO, net of commissions), Unrealized (open positions marked to market) and Dividends (net of withholding, shown only when there are any).
  • Total Capital — what the campaign ties up, labelled with the model in force (Reg-T or TIMS).
  • Break-even, with a checkbox that draws it on the chart. Two numbers: the break-even of the open position, and with realized — the same figure once the profit you have already banked is credited against it. The second is the honest one for a campaign you have been rolling for months.
  • P/L Profile — the checkbox that opens the risk graph next to the chart.
  • DTEs — one pill per open expiration, soonest first.

2. The charts

A 60-day candlestick chart of the underlying. Every open position has a Show checkbox that draws a horizontal line at its strike or cost basis, and the break-even toggle adds its own — that combination is how you see, at a glance, how much room the price has before something needs a decision.

Tick P/L Profile and a second chart opens beside it, sharing the same price scale so the two line up row for row. It plots profit and loss horizontally against underlying price vertically:

  • Dashed line — today. What the position is worth right now at each price, with all remaining time value in it.
  • Solid line — at the earliest expiry. The same position when the nearest leg expires; longer-dated legs are still priced with their remaining time value rather than assumed dead.
  • The line is coloured by gain or loss, and a dashed blue marker sits at the last close.

The gap between the two lines is the theta you are collecting. On a PMCC it is also why the header break-even and the curve's zero crossing agree — both are solved on the same model.

3. Open positions

One row per open position — unique per symbol, strike, expiration and call/put. You cannot edit these rows: they are derived from the trades below.

ColumnMeaning
ShowDraw this position's price line on the chart.
DTEDays until this leg expires.
TypeStock, call or put.
Position SizeSigned: positive is long, negative is short. Contracts for options, shares for stock.
Cost BasisWhat the position cost you, commissions included. A short position is a credit.
Current PriceThe live mark for the contract or share.
Strike, ExpiresContract terms; blank for stock.
DeltaPer contract. Stock is 1.00 by definition. Shorts carry the opposite sign to the equivalent long.
Unrealized P/LMark-to-market against the cost basis.
Time Value Extrinsic value — price minus intrinsic. On a short leg this is what you still have left to earn, and a short leg near zero here is the classic early-assignment setup.
ActionsExpire — see below.

The footer row gives the net credit or debit of everything open and the total delta per lot — the single number for "how long or short am I, really". A delta of 42 says the whole structure moves like 42 shares.

Expire and Expire All

Expire on a position closes the option at $0 dated on its expiration date and, if it finished in the money, records the resulting share assignment or exercise at the strike. Expire All in the footer does the same for every open option in one confirmation. Both show you exactly what will be written before saving anything. Full details in Recording trades.

4. The trades table

The full history, in order, with FIFO already applied: date/time, type, action, symbol, quantity, price, commission, strike, expiry, and a P/L column populated on the trades that closed something. Opening trades show no P/L — profit is not realized until a lot is closed against them, which is why a big premium sale looks like a zero here and shows up later.

  • Edit any row inline; the whole campaign recomputes on save.
  • Delete a row; same recompute.
  • Select rows with the checkboxes and Move them to another campaign on the same underlying.
  • Bulk Import opens the paste box for adding a block of trades at once.

5. Why some cells start as a dash

The page renders immediately from cached data, then fetches live prices and fills in current price, unrealized P/L, delta and time value. A - in one of those columns for a moment is the cache being honest about not having a price yet, not a missing position. If it never fills in, market data for that contract is genuinely unavailable — thinly traded strikes and far-dated expirations are the usual causes.

Something missing or wrong here? Tell us on the support page.