Educational tool · moomoo OpenD

Wheel Strategy Calculator

Four tabs to study the wheel: a pre-market scanner of cash-secured puts on Stage-2 uptrend names, a CSP ROI calculator, a covered-call ROI calculator, and a shortlist that flags margin at risk if assigned. Live data comes from moomoo OpenD when the local server is running; otherwise a sample snapshot loads so you can still learn the calculator. This is for self-study only — not advice, not an offer, and not a forecast.

In simple terms

This scanner looks for US-listed stocks in an early Stage-2 uptrend — price surging away from the 20 & 30-day moving averages on expanding volume, with a rising 50/200-day stack. For each name it pulls an out-of-the-money put 15–20% below spot (your "discount to own"), estimates the premium, and shows the ROI. A discount is a margin of safety, not protection against loss. Scan results are for study, not a buy list.

  1. Stage-2 early filter: close > SMA20 > SMA30, surge ≥1.5%, volume ≥1.3× 50-day avg, 5-day return ≥3% or surge ≥3%, and SMA50 > SMA200 (Golden cross).
  2. OTM put 15–20% below spot, 30–45 DTE, premium from moomoo option snapshot.
  3. ROI cycle = net premium / (strike × 100) × 100; annualised if repeated — not a forecast.
moomoo checking… never

Scanner results — rows

Click → CSP to load a row into Tab 2, or ★ Save to push it to Tab 4. Click a column header to sort.

Symbol Name Sector Price MA 50/200 Discount % Est. Premium ROI IV % DTE Source Actions

In simple terms

A cash-secured put means you set aside cash and may receive a premium. If the share stays above your strike until expiry, the option can expire and you keep the net premium. If the share falls to or below the strike, you may have to buy 100 shares per contract — that is assignment.

  1. Net premium = gross premium − fees.
  2. Cycle return = net premium / (share price × 100 × contracts).
  3. Cash needed = strike × 100 × contracts. If buying power is less, margin may be at risk.
  4. Assignment risk is illustrated via the option delta when available, or the discount-to-strike heuristic otherwise.

Figures in USD. Convert to ringgit at your own FX rate. A buffer below spot is not protection against loss.

Put working sheet

Illustrated put math

Sample: 300 − 4.38 = 295.62 net, 1.97% versus 100 shares at 150, 20% below spot, 1.5% of a 1,000,000 account if assigned.

In simple terms

A covered call means you already hold 100 shares per contract. You may receive a premium for agreeing to sell those shares at the strike. If the share stays below the strike, you keep the shares and the net premium. If it rises above the strike, the shares can be called away — your extra upside is capped.

  1. You should already own the shares. This calculator does not buy shares for you.
  2. Net premium = gross premium − fees.
  3. Cycle return = net premium / (share price × 100 × contracts).
  4. Distance to being called = strike − today's share price.

This is not a sure income plan. Gaps, early assignment, and share losses can still happen.

Call working sheet

Illustrated call math

Uses the same account size and buying power you keyed on Tab 2. Please confirm you already hold 100 shares per contract.

In simple terms

This is your saved shortlist of cash-secured puts under study. Each row recomputes its margin-at-risk flag live against the buying power you set below, so you can see whether assignment would put margin at risk before you ever open the trade. Rows persist in this browser (localStorage). Nothing here is an order, a recommendation, or a forecast.

Buying power for the shortlist

Changing these updates every row's margin-at-risk pill. Pull from moomoo when the local server is running.

Committed cash vs available buying power.

Saved puts

Nothing saved yet. Save a row from Tab 1 or Tab 2.

Data sources & disclaimer