ZhuLinsen/daily_stock_analysisPublic

LLM 驱动的多市场股票智能分析系统:多源行情、实时新闻、决策看板与自动推送,支持零成本定时运行。 LLM-powered multi-market stock analysis system with multi-source market data, real-time news, decision dashboard, automated notifications, and cost-free scheduled runs.

AI summary: An automated system for scraping, analyzing, and visualizing daily A-share stock market data.

Stars
60.3K
+145 today
Forks
51.6K
Watchers
235
Open issues
38
Open PRs
8
Contributors
~105
Commits
923
Branches
373

PythonMITCreated Jan 10, 2026Last push todayLatest release v3.28.0+583 stars this week+869 this month

Star history

since Jan 4, 2026
020K40K60KJan 2026Mar 2026May 2026Aug 2026
60.3K stars as of Aug 7, 2026, tracked back to Jan 4, 2026. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
AugSepOctNovDecJanFebMarAprMayJunJulMonWedFri2025-08-02: 0 commits2025-08-03: 0 commits2025-08-04: 0 commits2025-08-05: 0 commits2025-08-06: 0 commits2025-08-07: 0 commits2025-08-08: 0 commits2025-08-09: 0 commits2025-08-10: 0 commits2025-08-11: 0 commits2025-08-12: 0 commits2025-08-13: 0 commits2025-08-14: 0 commits2025-08-15: 0 commits2025-08-16: 0 commits2025-08-17: 0 commits2025-08-18: 0 commits2025-08-19: 0 commits2025-08-20: 0 commits2025-08-21: 0 commits2025-08-22: 0 commits2025-08-23: 0 commits2025-08-24: 0 commits2025-08-25: 0 commits2025-08-26: 0 commits2025-08-27: 0 commits2025-08-28: 0 commits2025-08-29: 0 commits2025-08-30: 0 commits2025-08-31: 0 commits2025-09-01: 0 commits2025-09-02: 0 commits2025-09-03: 0 commits2025-09-04: 0 commits2025-09-05: 0 commits2025-09-06: 0 commits2025-09-07: 0 commits2025-09-08: 0 commits2025-09-09: 0 commits2025-09-10: 0 commits2025-09-11: 0 commits2025-09-12: 0 commits2025-09-13: 0 commits2025-09-14: 0 commits2025-09-15: 0 commits2025-09-16: 0 commits2025-09-17: 0 commits2025-09-18: 0 commits2025-09-19: 0 commits2025-09-20: 0 commits2025-09-21: 0 commits2025-09-22: 0 commits2025-09-23: 0 commits2025-09-24: 0 commits2025-09-25: 0 commits2025-09-26: 0 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 2 commits2026-01-11: 3 commits2026-01-12: 4 commits2026-01-13: 5 commits2026-01-14: 18 commits2026-01-15: 7 commits2026-01-16: 2 commits2026-01-17: 4 commits2026-01-18: 3 commits2026-01-19: 15 commits2026-01-20: 5 commits2026-01-21: 10 commits2026-01-22: 20 commits2026-01-23: 7 commits2026-01-24: 15 commits2026-01-25: 23 commits2026-01-26: 12 commits2026-01-27: 2 commits2026-01-28: 6 commits2026-01-29: 7 commits2026-01-30: 3 commits2026-01-31: 7 commits2026-02-01: 12 commits2026-02-02: 4 commits2026-02-03: 1 commit2026-02-04: 1 commit2026-02-05: 4 commits2026-02-06: 4 commits2026-02-07: 3 commits2026-02-08: 2 commits2026-02-09: 2 commits2026-02-10: 3 commits2026-02-11: 3 commits2026-02-12: 2 commits2026-02-13: 2 commits2026-02-14: 3 commits2026-02-15: 6 commits2026-02-16: 2 commits2026-02-17: 0 commits2026-02-18: 2 commits2026-02-19: 1 commit2026-02-20: 2 commits2026-02-21: 1 commit2026-02-22: 2 commits2026-02-23: 5 commits2026-02-24: 3 commits2026-02-25: 9 commits2026-02-26: 9 commits2026-02-27: 8 commits2026-02-28: 13 commits2026-03-01: 1 commit2026-03-02: 3 commits2026-03-03: 1 commit2026-03-04: 0 commits2026-03-05: 1 commit2026-03-06: 4 commits2026-03-07: 10 commits2026-03-08: 3 commits2026-03-09: 10 commits2026-03-10: 1 commit2026-03-11: 5 commits2026-03-12: 6 commits2026-03-13: 7 commits2026-03-14: 4 commits2026-03-15: 7 commits2026-03-16: 6 commits2026-03-17: 10 commits2026-03-18: 5 commits2026-03-19: 7 commits2026-03-20: 7 commits2026-03-21: 0 commits2026-03-22: 6 commits2026-03-23: 2 commits2026-03-24: 4 commits2026-03-25: 4 commits2026-03-26: 4 commits2026-03-27: 4 commits2026-03-28: 0 commits2026-03-29: 3 commits2026-03-30: 1 commit2026-03-31: 6 commits2026-04-01: 13 commits2026-04-02: 3 commits2026-04-03: 10 commits2026-04-04: 4 commits2026-04-05: 4 commits2026-04-06: 0 commits2026-04-07: 1 commit2026-04-08: 1 commit2026-04-09: 0 commits2026-04-10: 5 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 2 commits2026-04-18: 0 commits2026-04-19: 1 commit2026-04-20: 0 commits2026-04-21: 2 commits2026-04-22: 2 commits2026-04-23: 0 commits2026-04-24: 2 commits2026-04-25: 10 commits2026-04-26: 2 commits2026-04-27: 2 commits2026-04-28: 5 commits2026-04-29: 1 commit2026-04-30: 5 commits2026-05-01: 1 commit2026-05-02: 5 commits2026-05-03: 3 commits2026-05-04: 2 commits2026-05-05: 6 commits2026-05-06: 2 commits2026-05-07: 3 commits2026-05-08: 2 commits2026-05-09: 3 commits2026-05-10: 14 commits2026-05-11: 5 commits2026-05-12: 2 commits2026-05-13: 3 commits2026-05-14: 0 commits2026-05-15: 8 commits2026-05-16: 8 commits2026-05-17: 6 commits2026-05-18: 2 commits2026-05-19: 5 commits2026-05-20: 6 commits2026-05-21: 8 commits2026-05-22: 4 commits2026-05-23: 6 commits2026-05-24: 5 commits2026-05-25: 8 commits2026-05-26: 4 commits2026-05-27: 5 commits2026-05-28: 2 commits2026-05-29: 4 commits2026-05-30: 6 commits2026-05-31: 7 commits2026-06-01: 2 commits2026-06-02: 3 commits2026-06-03: 8 commits2026-06-04: 10 commits2026-06-05: 8 commits2026-06-06: 4 commits2026-06-07: 4 commits2026-06-08: 2 commits2026-06-09: 1 commit2026-06-10: 4 commits2026-06-11: 2 commits2026-06-12: 2 commits2026-06-13: 10 commits2026-06-14: 5 commits2026-06-15: 2 commits2026-06-16: 0 commits2026-06-17: 2 commits2026-06-18: 3 commits2026-06-19: 8 commits2026-06-20: 5 commits2026-06-21: 4 commits2026-06-22: 6 commits2026-06-23: 0 commits2026-06-24: 5 commits2026-06-25: 1 commit2026-06-26: 3 commits2026-06-27: 10 commits2026-06-28: 8 commits2026-06-29: 1 commit2026-06-30: 9 commits2026-07-01: 6 commits2026-07-02: 3 commits2026-07-03: 10 commits2026-07-04: 8 commits2026-07-05: 5 commits2026-07-06: 1 commit2026-07-07: 1 commit2026-07-08: 2 commits2026-07-09: 0 commits2026-07-10: 2 commits2026-07-11: 2 commits2026-07-12: 7 commits2026-07-13: 1 commit2026-07-14: 0 commits2026-07-15: 0 commits2026-07-16: 1 commit2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 10 commits2026-07-20: 2 commits2026-07-21: 2 commits2026-07-22: 5 commits2026-07-23: 1 commit2026-07-24: 0 commits2026-07-25: 3 commits2026-07-26: 8 commits2026-07-27: 1 commit2026-07-28: 1 commit2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits
855 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Landmark project

    60,283 stars

  • Very active

    855 commits in 52 weeks

  • Community-driven

    ~105 contributors

  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

  • Repeat trending

    22 trending appearances

What daily_stock_analysis does

Daily Stock Analysis is a Python-based tool designed to automatically fetch and process daily trading data for the Chinese A-share market. It aggregates historical price data, volume metrics, and fundamental indicators from various financial data sources. The system then applies technical analysis algorithms to identify trends, calculate moving averages, and flag potential trading signals based on predefined strategies. By outputting the results into structured formats and visual charts, it allows investors to quickly digest market movements without manual data collection. The project serves as a foundational pipeline for quantitative analysis and algorithmic trading research.

This tool is designed for individual investors, quantitative analysts, and Python developers interested in the Chinese stock market. It requires basic Python knowledge to configure and run, and an understanding of technical analysis concepts.

  • Automated data collection: Scripts to fetch daily A-share market data from public APIs.
  • Technical indicator calculation: Built-in formulas for MACD, RSI, moving averages, and other common metrics.
  • Strategy backtesting: Basic framework for evaluating trading rules against historical data.
  • Data visualization: Generates charts and graphs to visualize stock performance and indicators.
  • Scheduled execution: Can be configured to run daily after market close to generate fresh reports.
  • Data export: Saves processed analysis into CSV or Excel formats for further review.

Where teams use it

Daily market screening

Retail investors run the script after market close to identify stocks meeting specific technical criteria.

Quantitative research

Analysts use the collected data and indicator calculations as a starting point for developing more complex trading algorithms.

Portfolio monitoring

Traders track the technical health of their current holdings by generating daily indicator reports.

Learning algorithmic trading

Python beginners study the codebase to understand how financial data is fetched, processed, and analyzed programmatically.

Getting started: git clone https://github.com/ZhuLinsen/daily_stock_analysis.git && pip install -r requirements.txt && python main.py

README

main branch

📈 股票智能分析系统

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

#1 Python Repository Of The Day | Trendshift Featured|HelloGitHub

🤖 基于 AI 大模型的 A股/港股/美股/日股/韩股/台股自选股智能分析系统,每日自动分析并推送「决策仪表盘」到企业微信/飞书/Telegram/Discord/Slack/邮箱

产品预览 · 功能特性 · 快速开始 · 推送效果 · 文档中心 · 完整指南

简体中文 | English | 繁體中文

💖 赞助商 (Sponsors)

Anspire Open 一站式模型和搜索服务 轻松抓取搜索引擎上的实时金融新闻数据 - SerpApi

🖥️ 产品预览

DSA Web 工作台演示

✨ 功能特性

能力 覆盖内容
AI 决策报告 核心结论、评分、趋势、买卖点位、风险警报、催化因素、操作检查清单
多市场数据聚合 覆盖 A股、港股、美股、日股、韩股、台股和 ETF,支持行情、K 线、技术指标、新闻、公告、基本面与报告辅助数据;不同市场的数据源和能力边界见 市场支持边界
Web / 桌面工作台 手动分析、任务进度、历史报告、完整 Markdown、回测、持仓、配置管理、浅色 / 深色主题
Agent 策略问股 多轮追问,支持均线、缠论、波浪、趋势、热点、事件、成长、预期等 15 种内置策略,覆盖 Web/Bot/API
智能导入与补全 图片、CSV/Excel、剪贴板导入;股票代码/名称/拼音/别名补全
自动化与推送 GitHub Actions、Docker、本地定时任务、FastAPI 服务和企业微信/飞书/Telegram/Discord/Slack/邮件推送

功能细节、字段契约、基本面 P0 超时语义、交易纪律、数据源优先级、Web/API 行为请看 完整配置与部署指南

技术栈与数据来源

类型 支持
AI 模型 AnspireAIHubMix、Gemini、OpenAI 兼容、DeepSeek、通义千问、Claude、Ollama 本地模型等
行情数据 TickFlow、AkShare、Tushare、Pytdx、Baostock、YFinance、Longbridge
新闻搜索 AnspireSerpAPITavilyBochaBraveMiniMax、SearXNG
社交舆情 Stock Sentiment API(Reddit / X / Polymarket,仅美股,可选)

项目默认内置 AkShare、Baostock、YFinance 等免费行情源,可零配置运行;免费源受上游限流、接口变动和网络波动影响,稳定性不保证。长期定时、批量分析或更稳定行情建议配置 TickFlow、Tushare、Longbridge 等 token 型数据源,适用市场、Actions 映射和 fallback 规则见 数据源配置

🚀 快速开始

5 分钟完成部署,零成本,无需服务器。

1. Fork 本仓库

点击右上角 Fork 按钮(顺便点个 Star⭐ 支持一下)

2. 配置 Secrets

SettingsSecrets and variablesActionsNew repository secret

AI 模型配置(至少配置一个)

默认先选一个模型服务商并填写 API Key;需要多模型、图片识别、本地模型或高级路由时,再参考 LLM 配置指南

Secret 名称 说明 必填
ANSPIRE_API_KEYS Anspire API Key,一Key同时启用全球热门大模型和联网搜索,本项目新用户提供30元等额的免费额度(GLM5.2、GPT等模型特惠中) 推荐
AIHUBMIX_KEY AIHubMix API Key,一Key切换使用全系模型,无需科学上网,本项目可享 10% 优惠 推荐
GEMINI_API_KEY Google Gemini API Key 可选
ANTHROPIC_API_KEY Anthropic Claude API Key 可选
OPENAI_API_KEY OpenAI 兼容 API Key(支持 DeepSeek、通义千问等) 可选
OPENAI_BASE_URL / OPENAI_MODEL 使用 OpenAI 兼容服务时填写 可选

Ollama 更适合本地 / Docker 部署,GitHub Actions 推荐使用云端 API。

通知渠道配置(至少配置一个)

Secret 名称 说明
WECHAT_WEBHOOK_URL 企业微信机器人
FEISHU_WEBHOOK_URL 飞书机器人
TELEGRAM_BOT_TOKEN + TELEGRAM_CHAT_ID Telegram
DISCORD_WEBHOOK_URL Discord Webhook
SLACK_BOT_TOKEN + SLACK_CHANNEL_ID Slack Bot
EMAIL_SENDER + EMAIL_PASSWORD 邮件推送

更多渠道、签名校验、分组邮件、Markdown 转图片等配置见 通知渠道详细配置

自选股配置(必填)

Secret 名称 说明 必填
STOCK_LIST 自选股代码,如 600519,hk00700,AAPL,7203.T,005930.KS,2330.TW

新闻源配置(推荐)

新闻源会显著影响舆情、公告、事件和催化因素质量,建议至少配置一个搜索服务。

Secret 名称 说明 必填
ANSPIRE_API_KEYS Anspire AI Search:汇聚全球舆情信息,适配A股、美股、港股等新闻和舆情检索;同一Key可复用大模型服务,本项目新用户提供免费30元等额的免费点数 推荐
SERPAPI_API_KEYS SerpAPI:搜索引擎结果补强,适合实时金融新闻 推荐
TAVILY_API_KEYS Tavily:通用新闻搜索 API 可选
BOCHA_API_KEYS 博查搜索:中文搜索优化,支持 AI 摘要 可选
BRAVE_API_KEYS Brave Search:隐私优先,美股资讯补强 可选
MINIMAX_API_KEYS MiniMax:结构化搜索结果 可选
SEARXNG_BASE_URLS SearXNG 自建实例:无配额兜底,适合私有部署 可选

更多搜索源、社交舆情和降级规则见 搜索服务配置

行情数据源配置(可选)

默认使用 AkShare、Baostock、YFinance 等免费数据源,日志中"未配置"的提示不影响运行。 如需更稳定的行情,可按市场配置以下 Secret:

Secret 名称 适用市场 说明
TUSHARE_TOKEN A 股 提升历史行情稳定性
LONGBRIDGE_OAUTH_CLIENT_ID + LONGBRIDGE_OAUTH_TOKEN_CACHE_B64 港股/美股 补齐量比、换手率、PE 等字段

详见 数据源配置

3. 启用 Actions

Actions 标签 → I understand my workflows, go ahead and enable them

4. 手动测试

Actions每日股票分析Run workflowRun workflow

完成

默认每个**工作日 18:00(北京时间)**自动执行,也可手动触发。默认非交易日(含 A/H/US 节假日)不执行;强制运行、交易日检查、断点续传等规则见 完整指南

方式二:客户端配置教程 / 本地运行 / Docker 部署

# 克隆项目
git clone https://github.com/ZhuLinsen/daily_stock_analysis.git && cd daily_stock_analysis

# 安装依赖
pip install -r requirements.txt

# 配置环境变量
cp .env.example .env && vim .env

# 运行分析
python main.py

常用命令:

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

Docker 部署、定时任务、云服务器访问请参考 完整指南;桌面客户端打包请参考 桌面端打包说明

📱 推送效果

决策仪表盘

🎯 2026-02-08 决策仪表盘
共分析3只股票 | 🟢买入:0 🟡观望:2 🔴卖出:1

📊 分析结果摘要
⚪ 中钨高新(000657): 观望 | 评分 65 | 看多
⚪ 永鼎股份(600105): 观望 | 评分 48 | 震荡
🟡 新莱应材(300260): 卖出 | 评分 35 | 看空

⚪ 中钨高新 (000657)
📰 重要信息速览
💭 舆情情绪: 市场关注其AI属性与业绩高增长,情绪偏积极,但需消化短期获利盘和主力流出压力。
📊 业绩预期: 基于舆情信息,公司2025年前三季度业绩同比大幅增长,基本面强劲,为股价提供支撑。

🚨 风险警报:

风险点1:2月5日主力资金大幅净卖出3.63亿元,需警惕短期抛压。
风险点2:筹码集中度高达35.15%,表明筹码分散,拉升阻力可能较大。
风险点3:舆情中提及公司历史违规记录及重组相关风险提示,需保持关注。
✨ 利好催化:

利好1:公司被市场定位为AI服务器HDI核心供应商,受益于AI产业发展。
利好2:2025年前三季度扣非净利润同比暴涨407.52%,业绩表现强劲。
📢 最新动态: 【最新消息】舆情显示公司是AI PCB微钻领域龙头,深度绑定全球头部PCB/载板厂。2月5日主力资金净卖出3.63亿元,需关注后续资金流向。

---
生成时间: 18:00

大盘复盘

🎯 2026-01-10 大盘复盘

📊 主要指数
- 上证指数: 3250.12 (🟢+0.85%)
- 深证成指: 10521.36 (🟢+1.02%)
- 创业板指: 2156.78 (🟢+1.35%)

📈 市场概况
上涨: 3920 | 下跌: 1349 | 涨停: 155 | 跌停: 3

🔥 板块表现
领涨: 互联网服务、文化传媒、小金属
领跌: 保险、航空机场、光伏设备

⚙️ 配置说明

完整环境变量、模型渠道、通知渠道、数据源优先级、交易纪律、基本面 P0 语义和部署说明请参考 完整配置指南

🖥️ Web 界面

Web 工作台提供配置管理、任务监控、手动分析、历史报告、完整 Markdown 报告、Agent 问股、回测、持仓管理、智能导入和浅色 / 深色主题。启动方式:

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

访问 http://127.0.0.1:8000 即可使用。认证、智能导入、搜索补全、历史报告复制、云服务器访问等细节见 本地 WebUI 管理界面

🤖 Agent 策略问股

配置任意可用 AI API Key 后,Web /chat 页面即可使用策略问股;如需显式关闭可设置 AGENT_MODE=false

  • 支持均线金叉、缠论、波浪理论、多头趋势、热点题材、事件驱动、成长质量、预期重估等内置策略
  • 支持实时行情、K 线、技术指标、新闻和风险信息调用
  • 支持多轮追问、会话导出、发送到通知渠道和后台执行
  • 支持自定义策略文件与多 Agent 编排(实验性)

Agent 具体参数、skill 命名兼容、多 Agent 模式和预算护栏见 完整指南LLM 配置指南

🧩 相关项目 (Related Projects)

DSA 聚焦日常分析报告;下面两个同系列项目分别覆盖选股、策略验证与策略进化,适合按需延伸使用。它们当前独立维护,后续会优先探索与 DSA 的候选股导入、回测验证和报告联动。

项目 定位
AlphaSift 多因子选股与全市场扫描,用于从股票池中提取候选标的
AlphaEvo 策略回测与自我进化,用于验证策略规则,并通过迭代探索策略参数与组合

📬 联系与合作

合作邮箱 zhuls345@gmail.com
项目咨询、部署支持与功能扩展
小红书二维码
扫码关注小红书
小红书 欢迎关注小红书
问题反馈 提交 Issue

📄 License

MIT License © 2026 ZhuLinsen

欢迎在二次开发或引用时注明本仓库来源,感谢支持项目持续维护。

⚠️ 免责声明

本项目仅供学习和研究使用,不构成任何投资建议。股市有风险,投资需谨慎。作者不对使用本项目产生的任何损失负责。


View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

32 total
  1. v3.28.0v3.28.0Jul 26, 20262K downloads

    ## v3.28.0 ## 发布亮点 - feat: Multi-Agent 多策略综合支持分层 deliberation、mediator/self-review、revision projection 与 multi-round,并统一最终动作、分歧解释和 DecisionSignal 契约。 - feat: AI 建议页新增按决策风格分组的历史表现,specialist opinion 样本可版本化持久保存,并以独立的 30 个已完成样本门槛支持后验评估。 - feat: 新增 `--portfolio futu`,可只读导入 Futu OpenD 真实账户中的沪深 A 股、港股和美股 LONG 正股持仓。 - feat: Web 首页与 API 支持按请求临时选择单个或多个大盘复盘市场,贯通任务状态、SSE、结果与历史记录且不修改全局配置。 - feat: Tushare 支持通过 `TUSHARE_HTTP_URL` 接入自建网关或兼容镜像,留空时继续使用官方默认地址。 - fix: 改进港股行情路由与缓存、外股英文新闻匹配、A 股数据源兜底顺序、Windows 冷启动、Web/Agent 配置及 macOS 桌面包稳定性。 ## What's Changed - Added layered multi-strategy deliberation, mediator/self-review, revision projection, multi-round scheduling, and a canonical final-action and disagreement-explanation contract, by @xushengasd and @ObVious55. - Added persistent, versioned specialist opinion samples and decision-profile historical performance, with an independent 30-completed-sample threshold for each profile, by @ObVious55 and @massif-01. - Added read-only Futu OpenD portfolio import for mainland China, Hong Kong, and US long equity positions through `--portfolio futu`, by @JaxonHu1024. - Added per-request single- or multi-market review selection across the Web UI, API, task

  2. v3.27.0v3.27.0Jul 19, 20265.8K downloads

    ## v3.27.0 ## 发布亮点 - feat: 新增 Codex App Server single-agent 问股实验原型,仅开放三个既有只读工具,并保持 LiteLLM、Multi Agent、普通报告、定时任务等默认链路不变。 - feat: Web AI 建议页支持保存基于历史报告快照重算的决策风格信号,补齐 profile-aware 去重、续期、失效和可审计 guardrail 语义。 - feat: 引入多策略观点结构化输出第一阶段契约,覆盖观点标准化、基础冲突检测、聚合元数据和报告兼容边界。 - improve: 报告页明确展示输入数据状态、来源、异常影响、处理建议和诊断码,并区分页面资讯与本次分析输入。 - fix: 修复 MiniMax 推理内容污染最终 JSON、字符串 `<think>` 包装兼容,以及多 Agent 风险覆盖后结论未按最终信号收敛的问题。 - fix: 补齐美股实时行情 PE/PB 估值字段、多市场工具描述和 macOS Gatekeeper 安装排障说明。 ## What's Changed - Added an opt-in Codex App Server single-agent stock Q&A prototype with three existing read-only tools, while keeping LiteLLM, Multi Agent, regular reports, and scheduled tasks unchanged by default, by @massif-01. - Added persistence for decision-style reassessment signals derived from historical report snapshots, including profile-aware deduplication, renewal, invalidation, and auditable guardrails, by @massif-01. - Introduced the first structured multi-strategy opinion contract with normalization, basic conflict detection, aggregation metadata, and hardened report compatibility, by @xushengasd. - Clarified report input diagnostics and news scope, and finalized post-risk Agent runtime facts and decision su

  3. v3.26.1v3.26.1Jul 12, 20267.3K downloads

    ## v3.26.1 ## 发布亮点 - feat: Web 首页新增历史、自选与今日工作区,支持批量分析、今日覆盖判断和评分排行;同时改进股票列表解析、刷新时序与持仓首屏加载体验。 - feat: 重建 A 股市场结构与题材主线上下文,贯通报告、Agent、DecisionSignal 与 Web 展示;TickFlow 新增基于申万一级行业股票池的板块排行兜底,并通过缓存与更合理的超时设置提升稳定性。 - feat: 飞书新增文件形式推送报告,多 Agent 支持子 Agent 独立超时钳位与决策前低敏分歧摘要,Agent 流式响应中断时也能给出明确提示。 - feat: 补齐内部 DSA Tool Surface 与正式的 DecisionSignal `decision_profile` 契约,统一工具权限、股票范围、结构化错误、信号查询、去重、续期和失效语义。 - improve: 新增资讯池自动抓取开关,优化 AI 建议页股票上下文、移动端设置导航、常见自选股分隔符解析,以及 GitHub Actions 中 TickFlow 与钉钉通知的配置映射。 - fix: 统一 Web、报告与通知中的评分动作口径,完整保留通知理由,并修复批量删除股票历史记录、零情绪分、市场结构重复请求、持仓加载、桌面端 WebUI 绑定及 Agent 流中断等问题。 - fix: 加固桌面端与 Docker 发布包,补齐 AkShare 交易日历和 LiteLLM 所需的 `orjson`,完善 AlphaSift 探测与发布资源一致性,避免打包版本启动或数据能力降级。 - improve: 移除 Web 报告中独立的题材/个股位置卡片及 Markdown、微信、兜底通知中的重复 AI 决策信号摘要,将相同信息收敛到统一的分析上下文和权威展示链路。 ## What's Changed - Added History, Watchlist, and Today workspaces to the Web home page, including batch analysis, same-day coverage checks, score rankings, more tolerant stock-list parsing, safer refresh ordering, and faster initial portfolio loading. - Rebuilt A-share market-structure and theme context across reports, Agents, DecisionSignal, and the Web UI. TickFlow now provides an SW1 industr

  4. v3.25.0v3.25.0Jul 3, 20268.7K downloads

    ## v3.25.0 ## 发布亮点 - feat: 新增 `claude_code_cli` 和 `opencode_cli` generation-only 本地 CLI backend,并补齐生成后端状态诊断、预览、冒烟测试 API 和 Web 状态面板。 - feat: 台股报告完整接入三大法人资料,覆盖报告渲染、LLM prompt、TWD 币别标示、收盘集合竞价识别和 fetcher 韧性加固。 - feat: 新增钉钉群机器人通知、韩语报告输出和 AI 建议决策风格重评估预览。 - feat: Agent `/chat/stream` 标准化 progress event,新增阶段开始/完成、pipeline timeout 和预算跳过语义。 - improve: AlphaSift 接入 caller-side timeout、东财直连限速/抖动、策略目录元数据和防守策略,降低外部数据源卡住时触发 Web 等待超时的概率。 - fix: 修复桌面端 WebUI host/port 绑定、macOS Homebrew CLI PATH 诊断、Discord 长报告分片、yfinance 分红解析、A 股回测代码归一化、市场阶段识别和大盘复盘格式化等稳定性问题。 ## What's Changed - Added Claude Code and OpenCode local generation backends, backend status diagnostics, preview/smoke-test APIs, and the Web status panel by @massif-01 and @ZhuLinsen. - Expanded Taiwan stock reports with institutional flow rendering, LLM prompt context, TWD currency labels, closing-auction detection, fetcher circuit breakers, date guards, and cache-stampede protection by @WenyuChiou and @ZhuLinsen. - Added DingTalk notification support with long-message chunking by @Shlok1729. - Added Korean report language support across prompts, reports, notification labels, and Web report copy by @devpark435. - Standardi

  5. v3.24.1v3.24.1Jun 28, 20267K downloads

    ## v3.24.1 > `v3.24.1` 取代未成功出桌面包的 `v3.24.0`,作为本轮正式发布版本;包含 `v3.23.0` 之后的全部主要变更,以及 `v3.24.1` 的发布打包修复。 > > `v3.24.1` supersedes `v3.24.0`, whose desktop packages were not published successfully. This is the effective release for all major changes since `v3.23.0`, plus the `v3.24.1` packaging fix. ## 发布亮点 - feat: 扩展台股、日股、韩股市场支持,覆盖 suffix-only 个股分析、台股三大法人资料层、JP/KR 大盘复盘和跨服务市场枚举。 - feat: 接入 TickFlow 核心 A 股数据源,增强 A 股日 K、实时行情、股票列表/名称数据源和批量预取能力。 - feat: 新增 GenerationBackend 抽象、`codex_cli` 本地 CLI backend、Hermes 本地 HTTP 渠道和 prompt cache capability registry。 - feat: Web/API/Desktop 支持多时间定时推送与 runtime scheduler 热重建,Web 设置页补齐首次启动配置检查和定时任务面板。 - improve: 报告与通知链路补齐信号归因、单股信号时间线、概念板块排行和关联板块展示,减少 AI 建议与报告详情之间的重复展示。 - fix: 修复桌面/Docker 发布依赖、Windows 静态资源 MIME、回测空结果、通知 Markdown、Docker Webhook 模板占位符和 AlphaSift 数据源稳定性问题。 ## What's Changed - Expanded Taiwan, Japan, and Korea market coverage, including suffix-only analysis, Taiwan institutional flows, JP/KR market review, and market enum propagation by @WenyuChiou and @ZhuLinsen. - Added TickFlow as a core A-share data source with stronger quote, K-line, stock-list, and prefetch coverage by @timeance. - Added local generation infrastructure: GenerationBac

Code frequency

additions and deletions
+47.4K-47.4KWeek of 2026-01-04: +9,134 linesWeek of 2026-01-04: -34 linesWeek of 2026-01-11: +5,305 linesWeek of 2026-01-11: -686 linesWeek of 2026-01-18: +17,396 linesWeek of 2026-01-18: -5,488 linesWeek of 2026-01-25: +15,125 linesWeek of 2026-01-25: -13,547 linesWeek of 2026-02-01: +19,547 linesWeek of 2026-02-01: -3,314 linesWeek of 2026-02-08: +8,876 linesWeek of 2026-02-08: -560 linesWeek of 2026-02-15: +5,646 linesWeek of 2026-02-15: -1,029 linesWeek of 2026-02-22: +16,314 linesWeek of 2026-02-22: -4,328 linesWeek of 2026-03-01: +5,511 linesWeek of 2026-03-01: -1,216 linesWeek of 2026-03-08: +23,245 linesWeek of 2026-03-08: -2,874 linesWeek of 2026-03-15: +41,752 linesWeek of 2026-03-15: -6,871 linesWeek of 2026-03-22: +47,442 linesWeek of 2026-03-22: -2,168 linesWeek of 2026-03-29: +13,145 linesWeek of 2026-03-29: -1,388 linesWeek of 2026-04-05: +3,137 linesWeek of 2026-04-05: -212 linesWeek of 2026-04-12: +213 linesWeek of 2026-04-12: -9 linesWeek of 2026-04-19: +5,202 linesWeek of 2026-04-19: -1,403 linesWeek of 2026-04-26: +6,456 linesWeek of 2026-04-26: -779 linesWeek of 2026-05-03: +9,464 linesWeek of 2026-05-03: -2,046 linesWeek of 2026-05-10: +22,609 linesWeek of 2026-05-10: -2,377 linesWeek of 2026-05-17: +20,894 linesWeek of 2026-05-17: -2,003 linesWeek of 2026-05-24: +22,635 linesWeek of 2026-05-24: -994 linesWeek of 2026-05-31: +27,777 linesWeek of 2026-05-31: -3,635 linesWeek of 2026-06-07: +33,716 linesWeek of 2026-06-07: -2,547 linesWeek of 2026-06-14: +31,869 linesWeek of 2026-06-14: -3,448 linesWeek of 2026-06-21: +20,829 linesWeek of 2026-06-21: -1,861 linesWeek of 2026-06-28: +24,792 linesWeek of 2026-06-28: -1,819 linesWeek of 2026-07-05: +9,192 linesWeek of 2026-07-05: -677 linesWeek of 2026-07-12: +7,805 linesWeek of 2026-07-12: -360 linesWeek of 2026-07-19: +26,740 linesWeek of 2026-07-19: -1,425 linesWeek of 2026-07-26: +5,074 linesWeek of 2026-07-26: -760 linesJan 4, 2026Jul 26, 2026
+506.8K lines added, -69.9K removed over the last year.

Commits per week

last 52 weeks
750Week of 2025-08-02: 0 commitsWeek of 2025-08-09: 0 commitsWeek of 2025-08-16: 0 commitsWeek of 2025-08-23: 0 commitsWeek of 2025-08-30: 0 commitsWeek of 2025-09-06: 0 commitsWeek of 2025-09-13: 0 commitsWeek of 2025-09-20: 0 commitsWeek of 2025-09-27: 0 commitsWeek of 2025-10-04: 0 commitsWeek of 2025-10-11: 0 commitsWeek of 2025-10-18: 0 commitsWeek of 2025-10-25: 0 commitsWeek of 2025-11-01: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 2 commitsWeek of 2026-01-11: 43 commitsWeek of 2026-01-18: 75 commitsWeek of 2026-01-25: 60 commitsWeek of 2026-02-01: 29 commitsWeek of 2026-02-08: 17 commitsWeek of 2026-02-15: 14 commitsWeek of 2026-02-22: 49 commitsWeek of 2026-03-01: 20 commitsWeek of 2026-03-08: 36 commitsWeek of 2026-03-15: 42 commitsWeek of 2026-03-22: 24 commitsWeek of 2026-03-29: 40 commitsWeek of 2026-04-05: 11 commitsWeek of 2026-04-12: 2 commitsWeek of 2026-04-19: 17 commitsWeek of 2026-04-26: 21 commitsWeek of 2026-05-03: 21 commitsWeek of 2026-05-10: 40 commitsWeek of 2026-05-17: 37 commitsWeek of 2026-05-24: 34 commitsWeek of 2026-05-31: 42 commitsWeek of 2026-06-07: 25 commitsWeek of 2026-06-14: 25 commitsWeek of 2026-06-21: 29 commitsWeek of 2026-06-28: 45 commitsWeek of 2026-07-05: 13 commitsWeek of 2026-07-12: 9 commitsWeek of 2026-07-19: 23 commitsWeek of 2026-07-26: 10 commitsAug 2, 2025Jul 26, 2026
855 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 4 commitsSun 1:00 — 2 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 1 commitsSun 8:00 — 1 commitsSun 9:00 — 4 commitsSun 10:00 — 9 commitsSun 11:00 — 6 commitsSun 12:00 — 4 commitsSun 13:00 — 9 commitsSun 14:00 — 5 commitsSun 15:00 — 10 commitsSun 16:00 — 14 commitsSun 17:00 — 8 commitsSun 18:00 — 15 commitsSun 19:00 — 24 commitsSun 20:00 — 17 commitsSun 21:00 — 19 commitsSun 22:00 — 16 commitsSun 23:00 — 7 commitsMon 0:00 — 1 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 3 commitsMon 7:00 — 4 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 4 commitsMon 11:00 — 8 commitsMon 12:00 — 5 commitsMon 13:00 — 8 commitsMon 14:00 — 2 commitsMon 15:00 — 3 commitsMon 16:00 — 1 commitsMon 17:00 — 2 commitsMon 18:00 — 2 commitsMon 19:00 — 2 commitsMon 20:00 — 18 commitsMon 21:00 — 20 commitsMon 22:00 — 14 commitsMon 23:00 — 6 commitsTue 0:00 — 1 commitsTue 1:00 — 1 commitsTue 2:00 — 0 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 0 commitsTue 6:00 — 0 commitsTue 7:00 — 0 commitsTue 8:00 — 2 commitsTue 9:00 — 0 commitsTue 10:00 — 0 commitsTue 11:00 — 0 commitsTue 12:00 — 2 commitsTue 13:00 — 0 commitsTue 14:00 — 1 commitsTue 15:00 — 1 commitsTue 16:00 — 1 commitsTue 17:00 — 3 commitsTue 18:00 — 5 commitsTue 19:00 — 10 commitsTue 20:00 — 9 commitsTue 21:00 — 16 commitsTue 22:00 — 21 commitsTue 23:00 — 11 commitsWed 0:00 — 1 commitsWed 1:00 — 1 commitsWed 2:00 — 0 commitsWed 3:00 — 2 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 1 commitsWed 9:00 — 2 commitsWed 10:00 — 2 commitsWed 11:00 — 12 commitsWed 12:00 — 3 commitsWed 13:00 — 3 commitsWed 14:00 — 1 commitsWed 15:00 — 4 commitsWed 16:00 — 2 commitsWed 17:00 — 2 commitsWed 18:00 — 12 commitsWed 19:00 — 11 commitsWed 20:00 — 16 commitsWed 21:00 — 11 commitsWed 22:00 — 25 commitsWed 23:00 — 17 commitsThu 0:00 — 3 commitsThu 1:00 — 5 commitsThu 2:00 — 2 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 5 commitsThu 10:00 — 0 commitsThu 11:00 — 2 commitsThu 12:00 — 13 commitsThu 13:00 — 6 commitsThu 14:00 — 1 commitsThu 15:00 — 2 commitsThu 16:00 — 3 commitsThu 17:00 — 0 commitsThu 18:00 — 3 commitsThu 19:00 — 7 commitsThu 20:00 — 18 commitsThu 21:00 — 13 commitsThu 22:00 — 21 commitsThu 23:00 — 7 commitsFri 0:00 — 0 commitsFri 1:00 — 0 commitsFri 2:00 — 0 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 1 commitsFri 8:00 — 4 commitsFri 9:00 — 4 commitsFri 10:00 — 0 commitsFri 11:00 — 4 commitsFri 12:00 — 3 commitsFri 13:00 — 8 commitsFri 14:00 — 3 commitsFri 15:00 — 5 commitsFri 16:00 — 4 commitsFri 17:00 — 1 commitsFri 18:00 — 5 commitsFri 19:00 — 9 commitsFri 20:00 — 18 commitsFri 21:00 — 13 commitsFri 22:00 — 31 commitsFri 23:00 — 8 commitsSat 0:00 — 1 commitsSat 1:00 — 0 commitsSat 2:00 — 0 commitsSat 3:00 — 1 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 1 commitsSat 7:00 — 0 commitsSat 8:00 — 1 commitsSat 9:00 — 4 commitsSat 10:00 — 15 commitsSat 11:00 — 3 commitsSat 12:00 — 4 commitsSat 13:00 — 7 commitsSat 14:00 — 7 commitsSat 15:00 — 9 commitsSat 16:00 — 13 commitsSat 17:00 — 9 commitsSat 18:00 — 9 commitsSat 19:00 — 13 commitsSat 20:00 — 11 commitsSat 21:00 — 17 commitsSat 22:00 — 17 commitsSat 23:00 — 4 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits430 (47%)
Community commits492 (53%)

922 commits in total over the last year.

DateListRankStars gained
Jul 5, 2026daily#23+17
Jun 30, 2026daily#16+18
Jun 29, 2026daily#23+11
Jun 28, 2026daily#21+24
Jun 26, 2026daily#16+18
Jun 25, 2026daily#7+31
Jun 24, 2026daily#9+23
Jun 23, 2026daily#10+10
Jun 22, 2026daily#6+26
Jun 21, 2026daily#14+37
May 19, 2026daily#20+36
Apr 30, 2026daily#14+55
Mar 16, 2026daily#21+115
Feb 10, 2026daily#14+184
Feb 1, 2026daily#23+123
  • public-apis/public-apis

    A collective list of free APIs

    454.9K stars · Python

  • donnemartin/system-design-primer

    Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

    362.2K stars · Python

  • practical-tutorials/project-based-learning

    Curated list of project-based tutorials

    277.1K stars · Python

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    238.5K stars · JavaScript

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    234.7K stars · JavaScript

  • NousResearch/hermes-agent

    The agent that grows with you

    227K stars · Python