ib-collar
Scannednpx machina-cli add skill staskh/trading_skills/ib-collar --openclawIB Tactical Collar
Generate a tactical collar strategy report for protecting PMCC positions through earnings or high-risk events.
Prerequisites
User must have TWS or IB Gateway running locally with API enabled:
- Paper trading: port 7497
- Live trading: port 7496
Instructions
Step 1: Gather Data
uv run python scripts/collar.py SYMBOL [--port PORT] [--account ACCOUNT]
The script returns JSON to stdout with all position and scenario data.
Step 2: Format Report
Read templates/markdown-template.md for formatting instructions. Generate a markdown report from the JSON data and save to sandbox/.
Step 3: Report Results
Present key findings to the user: recommended put protection, cost/benefit, and the saved report path.
Arguments
SYMBOL- Stock symbol to analyze (must be in portfolio)--port- IB port (default: 7496 for live trading)--account- Specific account ID (optional, searches all accounts)
JSON Output
The script returns JSON with these key fields:
symbol,current_price- Basic infolong_strike,long_expiry,long_qty,long_cost- LEAPS positionshort_positions- List of short callsis_proper_pmcc,short_above_long- PMCC health flagsearnings_date,days_to_earnings- Earnings timingput_analysis- List of put scenarios with costs and P&L under gap up/flat/downunprotected_loss_10,unprotected_loss_15,unprotected_gain_10- LEAPS risk without collarvolatility- Historical volatility data
Report Sections
- Position Summary: Current PMCC structure (long calls, short calls)
- PMCC Health Check: Is structure proper (short > long strike) or broken?
- Earnings Risk: Next earnings date and days until event
- Put Duration Analysis: Comparison of short vs medium vs long-dated puts
- Collar Scenarios: Gap up, flat, gap down outcomes with each put duration
- Cost/Benefit Analysis: Insurance cost vs protection value
- Implementation Timeline: Step-by-step checklist with dates
- Recommendation: Optimal put strike and expiration
Key Concepts
Proper PMCC Structure:
- Long deep ITM LEAPS call
- Short OTM calls ABOVE long strike
- No additional margin required for collar
Broken PMCC Structure:
- Long call is now OTM (after crash)
- Short calls BELOW long strike require margin
- Collar still works but margin implications exist
Tactical Collar:
- Buy protective puts ONLY before high-risk events (earnings)
- Sell puts after event passes
- Balances income generation with crash protection
Put Duration Trade-offs:
- Short-dated: Cheaper, more gamma, but zero salvage on gap up
- Medium-dated (2-4 weeks): Best balance of cost, gamma, and salvage
- Long-dated: Preserves value on gap up, but expensive and less gamma
Example Usage
# Analyze NVDA position (defaults to production port 7496)
uv run python scripts/collar.py NVDA
# Analyze specific account
uv run python scripts/collar.py AMZN --account U790497
# Use paper trading port instead
uv run python scripts/collar.py NVDA --port 7497
Source
git clone https://github.com/staskh/trading_skills/blob/main/.claude/skills/ib-collar/SKILL.mdView on GitHub Overview
Generates tactical collar strategy reports to shield PMCC positions during earnings and high-risk events. It runs against a local IB API (TWS or IB Gateway) to gather position data, evaluate short and long strike relationships, and produce a markdown report with recommendations.
How This Skill Works
Run the collar.py script with SYMBOL and optional port/account to collect current PMCC data as JSON. The tool formats that data into a markdown report using templates/markdown-template.md and saves it under sandbox/, then presents a concise result with suggested put protection and cost/benefit.
When to Use It
- Ahead of quarterly earnings for a PMCC position to evaluate protection needs
- During high-risk events or volatility spikes affecting PMCC health
- When you want a structured cost/benefit analysis of collar protection
- For validation in paper trading (port 7497) before live deployment
- When integrating with TWS/IB Gateway for live portfolio monitoring
Quick Start
- Step 1: Gather Data - uv run python scripts/collar.py SYMBOL [--port PORT] [--account ACCOUNT]
- Step 2: Format Report - Read templates/markdown-template.md and generate a markdown report saved to sandbox/
- Step 3: Report Results - Review key findings, recommended put protection, and the report path
Best Practices
- Ensure TWS or IB Gateway is running locally with API enabled and the correct port (live: 7496, paper: 7497)
- Use the SYMBOL that exists in your portfolio to avoid mismatched data
- Check the PMCC health flags is_proper_pmcc and short_above_long before relying on the output
- Compare short/duration put scenarios (short, medium, long) to balance cost and salvage
- Run the analysis first in paper trading to validate results before enabling live usage
Example Use Cases
- Analyze NVDA ahead of earnings to build a tactical collar around a PMCC position
- Generate a collar report for AMZN using a specific account ID (e.g., U790497)
- Use paper trading port 7497 to test collar scenarios without risking real capital
- Assess SPY PMCC with LEAPS around a known high-volatility event
- Evaluate a high-growth stock with long-dated LEAPS and short calls to quantify protection