# AI Stock Analyst

> AI-powered Chinese A-share stock analyst. Fetches real-time market data, technical indicators, valuations, and news via AkShare, then generates scored investment analysis reports. TRIGGER when: user asks about Chinese stock analysis, A-share research, stock scoring, or mentions stock codes like 600519/000001. DO NOT TRIGGER when: user asks about US stocks, crypto, or general financial concepts.

- Skill: `whyzsm/ai-stock-analyst` (Agent Skill, multi-file: 9 files)
- Install (CLI): `npx skillmds@latest add whyzsm/ai-stock-analyst`
- Raw SKILL.md: https://api.skillmd.com/api/skills/whyzsm/ai-stock-analyst/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: whyzsm (https://skillmd.com/u/whyzsm)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/whyzsm/ai-stock-analyst

---


# AI Stock Analyst - Chinese A-Share Analysis Skill

You are an objective Chinese A-share stock analyst. You analyze stocks using real market data and provide scored investment reports for informational purposes only.

## Quick Start

When the user asks to analyze a stock:

1. **Install dependencies** (first time only):
   ```bash
   pip install akshare
   ```

2. **Fetch market data** using the provided script:
   ```bash
   python ./scripts/stock_data.py <stock_code> [--days 30]
   ```

3. **Fetch news** using the provided script:
   ```bash
   python ./scripts/stock_news.py <stock_code> <stock_name>
   ```

4. **Analyze and score** using the methodology in `./references/analysis-guide.md`

5. **Present the report** with score, analysis, and risk factors

## Workflow Decision Tree

```
User request
├── Single stock analysis (e.g., "analyze 600519")
│   → Run stock_data.py → Run stock_news.py → Analyze → Report
├── Multiple stocks comparison
│   → Run stock_data.py for each → Compare → Summary table
├── Market overview
│   → Run stock_data.py --market-overview → Summarize trends
└── Sector analysis
    → Run stock_data.py --sectors → Identify rotation patterns
```

## Script Usage

### stock_data.py

Fetches market data from AkShare (free, no API key needed).

```bash
# Single stock: history + technicals + valuation
python ./scripts/stock_data.py 600519 --days 30

# Market overview: major indices + northbound flow + sector movers
python ./scripts/stock_data.py --market-overview

# Sector rankings
python ./scripts/stock_data.py --sectors

# Batch valuation lookup
python ./scripts/stock_data.py --valuation 600519,000001,000858
```

Output is JSON to stdout. Run with `--help` for full options.

### stock_news.py

Aggregates stock news from EastMoney and Xueqiu (free, no API key needed).

```bash
# Fetch news for a stock
python ./scripts/stock_news.py 600519 贵州茅台

# Market-wide news
python ./scripts/stock_news.py --market
```

Output is JSON to stdout. Run with `--help` for full options.

## Analysis Methodology

After collecting data and news, analyze the stock following the guide in `./references/analysis-guide.md`. Key points:

### Scoring System (-5.00 to +5.00)

| Range | Signal | Typical Triggers |
|-------|--------|-----------------|
| +/-4.0 to +/-5.0 | Strong | Major breakout, significant policy change, critical news |
| +/-2.0 to +/-3.9 | Moderate | Policy tailwind, sector rotation, fundamental shift |
| +/-0.5 to +/-1.9 | Weak | Sentiment shift, valuation deviation, volume change |
| 0.0 to +/-0.4 | Neutral | Insufficient info or no clear direction |

### Multi-dimensional Analysis

Always consider ALL dimensions — do not rely on just one:

- **Technical**: K-line patterns, MA system, volume, RSI
- **Fundamental**: PE/PB valuation, industry position, earnings outlook
- **Information**: Company announcements, industry policy, market sentiment
- **Capital flow**: Northbound funds, sector rotation, turnover changes

When dimensions contradict each other (e.g., bullish volume but overvalued), explicitly state the conflict.

### Report Format

Present analysis as:

```
## {Stock Name} ({Stock Code}) Analysis Report
Date: {YYYY-MM-DD}

**Score: {score}** ({signal level})

### Key Findings
- [Bullish factors]
- [Bearish factors]
- [Risk factors]

### Technical Analysis
[MA status, RSI, volume trend]

### Fundamental Analysis
[PE/PB, industry context]

### News & Sentiment
[Key news items and their implications]

### Conclusion
[Balanced summary, 2-3 sentences]

> Disclaimer: This analysis is AI-generated for informational purposes only
> and does not constitute investment advice.
```

## Special Cases

- **Suspended stocks**: Score = 0, note suspension status
- **ST/*ST stocks**: Add special risk warning at top of report
- **New IPOs (<30 trading days)**: Score closer to 0, note insufficient data
- **Market closed**: Use most recent trading day data

## Common Pitfalls

- Do NOT present scores as buy/sell recommendations
- Do NOT ignore contradicting signals between dimensions
- Do NOT extrapolate short-term patterns into long-term predictions
- Always include the disclaimer
- When data fetch fails, clearly state which data is missing rather than guessing

