Stock Analysis
Generate plain-English daily and weekly stock market reports for AGI buildout
and defense/cyber sectors. Written for an everyday investor — no jargon, clear
recommendations, and honest "what does this mean for me?" analysis. Reports
are committed to this repo as dated markdown files with structured data snapshots.
Activation Trigger
Use this skill when:
- "run stock analysis" / "daily report" / "weekly report"
- "check stocks" / "market update" / "how are my stocks"
- "update watchlist" / "add ticker" / "remove ticker"
- "schedule stock analysis" / "start monitoring"
- "intraday check" / "quick market check" / "flash update"
Context to Check
- Last daily report: Run:
ls -t reports/daily/*.md 2>/dev/null | head -1 || echo "none"
- Last weekly report: Run:
ls -t reports/weekly/*.md 2>/dev/null | head -1 || echo "none"
- Watchlist tickers: Run:
cat config/watchlist.json 2>/dev/null | head -40 || echo "no watchlist"
- Today: Run:
date '+%Y-%m-%d (%A, week %V)' 2>/dev/null || echo "unknown"
- Active schedules: Run:
echo "Use CronList to check active schedules"
Output Format
When generating a daily report:
When generating a weekly report:
Instructions
Daily Report Workflow
Read prior state
- Read
reports/latest/daily.md for the previous daily report
- Read the most recent file in
data/snapshots/ for prior price data
- Read
config/watchlist.json for current tickers and targets
Gather data via web search (batch by sector, 5-8 tickers per search)
- Market indices: S&P 500, NASDAQ, SOX (semiconductor index), DJIA
- For each sector in
config/sectors.json, search for price action and news
- Search for earnings reports/guidance for any ticker reporting this week
- Search for macro events: Fed decisions, CPI, jobs data, GDP
- Search for sector catalysts: AI contracts, chip export rules, defense budgets, cyber incidents
- See data-sources.md for specific search patterns
Verify financial claims
- Cross-reference earnings/revenue numbers against SEC filings via WebFetch
- Flag any unverified numbers with
[UNVERIFIED] tag
- See fundamental-analysis.md for metric definitions
Analyze in plain English
- Compare current prices to prior report (how much did it move?)
- Check if stocks are in buy zones or trim zones from the watchlist
- For each sector, summarize: what happened and what it means
- Identify top 3 movers and explain WHY in everyday language
- Give each stock a clear "What to Do" label: Good Buy / Hold / On Sale / Caution / Stay Away
- See technical-analysis.md for how to assess price trends
- See fundamental-analysis.md for how to assess company health
Write daily report to reports/daily/YYYY-MM-DD.md
- Follow the daily template in report-templates.md
- Include backlink to prior report
Write data snapshot to data/snapshots/YYYY-MM-DD.json
- Structured JSON with indices, ticker prices, sector sentiment
Update latest by copying report to reports/latest/daily.md
Commit changes
git add reports/ data/
git commit -m "report(daily): YYYY-MM-DD market analysis"
Weekly Report Workflow
Runs on Saturdays. Includes everything in the daily workflow, plus:
- Read ALL daily reports from the past week (Mon-Fri)
- Read previous weekly report from
reports/latest/weekly.md
- Read all
data/snapshots/ files from the past 7 days
- Perform week-over-week trend analysis using snapshot data
- Write fundamental spotlight section for 2-3 companies with major events
- Write portfolio recommendation section with conviction levels
- Write upcoming week catalyst calendar
- Write to
reports/weekly/YYYY-WNN.md
- Update
reports/latest/weekly.md
- Commit with
report(weekly): YYYY-WNN comprehensive analysis
Intraday Flash Check
Lightweight check activated via /loop 30m during trading hours:
- WebSearch current prices for top-10 watchlist tickers (by conviction)
- Compare to today's daily report open prices
- Flag any moves > 2%
- Append flash update section to today's daily report
- Do NOT commit (batch at end of day)
Watchlist Management
- Add ticker: User says "add TICKER to watchlist" → prompt for sector, conviction, targets → update
config/watchlist.json → commit
- Remove ticker: Remove entry from watchlist → commit
- Update targets: Modify buy_zone/trim_zone → commit
- Change conviction: Update conviction/position fields → commit
- All watchlist changes committed separately:
chore(watchlist): add/remove/update TICKER
Setting Up Schedules
When user says "schedule stock analysis" or "start monitoring":
- Read
config/schedule.json for canonical cron expressions
- Use CronCreate for each schedule:
- Daily:
57 9 * * 1-5 (weekday mornings)
- Weekly:
23 10 * * 6 (Saturday)
- For intraday: Use CronCreate with
*/30 * * * * (user must explicitly request)
- Confirm active schedules via CronList
- Remind user that schedules auto-expire and can be re-created from
config/schedule.json
Tone & Style
This is critical. Reports are written for an everyday investor, not a Wall Street analyst.
- Use plain English. Say "the stock dropped because..." not "price action exhibited bearish divergence"
- Explain acronyms the first time: "P/E (price-to-earnings — how many years of profits you're paying for)"
- Use "What to Do" labels instead of trading signals: Good Buy, Hold, On Sale, Caution, Stay Away
- Include company names next to tickers: "NVDA (NVIDIA)" not just "NVDA"
- Explain WHY something matters, not just WHAT happened
- When recommending, be direct: "This is a good time to buy" or "Wait for a pullback"
- Don't hedge everything — give an actual opinion, then note the risks
- Keep tables readable — include the "What to Do" column, drop jargon columns like RSI/MACD
- Sector summaries should read like a friend explaining the market over coffee
Additional Resources
Consult these references as needed:
- sector-map.md — Full sector/ticker taxonomy with rationale
- data-sources.md — Web search patterns and URLs
- technical-analysis.md — TA indicator definitions
- fundamental-analysis.md — FA metrics and thresholds
- report-templates.md — Daily and weekly markdown templates
1---2name: stock-analysis3description: Run daily and weekly stock market analysis covering AGI buildout (data centers, semiconductors, cloud, power, cooling, networking) and defense/cyber sectors. Generates plain-English reports for everyday investors with clear buy/hold/watch recommendations, news summaries, earnings checks, and watchlist management for long-term investing and swing trades.4---56# Stock Analysis78Generate plain-English daily and weekly stock market reports for AGI buildout9and defense/cyber sectors. Written for an everyday investor — no jargon, clear10recommendations, and honest "what does this mean for me?" analysis. Reports11are committed to this repo as dated markdown files with structured data snapshots.1213## Activation Trigger1415Use this skill when:16- "run stock analysis" / "daily report" / "weekly report"17- "check stocks" / "market update" / "how are my stocks"18- "update watchlist" / "add ticker" / "remove ticker"19- "schedule stock analysis" / "start monitoring"20- "intraday check" / "quick market check" / "flash update"2122## Context to Check2324- **Last daily report**: Run: `ls -t reports/daily/*.md 2>/dev/null | head -1 || echo "none"`25- **Last weekly report**: Run: `ls -t reports/weekly/*.md 2>/dev/null | head -1 || echo "none"`26- **Watchlist tickers**: Run: `cat config/watchlist.json 2>/dev/null | head -40 || echo "no watchlist"`27- **Today**: Run: `date '+%Y-%m-%d (%A, week %V)' 2>/dev/null || echo "unknown"`28- **Active schedules**: Run: `echo "Use CronList to check active schedules"`2930## Output Format3132When generating a daily report:33- [ ] Prior daily report read and referenced34- [ ] All watchlist sectors covered with price data35- [ ] Market indices summarized (S&P 500, NASDAQ, SOX, DJIA)36- [ ] Top movers identified with % changes and reasons37- [ ] News and sentiment scored per sector38- [ ] Earnings/guidance verified against filings where applicable39- [ ] Data snapshot JSON written to `data/snapshots/`40- [ ] Report written and `reports/latest/daily.md` updated41- [ ] Changes committed to repo4243When generating a weekly report:44- [ ] All daily reports from the week reviewed45- [ ] Prior weekly report read and referenced46- [ ] Week-over-week deltas calculated from snapshot data47- [ ] Trend analysis across all sectors48- [ ] Portfolio recommendations with conviction levels49- [ ] Upcoming catalysts calendar included50- [ ] Report committed to repo5152## Instructions5354### Daily Report Workflow55561. **Read prior state**57 - Read `reports/latest/daily.md` for the previous daily report58 - Read the most recent file in `data/snapshots/` for prior price data59 - Read `config/watchlist.json` for current tickers and targets60612. **Gather data via web search** (batch by sector, 5-8 tickers per search)62 - Market indices: S&P 500, NASDAQ, SOX (semiconductor index), DJIA63 - For each sector in `config/sectors.json`, search for price action and news64 - Search for earnings reports/guidance for any ticker reporting this week65 - Search for macro events: Fed decisions, CPI, jobs data, GDP66 - Search for sector catalysts: AI contracts, chip export rules, defense budgets, cyber incidents67 - See [data-sources.md](references/data-sources.md) for specific search patterns68693. **Verify financial claims**70 - Cross-reference earnings/revenue numbers against SEC filings via WebFetch71 - Flag any unverified numbers with `[UNVERIFIED]` tag72 - See [fundamental-analysis.md](references/fundamental-analysis.md) for metric definitions73744. **Analyze in plain English**75 - Compare current prices to prior report (how much did it move?)76 - Check if stocks are in buy zones or trim zones from the watchlist77 - For each sector, summarize: what happened and what it means78 - Identify top 3 movers and explain WHY in everyday language79 - Give each stock a clear "What to Do" label: Good Buy / Hold / On Sale / Caution / Stay Away80 - See [technical-analysis.md](references/technical-analysis.md) for how to assess price trends81 - See [fundamental-analysis.md](references/fundamental-analysis.md) for how to assess company health82835. **Write daily report** to `reports/daily/YYYY-MM-DD.md`84 - Follow the daily template in [report-templates.md](references/report-templates.md)85 - Include backlink to prior report86876. **Write data snapshot** to `data/snapshots/YYYY-MM-DD.json`88 - Structured JSON with indices, ticker prices, sector sentiment89907. **Update latest** by copying report to `reports/latest/daily.md`91928. **Commit changes**93 ```94 git add reports/ data/95 git commit -m "report(daily): YYYY-MM-DD market analysis"96 ```9798### Weekly Report Workflow99100Runs on Saturdays. Includes everything in the daily workflow, plus:1011021. Read ALL daily reports from the past week (Mon-Fri)1032. Read previous weekly report from `reports/latest/weekly.md`1043. Read all `data/snapshots/` files from the past 7 days1054. Perform week-over-week trend analysis using snapshot data1065. Write fundamental spotlight section for 2-3 companies with major events1076. Write portfolio recommendation section with conviction levels1087. Write upcoming week catalyst calendar1098. Write to `reports/weekly/YYYY-WNN.md`1109. Update `reports/latest/weekly.md`11110. Commit with `report(weekly): YYYY-WNN comprehensive analysis`112113### Intraday Flash Check114115Lightweight check activated via `/loop 30m` during trading hours:1161171. WebSearch current prices for top-10 watchlist tickers (by conviction)1182. Compare to today's daily report open prices1193. Flag any moves > 2%1204. Append flash update section to today's daily report1215. Do NOT commit (batch at end of day)122123### Watchlist Management124125- **Add ticker**: User says "add TICKER to watchlist" → prompt for sector, conviction, targets → update `config/watchlist.json` → commit126- **Remove ticker**: Remove entry from watchlist → commit127- **Update targets**: Modify buy_zone/trim_zone → commit128- **Change conviction**: Update conviction/position fields → commit129- All watchlist changes committed separately: `chore(watchlist): add/remove/update TICKER`130131### Setting Up Schedules132133When user says "schedule stock analysis" or "start monitoring":1341351. Read `config/schedule.json` for canonical cron expressions1362. Use CronCreate for each schedule:137 - Daily: `57 9 * * 1-5` (weekday mornings)138 - Weekly: `23 10 * * 6` (Saturday)1393. For intraday: Use CronCreate with `*/30 * * * *` (user must explicitly request)1404. Confirm active schedules via CronList1415. Remind user that schedules auto-expire and can be re-created from `config/schedule.json`142143## Tone & Style144145**This is critical.** Reports are written for an everyday investor, not a Wall Street analyst.146147- Use plain English. Say "the stock dropped because..." not "price action exhibited bearish divergence"148- Explain acronyms the first time: "P/E (price-to-earnings — how many years of profits you're paying for)"149- Use "What to Do" labels instead of trading signals: Good Buy, Hold, On Sale, Caution, Stay Away150- Include company names next to tickers: "NVDA (NVIDIA)" not just "NVDA"151- Explain WHY something matters, not just WHAT happened152- When recommending, be direct: "This is a good time to buy" or "Wait for a pullback"153- Don't hedge everything — give an actual opinion, then note the risks154- Keep tables readable — include the "What to Do" column, drop jargon columns like RSI/MACD155- Sector summaries should read like a friend explaining the market over coffee156157## Additional Resources158159Consult these references as needed:160- [sector-map.md](references/sector-map.md) — Full sector/ticker taxonomy with rationale161- [data-sources.md](references/data-sources.md) — Web search patterns and URLs162- [technical-analysis.md](references/technical-analysis.md) — TA indicator definitions163- [fundamental-analysis.md](references/fundamental-analysis.md) — FA metrics and thresholds164- [report-templates.md](references/report-templates.md) — Daily and weekly markdown templates