Skip to content

Latest commit

 

History

History
302 lines (205 loc) · 14.2 KB

File metadata and controls

302 lines (205 loc) · 14.2 KB

AI Stock Analysis System

GitHub stars CI License: MIT Python 3.10+ GitHub Actions Docker

ZhuLinsen%2Fdaily_stock_analysis | Trendshift Featured|HelloGitHub

AI-powered stock analysis system for A-shares / Hong Kong / US stocks

Analyze your watchlist daily -> generate a decision dashboard -> push to Telegram / Discord / Slack / Email / WeChat Work / Feishu.

Key Features · Quick Start · Sample Output · Full Guide · FAQ · Changelog

English | 简体中文 | 繁體中文

💖 Sponsors


✨ Key Features

Module Feature Description
AI Decision Dashboard One-sentence conclusion + score + entry/exit levels + risk alerts + action checklist
Analysis Multi-dimensional Analysis Technicals, realtime quotes, chip distribution, news sentiment, announcements, capital flow, and fundamentals
Market Global Markets A-shares, Hong Kong stocks, US stocks, US indices, and common ETFs
Strategy Market Strategy System A-share review, US regime strategy, moving averages, Chan theory, Elliott wave, and sentiment-cycle support
Review Market Review Daily market overview, index performance, breadth, and sector strength
Web Dual-theme Workspace Manual analysis, settings, task progress, history, backtest, and portfolio management
Import Smart Import & Autocomplete Image, CSV/Excel, and clipboard import; search by code, name, pinyin, and aliases
History Report Management Full Markdown reports, rerun analysis, history browsing, and batch management
Backtest AI Backtest Validation Validate historical analysis with directional accuracy and simulated return views
Agent Q&A Strategy Chat Multi-turn strategy chat with 11 built-in strategies across Web/Bot/API
Notifications Multi-channel Push WeChat Work, Feishu, Telegram, Discord, Slack, Email, and more
Automation Scheduled Runs GitHub Actions, Docker, local scheduler, and FastAPI service mode

Detailed fields, fundamental P0 timeout semantics, trading rules, data-source priority, Web/API behavior, and troubleshooting live in the Full Guide.

Tech Stack & Data Sources

Type Supported
AI Models AIHubMix, Gemini, OpenAI-compatible providers, DeepSeek, Qwen, Claude, Ollama
Market Data TickFlow, AkShare, Tushare, Pytdx, Baostock, YFinance, Longbridge
News Search Anspire, SerpAPI, Tavily, Bocha, Brave, MiniMax, SearXNG
Social Sentiment Stock Sentiment API for Reddit / X / Polymarket, US stocks only

Full behavior is documented in Data Source Configuration.

🚀 Quick Start

Option 1: GitHub Actions (Recommended)

Deploy in about 5 minutes, with no server and no infrastructure cost.

1. Fork this repository

Click Fork in the upper-right corner. A star is very welcome if this project helps you.

2. Configure Secrets

Open your forked repository, then go to Settings -> Secrets and variables -> Actions -> New repository secret.

AI model configuration (configure at least one)

Start with one provider and one API key. For multi-model routing, image recognition, local models, or advanced routing, see the LLM Config Guide.

Recommended: AIHubMix. One key can access Gemini, GPT, Claude, DeepSeek, and other mainstream models without extra network setup. This project gets a 10% top-up discount.

Secret Name Description Required
AIHUBMIX_KEY AIHubMix API key, one key for multiple model families Optional
GEMINI_API_KEY Google Gemini API key Optional
ANTHROPIC_API_KEY Anthropic Claude API key Optional
OPENAI_API_KEY OpenAI-compatible API key, including DeepSeek and Qwen-compatible services Optional
OPENAI_BASE_URL / OPENAI_MODEL Fill these when using an OpenAI-compatible provider Optional

Ollama is better suited for local or Docker deployment. GitHub Actions is usually smoother with a cloud API.

Notification channels (configure at least one)

Secret Name Description
WECHAT_WEBHOOK_URL WeChat Work bot
FEISHU_WEBHOOK_URL Feishu bot
TELEGRAM_BOT_TOKEN + TELEGRAM_CHAT_ID Telegram
DISCORD_WEBHOOK_URL Discord webhook
SLACK_BOT_TOKEN + SLACK_CHANNEL_ID Slack bot
EMAIL_SENDER + EMAIL_PASSWORD Email push

More channels, signatures, email groups, and Markdown-to-image settings are in Notification Configuration.

Watchlist (required)

Secret Name Description Required
STOCK_LIST Watchlist codes, such as 600519,hk00700,AAPL,TSLA

News sources (recommended)

News search strongly improves sentiment, announcements, events, and catalyst quality. Configure at least one search provider if possible.

Secret Name Description Required
ANSPIRE_API_KEYS Anspire AI Search, optimized for Chinese content and A-share analysis Recommended
SERPAPI_API_KEYS SerpAPI, search-engine results for realtime financial news Recommended
TAVILY_API_KEYS Tavily, general news search API Optional
BOCHA_API_KEYS Bocha, Chinese search with AI summaries Optional
BRAVE_API_KEYS Brave Search, privacy-first search and US-stock news enrichment Optional
MINIMAX_API_KEYS MiniMax, structured search results Optional
SEARXNG_BASE_URLS Self-hosted SearXNG instances for quota-free fallback Optional

More search providers, social sentiment, and fallback behavior are in Search Configuration.

3. Enable Actions

Open the Actions tab and click I understand my workflows, go ahead and enable them.

4. Manual Test

Actions -> Daily Stock Analysis -> Run workflow -> Run workflow.

Done

By default, the workflow runs every weekday at 18:00 Beijing time and skips non-trading days. Forced runs, trading-day checks, and resume rules are covered in the Full Guide.

Option 2: Local / Docker Deployment

# Clone the project
git clone https://github.com/ZhuLinsen/daily_stock_analysis.git && cd daily_stock_analysis

# Install dependencies
pip install -r requirements.txt

# Configure environment variables
cp .env.example .env && vim .env

# Run analysis
python main.py

Common commands:

python main.py --debug
python main.py --dry-run
python main.py --stocks 600519,hk00700,AAPL
python main.py --market-review
python main.py --schedule
python main.py --serve-only

Docker deployment, scheduling, and cloud-server WebUI access are documented in the Full Guide.

📱 Sample Output

Decision Dashboard

🎯 2026-02-08 Decision Dashboard
Analyzed 3 stocks | 🟢 Buy:0 🟡 Watch:2 🔴 Sell:1

📊 Summary
🟡 000657: Watch | Score 65 | Bullish
🟡 600105: Watch | Score 48 | Range-bound
🔴 300260: Sell | Score 35 | Bearish

🚨 Risk Alerts:
Risk 1: Main-force funds showed notable outflow.
Risk 2: Chip concentration suggests short-term resistance.

✨ Positive Catalysts:
Catalyst 1: AI-server supply-chain exposure remains a market focus.
Catalyst 2: Recent earnings growth provides fundamental support.

Market Review

🎯 2026-01-10 Market Review

📊 Major Indices
- SSE Composite: 3250.12 (+0.85%)
- SZSE Component: 10521.36 (+1.02%)
- ChiNext: 2156.78 (+1.35%)

📈 Market Breadth
Up: 3920 | Down: 1349 | Limit up: 155 | Limit down: 3

⚙️ Configuration

Full environment variables, model routing, notification channels, data-source priority, trading rules, fundamental P0 semantics, and deployment details are in the Full Guide.

🖥️ Web UI

FastAPI Web UI

The Web workspace supports settings, task monitoring, manual analysis, history reports, backtest, portfolio management, smart import, and light/dark themes.

python main.py --webui
python main.py --webui-only

Visit http://127.0.0.1:8000. Authentication, smart import, autocomplete, report copying, and cloud-server access are documented in Local WebUI Management.

🤖 Agent Strategy Chat

After configuring any available AI API key, the Web /chat page can use strategy chat. Set AGENT_MODE=false only if you want to disable it explicitly.

  • Built-in strategies include moving-average crossovers, Chan theory, Elliott wave, bull trend, and more
  • Calls realtime quotes, K-line data, technical indicators, news, and risk context
  • Supports follow-up questions, session export, notification sending, and background execution
  • Supports custom strategy files and experimental multi-agent orchestration

Agent parameters, skill naming compatibility, multi-agent mode, and budget guards are covered in the Full Guide and LLM Config Guide.

Related Projects

DSA focuses on daily analysis reports. These sibling projects cover stock screening, strategy validation, and strategy evolution for users who want to extend the workflow. They are maintained independently today, with candidate import, backtest validation, and report handoff planned as future integration directions.

  • AlphaSift: multi-factor stock screening and full-market scanning for building candidate watchlists.
  • AlphaEvo: strategy backtesting and self-evolution experiments for validating rules and iteratively exploring strategy parameters and combinations.

🗺️ Roadmap

See supported features and release notes in the Changelog. Suggestions are welcome through GitHub Issues.

UI pages are still being polished. Please report style, interaction, or compatibility issues through Issues or Pull Requests.


☕ Support the Project

Alipay WeChat Pay Xiaohongshu
Alipay WeChat Pay Xiaohongshu

🤝 Contributing

Contributions are welcome. Before opening a PR, please run the checks that match your changes:

# Python / backend
./scripts/ci_gate.sh

# Web
cd apps/dsa-web
npm ci
npm run lint
npm run build

See CONTRIBUTING_EN.md for details.


📄 License

MIT License © 2026 ZhuLinsen

If you use or build on this project, attribution with a link back to this repository is appreciated.

📞 Contact

⭐ Star History

Star this repo if you find it useful.

Star History Chart

⚠️ Disclaimer

This project is for informational and educational purposes only. AI-generated analysis is not investment advice. Stock market investing involves risk; do your own research and consult a licensed financial advisor when needed.