All skills
staskh avatar

/scanner-pmcc

@b6c1909
by staskhstaskh/trading_skills373 stars
85

Scan stocks for Poor Man's Covered Call (PMCC) suitability. Analyzes LEAPS and short call options for delta, liquidity, spread, IV, yield, trend direction, and earnings proximity. Use when user asks about PMCC candidates, diagonal spreads, or LEAPS strategies.

Use this Skill: https://skilld.dev/gh/staskh/trading_skills/scanner-pmcc

This session only. Nothing lands on disk.

templatesmarkdown-template.md

≈1.6k tokens on demand. Your agent reads this file only when SKILL.md points to it.

PMCC Scan Report — Claude Generation Template

This file defines the structure and requirements for Claude-generated PMCC reports. When the user requests a report, run the scanner to get JSON data, then generate the markdown report below using your analysis — not mechanical string formatting.


Report Structure

Header

# PMCC Scan Report
**Generated:** {generated_at}
**Symbols:** {comma-separated list}
**Criteria:** LEAPS ≥ {min_leaps_days}d · LEAPS δ {leaps_target_delta} · Short δ {short_target_delta}

Section 1 — Scan Summary Table

One row per symbol, sorted by pmcc_score descending. Use these exact columns:

Symbol Industry Price IV% Capital Ann. Yield Trend Earnings Weeklies PMCC Score

Column definitions:

  • Symbol — ticker
  • Industry — industry (falls back to sector); "N/A" if unknown
  • Price — current stock price (price)
  • IV% — ATM implied volatility (iv_pct)
  • Capital — LEAPS cost basis (leaps.mid × 100, formatted as $X,XXX)
  • Ann. Yield — annualized short-call yield estimate (metrics.annual_yield_est_pct)
  • Trend — derive from score_breakdown.trend_delta: ≥1.5 → Bullish, ≤-1.5 → Bearish, >0 → Leaning Bull, <0 → Leaning Bear, 0 → Neutral
  • Earnings — days to next earnings from earnings_date; flag with ⚠ if < 30 days; "passed" if in the past; "N/A" if unknown
  • Weeklies — has_weeklies: "Yes" / "No" (No costs −1 in the score)
  • PMCC Score — pmcc_score/max_possible_score

Section 2 — Per-Symbol Detail Sections

One section per symbol, in the same order as the summary table. Each section contains:

2a. Section Header
### {SYMBOL} — Score {pmcc_score}/{max_possible_score}

Follow the header with a one-line italicized company description from description (omit if null).

2b. Indicators

Report every trend indicator the scorer actually consumed, from score_breakdown.trend (keys such as sma50, rsi, macd). One bullet per indicator, e.g. - SMA50: price above (+1.0). Keep this list in sync with whatever indicators appear in score_breakdown.trend — do not hardcode the set.

2c. LEAPS Table
Expiry Strike Delta IV% Last Bid Ask Mid Capital

Populate from leaps.*. IV% = leaps.iv × 100. Flag off-hours data: if leaps.bid == 0 and leaps.ask == 0, add note: ⚠ No live bid/ask — using last price.

2d. Short Call Table
Expiry Strike Delta IV% Last Bid Ask Mid Premium Yield%

Populate from short.*. Premium = short.mid × 100. Yield% = metrics.short_yield_pct. Flag wide spreads: if short.spread_pct > 20, add note: ⚠ Wide spread — use limit order at mid.

2e. Suggested PMCC Setup

Short bullet list:

  • Buy: {leaps.expiry} ${leaps.strike}C @ ${leaps.mid} (δ {leaps.delta})
  • Sell: {short.expiry} ${short.strike}C @ ${short.mid} (δ {short.delta})
  • Net Debit: ${metrics.net_debit} | Max Risk: ${metrics.capital_required}
  • Max Profit: ${metrics.max_profit} | Ann. Yield Est.: {metrics.annual_yield_est_pct}%
2f. Strengths

Bullet list of positive scoring factors from score_breakdown. Include:

  • Delta accuracy (LEAPS and short)
  • Liquidity (if scoring > 0)
  • Spread quality (if scoring > 0)
  • IV level and why it matters for this setup
  • Yield quality
  • Trend indicators that are positive
  • Earnings clearance

Write each as a human-readable sentence, not a raw score string. Example:

  • ✓ LEAPS delta 0.787 is on target (±0.05 of 0.80)
  • ✓ Strong bullish trend: price above SMA50, RSI 76.8, MACD positive
2g. Weaknesses

Bullet list of zero or negative scoring factors. Same style as Strengths. If there are no weaknesses, write: No material weaknesses identified.

Highlight these risk factors explicitly when present:

  • LEAPS liquidity: if vol+OI < 20, warn that fills may be difficult
  • LEAPS no bid/ask: warn to confirm live market before entering
  • Wide short spread (>20%): warn about slippage
  • Earnings within short expiry: warn IV crush / gap risk
  • High IV (>70%): warn expensive entry, IV crush exposure
  • Bearish trend: note momentum is against the position
  • No weekly options (weekly_options_delta = −1): warn that roll/adjustment cadence is limited to monthly expiries
  • Thin strike density (strike_density_delta < 0): warn that few strikes between spot and short limit strike selection and rolls
  • Thin short premium (short_premium_delta < 0): warn the credit collected is too small to justify the assignment/transaction risk
2h. Verdict

One paragraph (3–5 sentences) synthesizing the setup. Cover:

  1. Go / No-go recommendation with confidence level
  2. The single most important supporting reason
  3. The single biggest risk or watch item
  4. Specific action advice (e.g., "use limit at mid", "wait for post-earnings reset", "confirm live bid before entry")

Lead with a bold label:

  • Go — score ≥ 12
  • Go with notes — score 10–11
  • Proceed with caution — score 6–9
  • No-go — score < 6

Separator: --- between each symbol section.


Tone and Style Requirements

  • Write like an experienced options trader reviewing setups for a colleague
  • Be direct and specific — reference actual numbers (deltas, spreads, IV%, etc.)
  • Flag risks clearly, don't soften important warnings
  • Keep each verdict paragraph tight: 3–5 sentences max
  • No generic filler ("this is a solid stock" without data to back it)
  • Earnings proximity warnings must be explicit and actionable

File Naming Convention

When saving to disk:

sandbox/PMCC_Scan_YYYY-MM-DD_HHmm.md

Use the generated_at timestamp from the JSON output.


What NOT to include

  • Do not reproduce the raw JSON or score breakdown strings verbatim
  • Do not include implementation details (Black-Scholes, scoring algorithm internals)
  • Do not speculate about future price direction beyond what the technicals indicate
  • Do not recommend position sizing — that's the trader's job

Source: SKILL.md on GitHub

No alerts12d5 checks · Risk SAFE
  • Gen Agent Trust Hub12d

    This skill is a financial analysis tool for identifying Poor Man's Covered Call (PMCC) options candidates. It fetches market data via the yfinance library and analyzes symbols provided by the user. The skill operates within its stated purpose, uses established libraries, and shows no signs of malicious intent or security vulnerabilities.

  • Socket12d

    No alerts

  • Snyk12d

    Risk: LOW · No issues

  • Runlayer7mo

    2 files scanned · No issues

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at b6c1909. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 days ago.

Activeupdated 3 months ago
dependencies
[
  "trading-skills"
]

README badge

README badge for staskh/trading_skills/scanner-pmcc