ib-portfolio-action-report
npx skills add https://github.com/staskh/trading_skills --skill ib-portfolio-action-report
Agent 安装分布
Skill 文档
IB Portfolio Action Report
Generate a comprehensive portfolio action report that analyzes all positions across Interactive Brokers accounts, fetches earnings dates, and provides traffic-light risk indicators (ð´ð¡ð¢) for each position.
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
Note: If
uvis not installed orpyproject.tomlis not found, replaceuv run pythonwithpythonin all commands below.
uv run python scripts/report.py [--port PORT] [--account ACCOUNT]
The script returns JSON to stdout with analyzed portfolio data including risk levels, earnings dates, technical indicators, and spread groupings.
Step 2: Format Report
Read templates/markdown-template.md for formatting instructions. Generate a markdown report from the JSON data and save to sandbox/.
Filename: ib_portfolio_action_report_{ACCOUNT}_{YYYY-MM-DD}_{HHmm}.md
Step 3: Report Results
Present critical findings to the user: red/yellow items requiring attention, top priority actions, and the saved report path.
Arguments
--port– IB port (default: 7496 for live trading)--account– Specific account ID to analyze (optional, defaults to all accounts)
JSON Output
The script returns structured JSON with:
generated– Timestampaccounts– List of account IDssummary– Red/yellow/green countsspreads– All positions grouped into spreads with risk level, urgency, and recommendationstechnicals– Technical indicators per symbol (RSI, trend, SMAs, MACD, ADX)earnings– Earnings dates per symbolprices– Current prices per symbolearnings_calendar– Upcoming earnings with account/position infoaccount_summary– Position and risk counts per account
Report Sections
- Critical Summary: Count of positions by risk level (ð´/ð¡/ð¢)
- Immediate Action Required: Positions expiring within 2 days
- Urgent – Expiring Within 1 Week: Short-term positions needing attention
- Critical Earnings Alert: Positions with earnings this week
- Earnings Next Week: Upcoming earnings exposure
- Expiring in 2 Weeks: Medium-term expirations
- Longer-Dated Positions: Core holdings with spread analysis
- Top Priority Actions: Numbered action items by urgency
- Position Size Summary: Account-level breakdown
- Earnings Calendar: Next 30 days of earnings dates
- Technical Analysis Summary: RSI, trend, SMAs, MACD, ADX for each underlying
Example Usage
# All accounts on live trading port
uv run python scripts/report.py --port 7496
# Specific account
uv run python scripts/report.py --port 7496 --account U790497
Dependencies
ib-asyncpandas-tayfinance