[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80996":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":14,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":15,"starSnapshotCount":15,"syncStatus":27,"lastSyncTime":28,"discoverSource":29},80996,"financial-analyst","jesson-hh\u002Ffinancial-analyst","jesson-hh","觀瀾 · A-share research workstation with 24 AI sub-agents — one command, deep-dive report in ~10 min.","https:\u002F\u002Fgithub.com\u002Fjesson-hh\u002Ffinancial-analyst",null,"Python",47,7,1,0,17,44.91,"Other",false,"main",true,[23],"stocks-analysis","2026-06-12 04:01:31","\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fbrand\u002Fhero.png\" alt=\"觀瀾 · Financial Analyst — AI 智能投研漫画概览\" width=\"900\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ch1 align=\"center\">觀瀾 · Financial Analyst\u003C\u002Fh1>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>One command. 24 AI agents. A 股深度研究.\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cem>Turn a 6-digit stock code into a 16-agent deep-dive report — fundamentals · technicals · whale signals · quant scores · bull\u002Fbear\u002Frisk debate — in ~10 minutes.\u003C\u002Fem>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>English\u003C\u002Fstrong> &nbsp;·&nbsp; \u003Ca href=\"README_zh.md\">中文\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Ffinancial-analyst\u002F\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Ffinancial-analyst.svg?style=flat&logo=pypi&logoColor=white&label=PyPI\" alt=\"PyPI\">\u003C\u002Fa>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Ffinancial-analyst.svg?style=flat&logo=python&logoColor=white\" alt=\"Python\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Frelease-v1.0.7-success?style=flat\" alt=\"Release\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Ftests-712_passed-brightgreen?style=flat\" alt=\"Tests\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-Apache_2.0-yellow?style=flat\" alt=\"License\">\n  \u003Cbr>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fagents-24-7C3AED?style=flat\" alt=\"Agents\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fswarm_presets-5-2563EB?style=flat\" alt=\"Swarm\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fbuddy_tools-31-0F766E?style=flat\" alt=\"Tools\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Falpha_factors-440-FF6B6B?style=flat\" alt=\"Alphas\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fmcp_tools-20-FF6B35?style=flat\" alt=\"MCP\">\n  \u003Ca href=\"https:\u002F\u002Fhuggingface.co\u002Fyifishbossman\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdata-HF_Hub-FFD21E?style=flat&logo=huggingface&logoColor=black\" alt=\"HF Datasets\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"#-what-is-it\">What is it\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"#-key-features\">Features\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"#-quick-start\">Quick Start\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"#-the-24-agents\">Agents\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"#-pluggable-memory\">Memory\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"#-datasets\">Datasets\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"#-llm-providers\">LLM\u003C\u002Fa>\n\u003C\u002Fp>\n\n🐣 **New to Python \u002F CLI?** **[小白上手指南 (中文, 30 min) →](docs\u002Fsetup\u002Fbeginner_zh.md)**\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fdemo\u002Finstall.svg\" alt=\"$ pip install financial-analyst ; fa init\" width=\"540\">\n\u003C\u002Fp>\n\n> **🆕 v1.0.7 highlights** *(2026-05-26)*\n>\n> - **`fa data update` 全开 5 种新数据** — `--include-f10` (TDX 公司大事\u002F龙虎榜\u002F研究报告, 零 token, pytdx 直连) · `--include-concepts` (同花顺概念股 + 成分股, 零 token, adata) · `--include-northbound` (沪+深股通历史资金流向, 零 token, akshare) · `--include-financial` (Tushare 财务三表, opt-in) · `--include-stock-basic` (Tushare 公司基本信息, opt-in)\n> - **UI 数据按钮 Shift+点击全开** — 普通点击 = 日线 + 5min + daily_basic + 北向 (~5 min 安全); Shift+点击 = 全开 (+ F10 csi500 ~30 min + 概念股 + Tushare 两项)\n> - **buddy `\u002Fdata\u002Frefresh` 7 个 query 跟 CLI 一一对齐** — UI 一键映射 CLI flag, Tushare token 走 server env `FA_TUSHARE_TOKEN` 不在 URL 暴露\n> - **`last_update.py` 扩 8 个数据类型** — `\u002Fdata\u002Fstatus` 现在追踪 day\u002F5min\u002Fdaily_basic\u002Ffinancials\u002Ff10\u002Fconcepts\u002Fstock_basic\u002Fnorthbound 8 类 staleness\n> - **3–10× faster data downloads** (v1.0.6 起) + **ModelScope (魔搭) CN-CDN** (`FA_DATA_SOURCE=modelscope`)\n>\n> Full [CHANGELOG](CHANGELOG.md).\n\n---\n\n## 💡 What Is It\n\n**A-share research workstation that thinks like a buy-side analyst.**\n\nHand it a stock code; 14 specialized AI sub-agents run in 4 trust tiers:\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Farchitecture\u002Farchitecture.png\" alt=\"觀瀾 · Agent Architecture — 24 agents in 4 trust tiers\" width=\"900\">\n\u003C\u002Fp>\n\nOut comes a markdown research report — **rated, attributed, falsifiable**. The `report-writer` is the **only** agent allowed to write report files. Untrusted news\u002FF10 sources are JSON-schema-locked at Tier-1 (no prompt injection). Memory is markdown — edit a `.md`, next report uses it. FTS5 retrieval cuts prompt cost ~60%.\n\n---\n\n## 🎬 See it in action\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\" valign=\"top\" align=\"center\">\n\n**💻 CLI** — `fa report SH600519` end-to-end\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fb781ea90-8b09-48e1-8679-31fdc99aa0f2\n\n\u003C\u002Ftd>\n\u003Ctd width=\"50%\" valign=\"top\" align=\"center\">\n\n**🖥 Web UI** — 觀瀾 dashboard interaction\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ff117a465-0c0d-4a41-a816-b02e8de053cd\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n## ✨ Key Features\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 🎯 16-agent stock deep-dive\n- Full research report in ~10 min\n- Fundamentals · technicals · whale · quant\n- Bull \u002F bear \u002F risk debate → `report-writer` synthesizes\n- Tier-4 introspector self-audits\n- **Only `report-writer` writes files**\n\n```bash\nfa report SH600519\n```\n\n\u003C\u002Ftd>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 🌅 Morning brief (5-agent v2)\n- Overnight US + HK + VIX scan\n- A-share 异动 + catalyst extraction\n- Sector rotation\n- AI-written summary\n\n```bash\nfa brief\n```\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 🌍 Overseas radar (v1.9.7)\n- SPX \u002F NDX \u002F HSI \u002F VIX \u002F USDCNY transmission\n- → A-share follow-through judgment\n- Actionable signals for tomorrow\n\n```bash\nfa overseas-radar\n```\n\n\u003C\u002Ftd>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 📈 Monthly mainline radar\n- 5-state industry-chain classifier\n- mainline \u002F initiation \u002F revival \u002F decay \u002F cold\n- `init → mainline` golden: +5.54pp fwd_60d, 87% win\n\n```bash\nfa mainline\n```\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 🧠 Pluggable memory — batteries included\n- 24 agents ship **pre-loaded** with a curated A-share playbook (~4,300 lines, not empty)\n- V1–V10 framework · factor insights · sentiment signals · cap-tiered rating\n- Edit any `.md` → next report respects it (no restart, no rebuild)\n- Your edits + dream-loop memory survive upgrades (seed only fills an empty dir)\n\n\u003C\u002Ftd>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 💤 Dream loop (self-improving)\n- After each report, `introspector` flags issues\n- Aggregator clusters proposals → `_proposed\u002F`\n- **No auto-merge** (errors compound in quant)\n\n```bash\nfa dream --since 30\n```\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 🔌 4-provider LLM routing\n- `qwen` — domestic direct\n- `deepseek-chat \u002F -reasoner` — Clash + MITM\n- `openai` · `anthropic`\n- Per-provider network profile, no fake-ip hijack\n\n```bash\nfinancial-analyst    # \u002Fmodel deepseek-reasoner\n```\n\n\u003C\u002Ftd>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n### 🧬 BYOM extensibility\n- Drop a `.py` into `config\u002Fplugins.yaml`\n- Your private model joins the quant consensus\n- **Your checkpoints never enter the open-source repo**\n- See [examples\u002F](examples\u002F) — FM cluster \u002F CSV loader \u002F TDX F10\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n## 🔌 MCP integration\n\n**20 fa tools accessible from any AI IDE that speaks the [Model Context Protocol](https:\u002F\u002Fmodelcontextprotocol.io\u002F).**\n\n- **stdio** — `financial-analyst-mcp` console script auto-installed by pip. Works with Claude Desktop, Claude Code.\n- **HTTP streamable** — `fa start` auto-mounts the same tools at `http:\u002F\u002F127.0.0.1:9999\u002Fmcp`. Works with Cursor, Codex CLI, JetBrains AI plugins.\n- **Same 20 tools, two transports** — read (`quick_quote`, `memory_search`, `read_past_report`, `chain_lookup`, ...) \u003C1s; long (`report`, `data_update`) covered by the `read_past_report` workaround; **dream-loop mutation tools** (`accept_proposal`, `revert_proposal`) write to `~\u002F.financial-analyst\u002Faudit.jsonl` and `git add` the change so every memory edit is observable and reversible.\n\nFull client config for all 4 IDEs → **[docs\u002Fmcp.md](docs\u002Fmcp.md)**\n\n---\n\n## ⚡ Quick Start\n\n### A. PyPI (recommended, 1 minute)\n\n```bash\npip install financial-analyst==1.0.7\nfa start                   # interactive wizard (LLM key + workspace + HF dataset)\n                           # then auto-starts backend + UI + browser\n# or non-interactive:\nfa init --yes --preset demo --workspace D:\u002Ffa-workspace   # CI \u002F scripted\nfa report SH600519                                         # first deep-dive (~10 min)\n```\n\n### B. Source (development)\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fjesson-hh\u002Ffinancial-analyst.git\ncd financial-analyst\npip install -e \".[dev]\"\npytest tests\u002F              # 712 tests, ~8 min\n```\n\n---\n\n## 🤖 The 24 Agents\n\n| Tier | Agents | Role |\n|---|---|---|\n| **Tier 1** (data) | quote-fetcher · factor-computer · model-predictor · **news-reader** · **f10-reader** · overseas-market-scanner · sector-rotation-analyzer | Parallel fetch + factor + read untrusted (JSON-schema-locked) |\n| **Tier 2** (analysts) | fundamental · technical · whale · quant | Per-perspective structured analysis |\n| **Tier 3** (decision) | bull-advocate · bear-advocate · risk-officer · **report-writer** | Debate then synthesize (only writer can persist) |\n| **Tier 4** (audit) | introspector | Post-mortem self-audit + memory proposals |\n| **Market** | market-scanner · morning-brief-writer · catalyst-extractor (v1.9.7) · global-news-aggregator (v1.9.7) · macro-impact-analyzer (v1.9.7) · mainline-classifier · mainline-writer · intraday-reviewer | Cross-stock and macro pipelines |\n| **Meta** | ask | Free-form Q&A via tool chain (31 buddy tools) |\n\nFull DAG: [docs\u002Farchitecture\u002F14_agents.md](docs\u002Farchitecture\u002F14_agents.md)\n\n---\n\n## 🧠 Pluggable Memory\n\n```\nmemories\u002F\n├── README.md                        # ← directory index, must-read\n├── risk-officer\u002F\n│   ├── hard_rules.md                # ← edit this → next report uses it\n│   └── pitfalls.md                  # FTS5-retrieved (large file)\n├── technical-analyst\u002F\n│   └── factor_insights.md\n└── _shared\u002F\n    └── playbook_V1_V10.md           # cross-agent shared\n```\n\n**Batteries included.** A fresh `pip install` seeds `~\u002F.financial-analyst\u002Fmemories` with 24 agents' worth of curated rules\u002Fplaybooks — the same knowledge the maintainer runs: pitfalls, 440-factor insights, the V1–V10 analyst framework, sentiment signals, and the market-cap-tiered rating system (~4,300 lines). A working analyst brain on day one, not an empty shell. Seeding only fills an *empty* dir, so your edits and accumulated dream-loop memory are never overwritten on upgrade.\n\n**Edit a markdown → next agent run picks it up. No restart, no rebuild.**\n\nSee [memories\u002FREADME.md](memories\u002FREADME.md) for the 24 dir index and design principles.\n\n---\n\n## 📊 Datasets\n\nThree preset bundles on HuggingFace, `fa init` auto-pulls:\n\n| Tier | Size | Stocks | 5min | Financials | F10 text | TDX zip | Repo |\n|---|---|---|---|---|---|---|---|\n| **demo** | ~155 MB | 300 (CSI300) | ❌ | ❌ | ❌ | ❌ | [data-demo](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fyifishbossman\u002Ffinancial-analyst-data-demo) |\n| **lite** | ~3 GB | 800 (CSI800) | ✅ ~7d | ✅ 735 MB | ✅ 1323 codes | ❌ | [data-lite](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fyifishbossman\u002Ffinancial-analyst-data-lite) |\n| **full** | ~14 GB | 5500+ (all A) | ✅ | ✅ | ✅ | ✅ 257 MB | [data-full](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fyifishbossman\u002Ffinancial-analyst-data-full) |\n\n```python\nfrom huggingface_hub import snapshot_download\nsnapshot_download(\n    repo_id=\"yifishbossman\u002Ffinancial-analyst-data-lite\",\n    repo_type=\"dataset\",\n    local_dir=\"~\u002F.financial-analyst\u002Fdata\",\n)\n```\n\n**Two binary formats**: Qlib `.bin` (time-series, `[4-byte float32 start_idx] + [float32 array]`) for OHLCV+factors; Parquet (columnar) for financials\u002Fevents\u002FF10\u002Findustry. Compatible with [Microsoft Qlib](https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fqlib) and `D.features()` API directly.\n\n### 🇨🇳 CN users: cloud-drive download (Aliyun \u002F Quark)\n\nHuggingFace is slow \u002F frequently breaks from mainland China. We provide cloud-drive mirrors (Aliyun Drive + Quark, same data, MD5-verified). Two-step setup:\n\n```cmd\n:: 1. Download zip from cloud drive (link below), extract to e.g. D:\\fa-data\n:: 2. Wire it into your workspace:\nfa data link --src D:\\fa-data\n```\n\n| Bundle | Size | Aliyun Drive | Quark |\n|--------|------|--------------|-------|\n| demo (CSI300) | ~155 MB | _[link TBD]_ | _[link TBD]_ |\n| lite (CSI800 + 5min) | ~3 GB | _[link TBD]_ | _[link TBD]_ |\n| full (all A-share + 5min + F10) | ~14 GB | _[link TBD]_ | _[link TBD]_ |\n\n`fa data link` writes `config\u002Floaders.yaml` to point at your extracted directory — no copy, no symlink. Full walkthrough: **[docs\u002Fsetup\u002Fdata_offline.md](docs\u002Fsetup\u002Fdata_offline.md)**.\n\n**Auto-acceleration since v1.0.6**: `fa init` defaults `HF_ENDPOINT=https:\u002F\u002Fhf-mirror.com` + enables `hf_transfer` multi-connection downloads (3-10× speedup) — no flag needed. Override either by setting your own env var. Power users outside CN: `FA_DATA_SOURCE=hf fa init` forces canonical hf.co.\n\n**Native ModelScope (魔搭) path**: if the maintainer has mirrored data there (check `HF_PACKAGES.*.modelscope_id`), use `FA_DATA_SOURCE=modelscope` + `pip install 'financial-analyst[modelscope]'` for full-speed CN CDN downloads.\n\n---\n\n## 🔧 Optional · OpenCLI (news \u002F xueqiu \u002F THS F10)\n\nSome sub-agents and buddy tools fetch live data from sites that need a browser session or scraping bridge — **OpenCLI** is that bridge. It's a Node.js CLI: `npm install -g @jackwener\u002Fopencli`. Optional but recommended.\n\n| Feature | Needs OpenCLI? | What happens without it |\n|---------|:---:|------|\n| `fa report SH600519` core report (valuation \u002F technical \u002F quant \u002F debate) | ❌ | Works fully — uses local Qlib bin data + pytdx |\n| News section in `fa report` | ✅ | Section renders empty (no crash) |\n| `fa news-collect` (eastmoney \u002F sinafinance kuaixun) | ✅ | Errors with install hint |\n| `fa news-collect --sources xueqiu-*` (Xueqiu retail sentiment) | ✅ + Chrome ext | Needs the [OpenCLI Chrome extension](https:\u002F\u002Fchromewebstore.google.com\u002Fdetail\u002Fopencli\u002Fildkmabpimmkaediidaifkhjpohdnifk) and a xueqiu.com login |\n| UI buddy tools: xueqiu watchlist \u002F fund flow \u002F THS iwencai | ✅ | Tool returns \"opencli not installed\" with install command |\n\n```bash\n# Bare minimum (Node ≥ 21 prerequisite from nodejs.org)\nnpm install -g @jackwener\u002Fopencli\nopencli --version              # verify\n\n# THS-extra plugin (F10 \u002F fund-flow \u002F iwencai). Either path:\nopencli plugin install https:\u002F\u002Fgithub.com\u002Fjesson-hh\u002Ffinancial-analyst.git#main:opencli-plugin-ths-extra  # for pip-installed users\nopencli plugin install file:\u002F\u002F\u002Fpath\u002Fto\u002Frepo\u002Fopencli-plugin-ths-extra                                     # for source clones\n\n# Chrome extension for cookie-mode collectors (xueqiu)\n# https:\u002F\u002Fchromewebstore.google.com\u002Fdetail\u002Fopencli\u002Fildkmabpimmkaediidaifkhjpohdnifk\n\n# First test\nfa news-collect                # default sources, ~200 items\nfa doctor                      # verify all bridges OK\n```\n\nStep-by-step zh guide: [`beginner_zh.md` Step 8](docs\u002Fsetup\u002Fbeginner_zh.md#第-8-步-可选--装-opencli-解锁新闻--雪球--同花顺-5-10-分钟). Xueqiu cookie-mode setup: [`xueqiu_setup.md`](docs\u002Fxueqiu_setup.md).\n\n---\n\n## 🔌 LLM Providers\n\nfinancial-analyst is a **tool-heavy 24-agent system** — Tier-1 calls buddy tools, Tier-2 joins cross-stock data, Tier-3 writes structured reports with `[V#]\u002F[F#]` anchors, and `report-writer` is the only agent allowed to touch disk. **Your LLM choice decides whether the swarm uses its tools or fabricates answers from training data.**\n\n### Environment Variables\n\nSet one provider's `*_API_KEY` in `.env` (the `fa init` wizard prompts for it). Defaults are loaded from `config\u002Fllm.yaml`.\n\n| Variable | Required | Description |\n|---|:---:|---|\n| `DASHSCOPE_API_KEY` | for `qwen` *(default)* | Aliyun Bailian — qwen3.5-plus \u002F qwen3-coder-plus |\n| `DEEPSEEK_API_KEY` | for `deepseek` | deepseek-chat \u002F deepseek-reasoner |\n| `OPENAI_API_KEY` | for `openai` | gpt-4o \u002F gpt-4-turbo |\n| `ANTHROPIC_API_KEY` | for `anthropic` | claude-opus \u002F claude-sonnet \u002F claude-haiku |\n| `TUSHARE_TOKEN` | No | A-share data; without it the system falls back to pytdx main-stations + Tencent realtime (free, no token) |\n\n### 🎯 Recommended Models\n\n| Tier | Examples | When to use |\n|---|---|---|\n| **Best** | `deepseek-reasoner` · `claude-opus-4-7` · `gpt-4o` · `qwen3-max` (requires general endpoint) | Tier-3 decision agents (bull \u002F bear \u002F risk-officer \u002F report-writer \u002F introspector), market-level swarms (overseas-radar \u002F mainline \u002F morning-brief writer) |\n| **Sweet spot** *(default)* | `qwen3.5-plus` · `qwen3-coder-plus` · `deepseek-chat` | Daily driver — reliable tool-calling at low cost; Tier-1 data agents + Tier-2 analysts run here |\n| **Avoid for agent use** | `claude-haiku-4-5` · `qwen-flash` · `qwen-turbo` · `*-mini` · small \u002F distilled variants | Tool-calling unreliable — agents skip `D.features()` \u002F TDX-F10 lookups and hallucinate factor scores from training data instead of loading them from disk |\n\nDefault ships with `qwen3.5-plus`. Aliyun Bailian gives 1M free token credit on signup — roughly **150 stock-deep-dive reports** before you pay anything.\n\n### Network Profiles\n\n`network_profile` decides how each provider connects through Chinese network conditions (Clash fake-ip, MITM, etc.):\n\n| Provider | Profile | Detail |\n|---|---|---|\n| **qwen** | `domestic` | `trust_env=False`, direct to `aliyuncs.com` — bypasses Clash fake-ip (which routes to overseas nodes and 10s-timeouts) |\n| **deepseek** · **openai** · **openrouter** | `intl_clash` | Honours `HTTPS_PROXY` (default `127.0.0.1:7890`) with `verify=False` — Clash MITMs HTTPS via its root cert |\n| **anthropic** | litellm fallback | Anthropic SDK isn't OpenAI-compatible; the routing layer falls back to litellm |\n\n### Hot-Swap\n\n```bash\n> \u002Fmodel deepseek-reasoner    # in TUI, no restart, in-flight session preserved\n> \u002Fmodel qwen3-coder-plus     # bare name resolves provider; or use provider\u002Fmodel form\n> \u002Fmodel                      # list configured models\n```\n\nOr change the `default_provider` \u002F `default_model` in `config\u002Fllm.yaml`. See [docs\u002Fllm_routing.md](docs\u002Fllm_routing.md) for the multi-provider AsyncOpenAI client design.\n\n---\n\n## 🤝 Issues & Feedback\n\nPersonal project, single maintainer. File issues at\n[github.com\u002Fjesson-hh\u002Ffinancial-analyst\u002Fissues](https:\u002F\u002Fgithub.com\u002Fjesson-hh\u002Ffinancial-analyst\u002Fissues).\n\n- [VERSIONING.md](VERSIONING.md) — N-2 LTS, semver policy\n- [docs\u002Fjourney.md](docs\u002Fjourney.md) — bilingual build journey (empty repo → 440 alphas + 24 agents, ~2 weeks)\n\n---\n\n## 📄 License & Disclaimer\n\nApache 2.0. **Research and educational purposes only**. Drafts analyst-grade work product for review by qualified professionals. Does not make investment recommendations, execute transactions, or post to any ledger. You are responsible for compliance with applicable laws.\n\n\u003Csub>v1.0.7 · 2026-05-26 · made by [@jesson-hh](https:\u002F\u002Fgithub.com\u002Fjesson-hh) · bilingual zh\u002Fen\u003C\u002Fsub>\n","觀瀾 · Financial Analyst 是一个用于A股研究的工作站，通过一条命令即可调用24个AI子代理生成深度研究报告。其核心功能包括基本面分析、技术面分析、鲸鱼信号识别、量化评分及多空风险辩论等，并能在约10分钟内完成报告。项目使用Python语言开发，支持多种数据源接入如TDX、同花顺和Tushare等，确保了数据的全面性和准确性。适合金融分析师、投资者以及对股票市场有兴趣的研究人员使用，在快速获取深入分析的同时节省大量时间。",2,"2026-06-11 04:03:08","CREATED_QUERY"]