AI-powered portfolio management system for Indian equities. Built as Claude Code skills — scans markets, analyses stocks, monitors positions, and executes trades via Groww API.
The eye that reads the market.
/market-scan → Deep research, finds opportunities → watchlist.json
/portfolio-sweep → Monitors positions, proposes trades → portfolio.json
stock_analyser.py → Hybrid yfinance + Groww analysis engine (TA-Lib)
trading_client.py → Groww API wrapper for execution
| Source | What | Speed |
|---|---|---|
| yfinance | Fundamentals, historical OHLCV, screening | Free, 15-min delayed |
| Groww API | Real-time quotes, market depth, OI, options, order execution | Paid, real-time |
| TA-Lib | RSI, MACD, Bollinger, ADX, Stochastic, S/R, Fibonacci, candlestick patterns | Local computation |
conda create -n pygeneral python=3.13
conda activate pygeneral
pip install yfinance pandas numpy growwapi pyotp
# TA-Lib requires system install first: brew install ta-lib
pip install TA-Libmkdir -p ~/.claude/trading
cat > ~/.claude/trading/.env << 'EOF'
GROWW_API_KEY=your_totp_token_jwt
GROWW_API_SECRET=your_totp_base32_secret
EOFGet keys from: https://groww.in/trade-api (use TOTP flow for no-expiry auth)
cp skills/*.md ~/.claude/commands/mkdir -p ~/.claude/trading
echo '{"holdings": {}, "last_updated": ""}' > ~/.claude/trading/portfolio.json
echo '{"last_scan": "", "macro_theme": "", "stocks": {}}' > ~/.claude/trading/watchlist.json
echo '{"trades": []}' > ~/.claude/trading/trade_log.json
cat > ~/.claude/trading/risk_rules.json << 'EOF'
{
"max_position_pct": 5,
"max_stock_allocation_pct": 10,
"max_open_positions": 10,
"default_stop_loss_pct": 7,
"trail_sl_to_breakeven_after_pct": 5,
"daily_loss_limit_pct": 3,
"no_averaging_down": true,
"max_sector_allocation_pct": 30,
"min_market_cap_cr": 500
}
EOF# Daily research scan
claude "/market-scan"
# Frequent position check
claude "/portfolio-sweep"
# Direct analysis
python stock_analyser.py ONGC TCS RELIANCE --mode full
# Trading client
python trading_client.py holdings
python trading_client.py quote ONGC
python trading_client.py buy ONGC 25 --price 265
python trading_client.py option-chain NIFTY 2026-03-17/market-scan(daily) — WebSearch for macro themes, find second-order beneficiaries, run technicals, update watchlist/portfolio-sweep(frequent) — Check holdings against SL/targets, scan watchlist for entry signals, propose trades- User approves — Never executes without explicit approval
- State persists — All decisions logged in trade_log.json for learning
This is a personal trading tool, not financial advice. Use at your own risk.