{"id":43705908,"url":"https://github.com/ZhuLinsen/daily_stock_analysis","last_synced_at":"2026-02-16T16:00:37.650Z","repository":{"id":331822953,"uuid":"1131513930","full_name":"ZhuLinsen/daily_stock_analysis","owner":"ZhuLinsen","description":"LLM驱动的 A/H/美股智能分析器，多数据源行情 + 实时新闻 + Gemini 决策仪表盘 + 多渠道推送，零成本，纯白嫖，定时运行","archived":false,"fork":false,"pushed_at":"2026-02-11T17:13:00.000Z","size":43143,"stargazers_count":11165,"open_issues_count":23,"forks_count":11868,"subscribers_count":63,"default_branch":"main","last_synced_at":"2026-02-11T20:54:38.640Z","etag":null,"topics":["agent","ai","aigc","gemini","llm","quant","quantitative-trading","rag","stock"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ZhuLinsen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"custom":["https://github.com/ZhuLinsen/daily_stock_analysis#sponsor"]}},"created_at":"2026-01-10T06:43:20.000Z","updated_at":"2026-02-11T20:30:59.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ZhuLinsen/daily_stock_analysis","commit_stats":null,"previous_names":["zhulinsen/daily_stock_analysis"],"tags_count":40,"template":false,"template_full_name":null,"purl":"pkg:github/ZhuLinsen/daily_stock_analysis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZhuLinsen%2Fdaily_stock_analysis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZhuLinsen%2Fdaily_stock_analysis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZhuLinsen%2Fdaily_stock_analysis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZhuLinsen%2Fdaily_stock_analysis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZhuLinsen","download_url":"https://codeload.github.com/ZhuLinsen/daily_stock_analysis/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZhuLinsen%2Fdaily_stock_analysis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29512225,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T09:05:14.864Z","status":"ssl_error","status_checked_at":"2026-02-16T08:55:59.364Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","ai","aigc","gemini","llm","quant","quantitative-trading","rag","stock"],"created_at":"2026-02-05T06:00:17.292Z","updated_at":"2026-02-16T16:00:37.639Z","avatar_url":"https://github.com/ZhuLinsen.png","language":"Python","funding_links":["https://github.com/ZhuLinsen/daily_stock_analysis#sponsor","https://ko-fi.com/mumu157"],"categories":["AI Agents for Finance","HarmonyOS","11. Specialized Domains","Repos","Open-Source LLM \u0026 Agent Projects","AI应用","金融股票","🏆 القائمة الكاملة Top 200","Python"],"sub_categories":["Windows Manager","资源传输下载"],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 📈 股票智能分析系统\n\n[![GitHub stars](https://img.shields.io/github/stars/ZhuLinsen/daily_stock_analysis?style=social)](https://github.com/ZhuLinsen/daily_stock_analysis/stargazers)\n[![CI](https://github.com/ZhuLinsen/daily_stock_analysis/actions/workflows/ci.yml/badge.svg)](https://github.com/ZhuLinsen/daily_stock_analysis/actions/workflows/ci.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![GitHub Actions](https://img.shields.io/badge/GitHub%20Actions-Ready-2088FF?logo=github-actions\u0026logoColor=white)](https://github.com/features/actions)\n[![Docker](https://img.shields.io/badge/Docker-Ready-2496ED?logo=docker\u0026logoColor=white)](https://hub.docker.com/)\n\n\u003e 🤖 基于 AI 大模型的 A股/港股/美股自选股智能分析系统，每日自动分析并推送「决策仪表盘」到企业微信/飞书/Telegram/邮箱\n\n[**功能特性**](#-功能特性) · [**快速开始**](#-快速开始) · [**推送效果**](#-推送效果) · [**完整指南**](docs/full-guide.md) · [**常见问题**](docs/FAQ.md) · [**更新日志**](docs/CHANGELOG.md)\n\n简体中文 | [English](docs/README_EN.md) | [繁體中文](docs/README_CHT.md)\n\n\u003c/div\u003e\n\n## 💖 赞助商 (Sponsors)\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://serpapi.com/baidu-search-api?utm_source=github_daily_stock_analysis\" target=\"_blank\"\u003e\n    \u003cimg src=\"./sources/serpapi_banner_zh.png\" alt=\"轻松抓取搜索引擎上的实时金融新闻数据 - SerpApi\" height=\"160\"\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\n\n## ✨ 功能特性\n\n| 模块 | 功能 | 说明 |\n|------|------|------|\n| AI | 决策仪表盘 | 一句话核心结论 + 精确买卖点位 + 操作检查清单 |\n| 分析 | 多维度分析 | 技术面 + 筹码分布 + 舆情情报 + 实时行情 |\n| 市场 | 全球市场 | 支持 A股、港股、美股 |\n| 复盘 | 大盘复盘 | 每日市场概览、板块涨跌、北向资金 |\n| 图片识别 | 从图片添加 | 上传自选股截图，Vision LLM 自动提取股票代码，一键加入监控 |\n| 回测 | AI 回测验证 | 自动评估历史分析准确率，方向胜率、止盈止损命中率 |\n| 推送 | 多渠道通知 | 企业微信、飞书、Telegram、钉钉、邮件、Pushover |\n| 自动化 | 定时运行 | GitHub Actions 定时执行，无需服务器 |\n\n### 技术栈与数据来源\n\n| 类型 | 支持 |\n|------|------|\n| AI 模型 | Gemini（免费）、OpenAI 兼容、DeepSeek、通义千问、Claude、Ollama |\n| 行情数据 | AkShare、Tushare、Pytdx、Baostock、YFinance |\n| 新闻搜索 | Tavily、SerpAPI、Bocha、Brave |\n\n### 内置交易纪律\n\n| 规则 | 说明 |\n|------|------|\n| 严禁追高 | 乖离率超阈值（默认 5%，可配置）自动提示风险；强势趋势股自动放宽 |\n| 趋势交易 | MA5 \u003e MA10 \u003e MA20 多头排列 |\n| 精确点位 | 买入价、止损价、目标价 |\n| 检查清单 | 每项条件以「满足 / 注意 / 不满足」标记 |\n| 新闻时效 | 可配置新闻最大时效（默认 3 天），避免使用过时信息 |\n\n## 🚀 快速开始\n\n### 方式一：GitHub Actions（推荐）\n\n\u003e 5 分钟完成部署，零成本，无需服务器。\n\n\n#### 1. Fork 本仓库\n\n点击右上角 `Fork` 按钮（顺便点个 Star⭐ 支持一下）\n\n#### 2. 配置 Secrets\n\n`Settings` → `Secrets and variables` → `Actions` → `New repository secret`\n\n**AI 模型配置（三选一，至少配置一个）**\n\n| Secret 名称 | 说明 | 必填 |\n|------------|------|:----:|\n| `GEMINI_API_KEY` | [Google AI Studio](https://aistudio.google.com/) 获取免费 Key | ✅* |\n| `ANTHROPIC_API_KEY` | [Anthropic Claude](https://console.anthropic.com/) API Key | 可选 |\n| `ANTHROPIC_MODEL` | Claude 模型（如 `claude-3-5-sonnet-20241022`） | 可选 |\n| `OPENAI_API_KEY` | OpenAI 兼容 API Key（支持 DeepSeek、通义千问等） | 可选 |\n| `OPENAI_BASE_URL` | OpenAI 兼容 API 地址（如 `https://api.deepseek.com/v1`） | 可选 |\n| `OPENAI_MODEL` | 模型名称（如 `deepseek-chat`） | 可选 |\n| `OPENAI_VISION_MODEL` | 图片识别专用模型（部分第三方模型不支持图像；不填则用 `OPENAI_MODEL`） | 可选 |\n\n\u003e 注：AI 优先级 Gemini \u003e Anthropic \u003e OpenAI，至少配置一个。图片识别需 Vision 能力模型，每次调用消耗 API 额度。\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e通知渠道配置\u003c/b\u003e（点击展开，至少配置一个）\u003c/summary\u003e\n\n\n| Secret 名称 | 说明 | 必填 |\n|------------|------|:----:|\n| `WECHAT_WEBHOOK_URL` | 企业微信 Webhook URL | 可选 |\n| `FEISHU_WEBHOOK_URL` | 飞书 Webhook URL | 可选 |\n| `TELEGRAM_BOT_TOKEN` | Telegram Bot Token（@BotFather 获取） | 可选 |\n| `TELEGRAM_CHAT_ID` | Telegram Chat ID | 可选 |\n| `TELEGRAM_MESSAGE_THREAD_ID` | Telegram Topic ID (用于发送到子话题) | 可选 |\n| `EMAIL_SENDER` | 发件人邮箱（如 `xxx@qq.com`） | 可选 |\n| `EMAIL_PASSWORD` | 邮箱授权码（非登录密码） | 可选 |\n| `EMAIL_RECEIVERS` | 收件人邮箱（多个用逗号分隔，留空则发给自己） | 可选 |\n| `EMAIL_SENDER_NAME` | 邮件发件人显示名称（默认：daily_stock_analysis股票分析助手） | 可选 |\n| `STOCK_GROUP_N` / `EMAIL_GROUP_N` | 股票分组发往不同邮箱（如 `STOCK_GROUP_1=600519,300750` `EMAIL_GROUP_1=user1@example.com`） | 可选 |\n| `PUSHPLUS_TOKEN` | PushPlus Token（[获取地址](https://www.pushplus.plus)，国内推送服务） | 可选 |\n| `SERVERCHAN3_SENDKEY` | Server酱³ Sendkey（[获取地址](https://sc3.ft07.com/)，手机APP推送服务） | 可选 |\n| `CUSTOM_WEBHOOK_URLS` | 自定义 Webhook（支持钉钉等，多个用逗号分隔） | 可选 |\n| `CUSTOM_WEBHOOK_BEARER_TOKEN` | 自定义 Webhook 的 Bearer Token（用于需要认证的 Webhook） | 可选 |\n| `WEBHOOK_VERIFY_SSL` | Webhook HTTPS 证书校验（默认 true）。设为 false 可支持自签名证书。警告：关闭有严重安全风险，仅限可信内网 | 可选 |\n| `SINGLE_STOCK_NOTIFY` | 单股推送模式：设为 `true` 则每分析完一只股票立即推送 | 可选 |\n| `REPORT_TYPE` | 报告类型：`simple`(精简) 或 `full`(完整)，Docker环境推荐设为 `full` | 可选 |\n| `REPORT_SUMMARY_ONLY` | 仅分析结果摘要：设为 `true` 时只推送汇总，不含个股详情 | 可选 |\n| `ANALYSIS_DELAY` | 个股分析和大盘分析之间的延迟（秒），避免API限流，如 `10` | 可选 |\n| `MERGE_EMAIL_NOTIFICATION` | 个股与大盘复盘合并推送（默认 false），减少邮件数量 | 可选 |\n\n\u003e 至少配置一个渠道，配置多个则同时推送。更多配置请参考 [完整指南](docs/full-guide.md)\n\n\u003c/details\u003e\n\n**其他配置**\n\n| Secret 名称 | 说明 | 必填 |\n|------------|------|:----:|\n| `STOCK_LIST` | 自选股代码，如 `600519,hk00700,AAPL,TSLA` | ✅ |\n| `TAVILY_API_KEYS` | [Tavily](https://tavily.com/) 搜索 API（新闻搜索） | 推荐 |\n| `SERPAPI_API_KEYS` | [SerpAPI](https://serpapi.com/baidu-search-api?utm_source=github_daily_stock_analysis) 全渠道搜索 | 可选 |\n| `BOCHA_API_KEYS` | [博查搜索](https://open.bocha.cn/) Web Search API（中文搜索优化，支持AI摘要，多个key用逗号分隔） | 可选 |\n| `BRAVE_API_KEYS` | [Brave Search](https://brave.com/search/api/) API（隐私优先，美股优化，多个key用逗号分隔） | 可选 |\n| `TUSHARE_TOKEN` | [Tushare Pro](https://tushare.pro/weborder/#/login?reg=834638 ) Token | 可选 |\n| `WECHAT_MSG_TYPE` | 企微消息类型，默认 markdown，支持配置 text 类型，发送纯 markdown 文本 | 可选 |\n| `NEWS_MAX_AGE_DAYS` | 新闻最大时效（天），默认 3，避免使用过时信息 | 可选 |\n| `BIAS_THRESHOLD` | 乖离率阈值（%），默认 5.0，超过提示不追高；强势趋势股自动放宽 | 可选 |\n\n#### 3. 启用 Actions\n\n`Actions` 标签 → `I understand my workflows, go ahead and enable them`\n\n#### 4. 手动测试\n\n`Actions` → `每日股票分析` → `Run workflow` → `Run workflow`\n\n#### 完成\n\n默认每个**工作日 18:00（北京时间）**自动执行，也可手动触发\n\n### 方式二：本地运行 / Docker 部署\n\n```bash\n# 克隆项目\ngit clone https://github.com/ZhuLinsen/daily_stock_analysis.git \u0026\u0026 cd daily_stock_analysis\n\n# 安装依赖\npip install -r requirements.txt\n\n# 配置环境变量\ncp .env.example .env \u0026\u0026 vim .env\n\n# 运行分析\npython main.py\n```\n\n\u003e Docker 部署、定时任务配置请参考 [完整指南](docs/full-guide.md)\n\n## 📱 推送效果\n\n### 决策仪表盘\n```\n🎯 2026-02-08 决策仪表盘\n共分析3只股票 | 🟢买入:0 🟡观望:2 🔴卖出:1\n\n📊 分析结果摘要\n⚪ 中钨高新(000657): 观望 | 评分 65 | 看多\n⚪ 永鼎股份(600105): 观望 | 评分 48 | 震荡\n🟡 新莱应材(300260): 卖出 | 评分 35 | 看空\n\n⚪ 中钨高新 (000657)\n📰 重要信息速览\n💭 舆情情绪: 市场关注其AI属性与业绩高增长，情绪偏积极，但需消化短期获利盘和主力流出压力。\n📊 业绩预期: 基于舆情信息，公司2025年前三季度业绩同比大幅增长，基本面强劲，为股价提供支撑。\n\n🚨 风险警报:\n\n风险点1：2月5日主力资金大幅净卖出3.63亿元，需警惕短期抛压。\n风险点2：筹码集中度高达35.15%，表明筹码分散，拉升阻力可能较大。\n风险点3：舆情中提及公司历史违规记录及重组相关风险提示，需保持关注。\n✨ 利好催化:\n\n利好1：公司被市场定位为AI服务器HDI核心供应商，受益于AI产业发展。\n利好2：2025年前三季度扣非净利润同比暴涨407.52%，业绩表现强劲。\n📢 最新动态: 【最新消息】舆情显示公司是AI PCB微钻领域龙头，深度绑定全球头部PCB/载板厂。2月5日主力资金净卖出3.63亿元，需关注后续资金流向。\n\n---\n生成时间: 18:00\n```\n\n### 大盘复盘\n```\n🎯 2026-01-10 大盘复盘\n\n📊 主要指数\n- 上证指数: 3250.12 (🟢+0.85%)\n- 深证成指: 10521.36 (🟢+1.02%)\n- 创业板指: 2156.78 (🟢+1.35%)\n\n📈 市场概况\n上涨: 3920 | 下跌: 1349 | 涨停: 155 | 跌停: 3\n\n🔥 板块表现\n领涨: 互联网服务、文化传媒、小金属\n领跌: 保险、航空机场、光伏设备\n```\n## ⚙️ 配置说明\n\n\u003e 📖 完整环境变量、定时任务配置请参考 [完整配置指南](docs/full-guide.md)\n\n\n## 🖥️ Web 界面\n\n![img.png](sources/fastapi_server.png)\n\n包含完整的配置管理、任务监控和手动分析功能。\n\n### 从图片添加股票\n\n在 **设置 → 基础设置** 中找到「从图片添加」区块，拖拽或选择自选股截图（如 APP 持仓页、行情列表截图），系统会通过 Vision AI 自动识别股票代码并合并到自选列表。\n\n**配置与限制**：\n- 需配置 `GEMINI_API_KEY`、`ANTHROPIC_API_KEY` 或 `OPENAI_API_KEY` 中至少一个（Vision 能力模型）\n- 支持 JPG、PNG、WebP、GIF，单张最大 5MB；请求超时 60 秒\n\n**API 调用**：`POST /api/v1/stocks/extract-from-image`，表单字段 `file`，返回 `{ \"codes\": [\"600519\", \"300750\", ...] }`。详见 [完整指南](docs/full-guide.md)。\n\n### 启动方式\n\n1. **编译前端** (首次运行需要)\n   ```bash\n   cd ./apps/dsa-web\n   npm install \u0026\u0026 npm run build\n   cd ../..\n   ```\n\n2. **启动服务**\n   ```bash\n   python main.py --webui       # 启动 Web 界面 + 执行定时分析\n   python main.py --webui-only  # 仅启动 Web 界面\n   ```\n\n访问 `http://127.0.0.1:8000` 即可使用。\n\n\u003e 也可以使用 `python main.py --serve` (等效命令)\n\n## 🗺️ Roadmap\n\n查看已支持的功能和未来规划：[更新日志](docs/CHANGELOG.md)\n\n\u003e 有建议？欢迎 [提交 Issue](https://github.com/ZhuLinsen/daily_stock_analysis/issues)\n\n\n---\n\n## ☕ 支持项目\n\n如果本项目对你有帮助，欢迎支持项目的持续维护与迭代，感谢支持 🙏  \n赞赏可备注联系方式，祝股市长虹\n\n| 支付宝 (Alipay) | 微信支付 (WeChat) | Ko-fi |\n| :---: | :---: | :---: |\n| \u003cimg src=\"./sources/alipay.jpg\" width=\"200\" alt=\"Alipay\"\u003e | \u003cimg src=\"./sources/wechatpay.jpg\" width=\"200\" alt=\"WeChat Pay\"\u003e | \u003ca href=\"https://ko-fi.com/mumu157\" target=\"_blank\"\u003e\u003cimg src=\"./sources/ko-fi.png\" width=\"200\" alt=\"Ko-fi\"\u003e\u003c/a\u003e |\n\n---\n\n## 🤝 贡献\n\n欢迎提交 Issue 和 Pull Request！\n\n详见 [贡献指南](docs/CONTRIBUTING.md)\n\n### 本地门禁（建议先跑）\n\n```bash\npip install -r requirements.txt\npip install flake8 pytest\n./scripts/ci_gate.sh\n```\n\n如修改前端（`apps/dsa-web`）：\n\n```bash\ncd apps/dsa-web\nnpm ci\nnpm run lint\nnpm run build\n```\n\n## 📄 License\n[MIT License](LICENSE) © 2026 ZhuLinsen\n\n如果你在项目中使用或基于本项目进行二次开发，\n非常欢迎在 README 或文档中注明来源并附上本仓库链接。\n这将有助于项目的持续维护和社区发展。\n\n## 📬 联系与合作\n- GitHub Issues：[提交 Issue](https://github.com/ZhuLinsen/daily_stock_analysis/issues)\n\n## ⭐ Star History\n**如果觉得有用，请给个 ⭐ Star 支持一下！**\n\n\u003ca href=\"https://star-history.com/#ZhuLinsen/daily_stock_analysis\u0026Date\"\u003e\n \u003cpicture\u003e\n   \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/svg?repos=ZhuLinsen/daily_stock_analysis\u0026type=Date\u0026theme=dark\" /\u003e\n   \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://api.star-history.com/svg?repos=ZhuLinsen/daily_stock_analysis\u0026type=Date\" /\u003e\n   \u003cimg alt=\"Star History Chart\" src=\"https://api.star-history.com/svg?repos=ZhuLinsen/daily_stock_analysis\u0026type=Date\" /\u003e\n \u003c/picture\u003e\n\u003c/a\u003e\n\n## ⚠️ 免责声明\n\n本项目仅供学习和研究使用，不构成任何投资建议。股市有风险，投资需谨慎。作者不对使用本项目产生的任何损失负责。\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZhuLinsen%2Fdaily_stock_analysis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FZhuLinsen%2Fdaily_stock_analysis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZhuLinsen%2Fdaily_stock_analysis/lists"}