Agent skill

Options Payoff

by himself65 in himself65/finance-skills

Render an interactive options payoff chart — expiry P&L plus Black-Scholes theoretical value — with sliders for strikes, premium, IV, DTE, and spot.

MITAuto-check passed

Install Options Payoff

skills CLI
$ npx skills add himself65/finance-skills --skill options-payoff -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install himself65/finance-skills options-payoff --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/himself65/finance-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/market-analysis/skills/options-payoff .claude/skills/options-payoff && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
options-payoff
GitHub stars
3.4k
Token cost
~1.8k tokens
SKILL.md length
675 words
Files
4 (incl. references)
Skills in repo
19
Repo updated
First seen
Licence
MIT

At a glance

Render an interactive options payoff chart — expiry P&L plus Black-Scholes theoretical value — with sliders for strikes, premium, IV, DTE, and spot.

  • Works in 5 steps: Extract Strategy From User Input → Identify Strategy Type → Compute Payoffs → …
  • The user describes
  • SKILL.md covers Step 1: Extract Strategy From…, Step 2: Identify Strategy Type, Step 3: Compute Payoffs and Step 4: Render the Widget, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Options Payoff is an agent skill from himself65/finance-skills. Render an interactive options payoff chart — expiry P&L plus Black-Scholes theoretical value — with sliders for strikes, premium, IV, DTE, and spot. Use this skill whenever the user describes or shares an options position or strategy and wants to see how it makes or loses money: vertical, calendar, diagonal, or ratio spreads, butterflies, condors and iron condors, straddles, strangles, covered calls, protective or naked puts, or any multi-leg structure. This includes pasted strikes, premiums, and expiries…

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `README.md`, `references/bs_code.md` and `references/strategies.md`).

The repository describes itself as: A collection of skills for AI financial analysis. The licence is MIT.

When your agent uses it

  • The user describes
  • Shares an options position
  • Strategy and wants to see how it makes
  • Loses money: vertical

Example prompts

  • “show me the payoff”
  • “draw the P&L curve”
  • “/options-payoff”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Extract Strategy From User Input
  2. Identify Strategy Type
  3. Compute Payoffs
  4. Render the Widget
  5. Respond to User

What it can do on your machine

Read from SKILL.md and the folder at commit 01fc7b4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Options Payoff loads about 1.8k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 176 tokens; SKILL.md has 675 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~176
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from himself65/finance-skills at commit 01fc7b4, republished under its MIT licence (© himself65). 675 words, ~1,779 tokens.

Download SKILL.mdSave it as .claude/skills/options-payoff/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
options-payoff
description
Render an interactive options payoff chart — expiry P&L plus Black-Scholes theoretical value — with sliders for strikes, premium, IV, DTE, and spot. Use this skill whenever the user describes or shares an options position or strategy and wants to see how it makes or loses money: vertical, calendar, diagonal, or ratio spreads, butterflies, condors and iron condors, straddles, strangles, covered calls, protective or naked puts, or any multi-leg structure. This includes pasted strikes, premiums, and expiries, requests like "show me the payoff" or "draw the P&L curve", and broker screenshots (IBKR, TastyTrade, Robinhood). Use it even when details are partial — defaults fill the gaps.

Options Payoff Curve Skill

Generates a fully interactive HTML widget (via visualize:show_widget) showing:

  • Expiry payoff curve (dashed gray line) — intrinsic value at expiration
  • Theoretical value curve (solid colored line) — Black-Scholes price at current DTE/IV
  • Dynamic sliders for all key parameters
  • Real-time stats: max profit, max loss, breakevens, current P&L at spot

Step 1: Extract Strategy From User Input

When the user provides a screenshot or text, extract:

FieldWhere to find itDefault if missing
Strategy typeTitle bar / leg description"custom"
UnderlyingTicker symbolSPX
Strike(s)K1, K2, K3... in title or leg tablenearest round number
Premium paid/receivedFilled price or avg price5.00
QuantityPosition size1
Multiplier100 for equity options, 100 for SPX100
ExpiryDate in title30 DTE
Spot priceCurrent underlying price shown in the screenshot or textlive quote (see below); middle strike only if no quote is available
IVShown in greeks panel, or estimate from vega20%
Risk-free rate—4.3%

Spot for screenshots: spot is the underlying's current price, and broker screenshots often omit it or show it far from the strikes — don't read it off the strike labels. Use the price shown, else a live quote (the SPX probe below, or yfinance for other underlyings). Fall back to the middle strike only when no quote is available, and tell the user you did.

Current SPX reference price:

!`python3 -c "exec('try:\n import yfinance as yf\n p=yf.Ticker(\'^GSPC\').fast_info[\'lastPrice\']\n print(f\'SPX ≈ {p:.0f}\')\nexcept Exception:\n print(\'SPX price unavailable — check market data\')')"`

Step 2: Identify Strategy Type

Match to one of the supported strategies below, then read the corresponding section in references/strategies.md.

StrategyLegsKey Identifiers
butterflyBuy K1, Sell 2×K2, Buy K33 strikes, "Butterfly" in title
vertical_spreadBuy K1, Sell K2 (same expiry)2 strikes, debit or credit
calendar_spreadBuy far-expiry K, Sell near-expiry KSame strike, 2 expiries
iron_condorSell K2/K3, Buy K1/K4 wings4 strikes, 2 spreads
straddleBuy Call K + Buy Put KSame strike, both types
strangleBuy OTM Call + Buy OTM Put2 strikes, both OTM
covered_callLong 100 shares + Sell Call KStock + short call
naked_putSell Put KSingle leg
ratio_spreadBuy 1×K1, Sell N×K2Unequal quantities

For strategies not listed, use custom mode: decompose into individual legs and sum their P&Ls.


Step 3: Compute Payoffs

Black-Scholes Put Price
d1 = (ln(S/K) + (r + σ²/2)·T) / (σ·√T)
d2 = d1 - σ·√T
put = K·e^(-rT)·N(-d2) - S·N(-d1)
Black-Scholes Call Price (via put-call parity)
call = put + S - K·e^(-rT)
Butterfly Put Payoff (expiry)
if S >= K3: 0
if S >= K2: K3 - S
if S >= K1: S - K1
else: 0

Net P&L per share = payoff − premium_paid

Vertical Spread (call debit) Payoff (expiry)
long_call = max(S - K1, 0)
short_call = max(S - K2, 0)
payoff = long_call - short_call - net_debit
Calendar Spread Theoretical Value

Calendar cannot be expressed as a simple expiry function — always use BS pricing for both legs:

value = BS(S, K, T_far, r, IV_far) - BS(S, K, T_near, r, IV_near)

For expiry curve of calendar: near leg expires worthless, far leg = BS with remaining T.

Show full SKILL.md (253 more words)Show less
Iron Condor Payoff (expiry)
put_spread = max(K2-S, 0) - max(K1-S, 0)   // short put spread
call_spread = max(S-K3, 0) - max(S-K4, 0)  // short call spread
payoff = credit_received - put_spread - call_spread

Step 4: Render the Widget

Use visualize:read_me with modules ["chart", "interactive"] before building.

Required Controls (sliders)

Structure section:

  • All strike prices (K1, K2, K3... as needed by strategy)
  • Premium paid/received
  • Quantity
  • Multiplier (100 default, show for clarity)

Pricing variables section:

  • IV % (5–80%, step 0.5)
  • DTE — days to expiry (0–90)
  • Risk-free rate % (0–8%)

Spot price:

  • Full-width slider, range = [min_strike - 20%, max_strike + 20%], defaulting to ACTUAL current spot
Required Stats Cards (live-updating)
  • Max profit (expiry)
  • Max loss (expiry)
  • Breakeven(s) — show both for two-sided strategies
  • Current theoretical P&L at spot
Chart Specs
  • X-axis: SPX/underlying price
  • Y-axis: Total USD P&L (not per-share)
  • Blue solid line = theoretical value at current DTE/IV
  • Gray dashed line = expiry payoff
  • Green dashed vertical = strike prices (K2 center strike brighter)
  • Amber dashed vertical = current spot price
  • Fill above zero = green 10% opacity; below zero = red 10% opacity
  • Tooltip: show both curves on hover
Code template

Use this JS structure inside the widget, adapting pnlExpiry() and bfTheory() per strategy:

js
// Black-Scholes helpers (always include)
function normCDF(x) { /* Horner approximation */ }
function bsCall(S,K,T,r,sig) { /* standard BS call */ }
function bsPut(S,K,T,r,sig) { /* standard BS put */ }

// Strategy-specific expiry payoff (returns per-share value BEFORE premium)
function expiryValue(S, ...strikes) { ... }

// Strategy-specific theoretical value using BS
function theoreticalValue(S, ...strikes, T, r, iv) { ... }

// Main update() reads all sliders, computes arrays, destroys+recreates Chart.js instance
function update() { ... }

// Attach listeners
['k1','k2',...,'iv','dte','rate','spot'].forEach(id => {
  document.getElementById(id).addEventListener('input', update);
});
update();

Step 5: Respond to User

After rendering the widget, briefly explain:

  1. What strategy was detected and how legs were mapped
  2. Max profit / max loss at current settings
  3. One key insight (e.g., "spot is currently 950 pts below the profit zone, expiring tomorrow")

Keep it concise — the chart speaks for itself.


Reference Files

  • references/strategies.md — Detailed payoff formulas and edge cases for each strategy type
  • references/bs_code.md — Copy-paste ready Black-Scholes JS implementation with normCDF

Read the relevant reference file if you're unsure about payoff formula edge cases for a given strategy.

© himself65, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in plugins/market-analysis/skills/options-payoff of himself65/finance-skills.

  • SKILL.md
  • README.md
  • references/bs_code.md
  • references/strategies.md

Open the folder on GitHubat commit 01fc7b4

Compare with similar skills

Options Payoff next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Options Payoff compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Options Payoff this skillhimself65/finance-skills3.4k—~1.8kAutomated safety check: PassMIT
Options PayoffHKUDS/Vibe-Trading35k—~6.8kAutomated safety check: PassMIT
Optionsasgeirtj/system_prompts_leaks69k—~918Automated safety check: PassCC0-1.0
Chart Visualizationbytedance/deer-flow83k2 repos~840Automated safety check: PassMIT
Fin Options Payoffcriptogus/agent-evolve-network288—~992Automated safety check: PassMIT
Render Blockingthedaviddias/Front-End-Checklist74k—~430Automated safety check: PassMIT

Similar skills

  • Options Payoff

    HKUDS/Vibe-Trading

    Option P&L analysis methodology: payoff diagrams, breakeven calculation, multi-leg strategy visualization, and Greeks-based scenario analysis.

    35k GitHub stars~6.8k tokensUpdated today
    Business, Finance & HRAuto-check passed
  • Options

    asgeirtj/system_prompts_leaks

    Present multiple design options as a vertical stack of anchored turns

    69k GitHub stars~918 tokensUpdated today
    Auto-check passed
  • Chart Visualization

    bytedance/deer-flow

    Picks a suitable chart type from 26 options for your data, maps the data to that chart's parameters and generates a chart image through a JavaScript script.

    83k GitHub starsUsed in 2 repos~840 tokens
    Data & AnalyticsAuto-check passed
  • Fin Options Payoff

    criptogus/agent-evolve-network

    Parse an options strategy from text or a screenshot, compute its payoff via Black-Scholes, and render an interactive payoff-curve widget with live stats.

    288 GitHub stars~992 tokensUpdated 28 days ago
    Auto-check passed
  • Render Blocking

    thedaviddias/Front-End-Checklist

    A skill your agent uses when auditing slow page loads, heavy assets, or rendering delays related to Eliminate render-blocking resources.

    74k GitHub stars~430 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Interaction To Next Paint

    thedaviddias/Front-End-Checklist

    A skill your agent uses when auditing slow page loads, heavy assets, or rendering delays related to Optimize interaction to next paint.

    74k GitHub stars~441 tokensUpdated yesterday
    Frontend & DesignAuto-check passed

More from himself65/finance-skills

All 19 skills in this repo
  • Company Valuation

    himself65/finance-skills

    Estimate a public company's intrinsic value with DCF, relative (peer multiple), and sum-of-the-parts (SOTP) methods, then blend them into an implied share price with upside/downside vs the market…

    3.4k GitHub stars~3.3k tokensUpdated 3 days ago
    Auto-check passed
  • Earnings Preview

    himself65/finance-skills

    Build a pre-earnings briefing for a stock from Yahoo Finance data (yfinance): the upcoming report date and timing, consensus EPS and revenue estimates with their range, the beat/miss track record…

    3.4k GitHub stars~1.4k tokensUpdated 3 days ago
    Auto-check passed
  • Earnings Recap

    himself65/finance-skills

    Analyze a company's most recent (or a specified past) earnings report from Yahoo Finance data (yfinance): actual vs estimated EPS, surprise size, revenue and margin trends, and the stock's price…

    3.4k GitHub stars~1.7k tokensUpdated 3 days ago
    Auto-check passed
  • Estimate Analysis

    himself65/finance-skills

    Analyze sell-side analyst estimates and how they are changing, using Yahoo Finance data (yfinance): EPS and revenue consensus by period, estimate ranges and dispersion, revision trends over…

    3.4k GitHub stars~1.8k tokensUpdated 3 days ago
    Auto-check passed
  • Fintel Data

    himself65/finance-skills

    Query Fintel (fintel.io) institutional market data through its REST API or official MCP server.

    3.4k GitHub stars~2.2k tokensUpdated 3 days ago
    Auto-check: notes
  • Generative UI

    himself65/finance-skills

    Design system and templates for Claude's built-in generative UI — the showwidget tool that renders interactive HTML/SVG widgets inline in claude.ai conversations.

    3.4k GitHub stars~3.1k tokensUpdated 3 days ago
    Auto-check passed

Questions about Options Payoff

What does Options Payoff do?

Render an interactive options payoff chart — expiry P&L plus Black-Scholes theoretical value — with sliders for strikes, premium, IV, DTE, and spot. Options Payoff is an agent skill from himself65/finance-skills. Render an interactive options payoff chart — expiry P&L plus Black-Scholes theoretical value — with sliders for strikes, premium, IV, DTE, and spot.

When should I use Options Payoff?

Options Payoff fits situations like: the user describes; shares an options position; strategy and wants to see how it makes; loses money: vertical.

How do I install Options Payoff in Claude Code?

Run `npx skills add himself65/finance-skills --skill options-payoff -a claude-code`. Or copy the skill folder (plugins/market-analysis/skills/options-payoff in himself65/finance-skills) into .claude/skills/options-payoff in your project. Claude Code loads it when a task matches its description.

How do I install Options Payoff in Codex?

Run `npx skills add himself65/finance-skills --skill options-payoff -a codex`. Or copy the skill folder (plugins/market-analysis/skills/options-payoff in himself65/finance-skills) into .agents/skills/options-payoff in your project. Codex loads it when a task matches its description.

Can I use Options Payoff in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add himself65/finance-skills --skill options-payoff -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/options-payoff, .gemini/skills/options-payoff, .github/skills/options-payoff and .opencode/skills/options-payoff in your project.

What does Options Payoff need to run?

SKILL.md names no scripts, command-line tools or credentials: Options Payoff is instructions for the agent only. Our summary lists: Python 3.

Does Options Payoff access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Options Payoff safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Options Payoff use?

Options Payoff is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Options Payoff use?

About 1.8k tokens (SKILL.md is roughly 7.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.8k tokens, read only when the agent opens those files.

What are the alternatives to Options Payoff?

Skills that share tags, products or a category with Options Payoff: Options Payoff (HKUDS/Vibe-Trading, 35k stars), Options (asgeirtj/system_prompts_leaks, 69k stars), Chart Visualization (bytedance/deer-flow, 83k stars) and Fin Options Payoff (criptogus/agent-evolve-network, 288 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Options Payoff?

himself65 (a GitHub user) maintains it in himself65/finance-skills, which has 3,382 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 5, 2026.

Source: himself65/finance-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.