第 3 章 · 01 市场、数据源、券商账户:先把三者分清 本节摘要:新手第一次用 Vibe-Trading,最容易混淆三个词——「市场」「数据源」「券商账户」。本节先把这三个概念彻底分开:市场决定交易规则(股票 T+1、加密 T+0),数据源决定历史数据从哪来(Tushare/OKX/yfinance/本地文件),券商账户只在你需要读取真实账户或模拟/真实下单时才涉及。破除这个混淆后你会发现,初学阶段根本不需要碰券商账户——纯研究用 loader 读行情就够。读完本节,你能准确说出这三个词各自决定什么,并理解为什么学习阶段应该只用数据源、远离账户连接。 内容来源:原项目中文入门教程(第 6 章「市场和数据源怎么选」)的概念澄清部分改写。
本节摘要:新手第一次用 Vibe-Trading,最容易混淆三个词——「市场」「数据源」「券商账户」。本节先把这三个概念彻底分开:市场决定交易规则(股票 T+1、加密 T+0),数据源决定历史数据从哪来(Tushare/OKX/yfinance/本地文件),券商账户只在你需要读取真实账户或模拟/真实下单时才涉及。破除这个混淆后你会发现,初学阶段根本不需要碰券商账户——纯研究用 loader 读行情就够。读完本节,你能准确说出这三个词各自决定什么,并理解为什么学习阶段应该只用数据源、远离账户连接。
内容来源:原项目中文入门教程(第 6 章「市场和数据源怎么选」)的概念澄清部分改写。
阅读完本节,你应当能够:
这三个词混在一起,会带来两类麻烦:
实际上,绝大多数研究任务(回测、因子分析、报告生成)只用到数据源,完全不碰券商账户。把这点想清楚,你就能放心地做研究,而不必担心「会不会不小心下单」。
💡 一句话总括:市场定规则,数据源给历史,券商账户碰真钱。前两者随便用,后者必须先只读、再模拟、最后才实盘。
市场决定的是「交易规则」——这个市场的标的怎么买卖、什么时候能买卖、有什么限制。
不同市场的规则差异巨大:
| 市场 | 典型规则 | 典型标的 |
|---|---|---|
| 中国 A 股 | T+1、涨跌停、一手 100 股、印花税 | 600519.SH、000001.SZ |
| 全球股票 | 可能 T+0、可做空、小数股 | AAPL、MSFT |
| 加密货币 | 7×24、T+0、可加杠杆 | BTC-USDT、ETH-USDT |
| 中国期货 | 保证金、每日盯市、交割月 | 螺纹钢、原油 |
| 外汇 | 点差、隔夜利息 | EUR/USD |
市场决定了你回测时该用哪个引擎(详见第 2 章 03),也决定了成本结构(手续费、滑点、印花税)。
💡 市场是「规则层」:它不提供数据,也不连账户,它只是一套「这个标的该怎么交易」的规则集。你在
config.json里选engine字段,本质上就是在选市场规则。
数据源决定的是「历史数据从哪里来」——你的 K 线、财务字段、成分股清单,由谁提供。
Vibe-Trading 支持的数据源大致分四类:
| 类型 | 特点 | 典型代表 |
|---|---|---|
| 公开行情源 | 启动门槛低,无需 token;覆盖与质量会随来源变化 | yfinance、AKShare |
| 可选 key 数据源 | 字段更丰富、更稳定;需申请 token 或付费 | Tushare、Futu |
| 加密交易所源 | 7×24 实时行情,通常免费 | OKX、CCXT |
| 本地数据 | 最可控,可复现实验 | local(CSV/Parquet/DuckDB) |
数据源只负责「给历史数据」,不涉及任何账户操作、不下单。你可以随意切换、混用,完全不用担心安全问题。
💡 数据源是「数据层」:它和券商账户完全无关。你用 yfinance 拉 AAPL 的历史 K 线,和你的券商账户没半点关系——它只是公开行情。
券商账户只在你需要做以下事情时才涉及:
如果你只是做历史回测、因子分析、报告生成,根本不需要碰券商账户——纯研究只用到数据源。这也是为什么 Vibe-Trading 默认是只读、不托管资金的原因。
⚠️ 安全基调:Vibe-Trading 不是券商,不托管资金,不提供投资建议。券商账户相关功能是 opt-in 且默认只读的。学习阶段请只用数据源,即使要碰账户也只用 read-only 和 paper,详见本章 03 节。
把三者放在一起,它们的关系是这样的:
市场(规则层) ── 决定交易规则(T+1/涨跌停/佣金) │ 不提供数据,不连账户 │ 数据源(数据层) ── 提供历史行情/财务/成分股 │ 不连账户,纯只读 │ 券商账户(账户层) ── 读真实账户/模拟下单/真实下单 可选,默认只读,碰真钱需谨慎
一个完整的实盘研究流程,可能同时涉及三者:用数据源拉历史做回测,按市场规则模拟成本,最后(可选)用券商账户读真实持仓做对比或模拟下单。
但请注意:前两步(数据源 + 市场)是纯研究,完全安全;只有第三步(券商账户)才涉及资金风险。所以学习阶段,你完全可以停留在前两步,不必碰第三步。
Vibe-Trading 在代码层面用两个组件对应上述区分:
agent/backtest/loaders/。agent/src/trading/。这是新手最常混淆的点,必须记牢:
💡 loader vs connector:
- loader 读市场行情(研究侧,默认,纯只读,安全)。
- connector 读或操作你的券商账户(账户侧,可选,默认只读,涉及资金需谨慎)。
两者完全不重叠:loader 永远不连账户,connector 永远不只读行情(虽然它的 read-only profile 也读行情,但出发点是「读账户相关数据」而非「读公开行情」)。
遇到一个研究任务,问自己两个问题就能判断需要什么:
举几个例子:
| 任务 | 数据源 | 券商账户 |
|---|---|---|
| 回测 SP500 动量策略 | 需要(yfinance) | 不需要 |
| 分析 BTC-USDT 的因子 IC | 需要(OKX) | 不需要 |
| 复盘我在券商的真实交易行为 | 不一定 | 需要(read-only 读流水) |
| 在模拟盘测试下单流程 | 不需要 | 需要(paper) |
| 真实交易 | 不需要 | 需要(live,需 mandate) |
你会发现,前两个任务(纯研究)占了学习阶段的大部分,完全不碰券商账户。
最后强调一下,把三者混淆不只是概念问题,还有实际风险:
⚠️ 本教程及 Vibe-Trading 均不构成投资建议。任何真实交易应先经过你自己的判断、券商确认、模拟盘验证和风险控制。学习阶段请只用数据源 + read-only/paper 账户。
⚠️ 本节所有内容均不构成投资建议。券商账户相关功能是 opt-in 且默认只读,实盘需经授权边界与 kill switch。
下一节,我们将深入数据源与数据路由——讲清六大数据源(Tushare/OKX/CCXT/yfinance/AKShare/Futu)与本地 loader 的特点、适用场景、符号约定,以及混合市场研究如何用
source="auto"自动路由。