第 9 课 · 美股与加密货币对照

换市场等于换约束条件:同一个双均线策略,在三种交易制度下性格大变

预计用时:35 分钟 上一课:第 8 课 · 执行闭环架构

这节课你将得到什么

一个对照实验:把第 4 课那个 5/20 双均线策略,一行信号逻辑都不改,分别套上三套交易规则回测——A 股(T+1、涨跌停、成本 0.1%)、美股(T+0、无涨跌停、佣金极低)、加密货币(T+0、7×24、无涨跌停、双边手续费各 0.1%)。同一段茅台 2024 年走势"扮演"三个市场,你会亲眼看到:策略的性格,一半是规则给的。

按课程使命,美股与加密货币只作对照、不深入——你的主战场仍是 A 股实盘辅助决策。这节课的真正目的,是让你理解"约束模型"是 Agent 代码的一部分:换一个市场,你的 Agent 要改的不是几个参数,而是整套制度假设。

一、三个市场,三张规则表

第 1 课你背过 A 股的硬规则。现在把它放进更大的坐标系:

约束A 股(主板)美股加密货币(现货)
交收/交易制度T+1:当日买入次日才能卖T+0:当日可反复买卖(结算 T+1,2024 年 5 月起由 T+2 缩短)T+0:当日可反复买卖
涨跌停±10%(创业板/科创板 ±20%,ST ±5%)无涨跌停,只有熔断与个股停牌机制无涨跌停,一天 ±30% 不稀奇
交易时间工作日 9:30–15:00,节假日闭市工作日 9:30–16:00(美东),另有盘前盘后7×24,全年无休
成本(本课口径)单边综合约 0.1%(佣金+印花税打包)零售佣金约等于零双边各 0.1%(主流所常见档位)
最小交易单位一手 100 股1 股(不少券商支持碎股)可无限细分

注意最后一列:加密货币把 A 股的所有"保护性约束"全部拆掉,只留下一道高手续费。这张表就是脚本里 RULES 字典的设计图——所谓"换市场",在代码层面就是换这张表。

二、脚本设计:同一走势,三套规则

脚本 scripts/regime_compare.py 全程不联网(免费接口的风控教训不用再吃一次),做三件事:

三、动手:跑起来

cd "$HOME/AI Project/Quant Learning"
source .venv/bin/activate
python scripts/regime_compare.py

你会看到(我已在你的环境实测通过):

数据:600519_qfq_2024.csv,242 个交易日(A股/美股共用这段走势)
加密市场版本:补齐周末后 365 根日 K(7×24,无节假日)

【A股(T+1·涨跌停)】K线 242 根,金叉 9 次,死叉 8 次,涨跌停无法成交 0 次
【美股(T+0·低费)】K线 242 根,金叉 9 次,死叉 8 次
【加密(T+0·7×24)】K线 365 根,金叉 12 次,死叉 11 次

==============================================================
同一个策略、同一段走势,只换交易规则
==============================================================
             A股(T+1·涨跌停) 美股(T+0·低费) 加密(T+0·7×24)
--------------------------------------------------------------
总收益率              -24.53%         -22.01%          -12.33%
年化收益              -25.40%         -22.81%          -12.33%
最大回撤              -25.86%         -23.79%          -18.92%
平仓交易次数                8               8               11
胜率                      12%             12%              18%
总费用                 14,331           1,543           21,162
==============================================================
规则差异冲击:美股规则比 A 股规则多 2.51%(同一信号序列,差在 T+0 当日成交与成本)
注:A股(T+1·涨跌停)、美股(T+0·低费)、加密(T+0·7×24) 年末仍持仓,浮动盈亏已计入。
口径说明:A 股这一列为什么和第 4 课对不上

第 4 课的精确成本是"佣金万 2.5(最低 5 元)+ 印花税 0.05% 仅卖出",本课为了和美股/加密对齐,简化成"单边综合 0.1% 打包"。所以 A 股列是 -24.53% 而不是第 4 课的 -23.79%——差的就是这点成本口径。对照实验要的是三套规则同一口径,精确建模回 A 股实盘时,请仍用第 4 课的算法。

四、读数:三组数字背后的三个故事

故事一:T+1 的隔夜税,2.51 个百分点。A 股与美股共用完全相同的信号序列(9 金叉 8 死叉),唯一区别是 A 股要等次日开盘、美股收盘即成交,外加成本差。结果美股少亏 2.51 个点。这 2.51 个点就是 T+1 制度的价格:收盘出信号到次日开盘之间那 17.5 个小时,隔夜跳空的风险全部由你承担——这正是第 4 课强调的"信号日与成交日之间隔着的那个晚上"。在 T+0 市场,那个晚上不存在。

故事二:成本是沉默的杀手,且各国死法不同。同样是 8 个来回:美股总费用 1,543 元,A 股 14,331 元——9 倍的差距,来自佣金税费的量级差。加密货币更狠:11 个来回被抽走 21,162 元,双边各 0.1% 意味着每换一次仓,本金的 0.2% 就蒸发了。换手率越高的策略,这道税越致命——这就是为什么高频策略在加密市场要为手续费打工。

故事三:加密版"表现最好",但别误读。-12.33% 是最好看的,可这不是"加密市场更好"的证据:它周末多出 123 根 K 线,信号序列本身就变了(12 金叉 vs 9 金叉),等于换了一道考题。这次对照能下的结论只有一个:规则不同,同一策略的盈亏、回撤、换手、费用全部不同——评价任何策略,必须先问它在什么规则下回测的。顺带一提:加密版年化与总收益相等,因为 365 根 K 线恰好一年,7×24 市场没有"交易日"与"自然日"的换算。

五、对 Agent 设计的冲击(本课的知识核心)

回测只是开场。你的目标是 Agent 辅助实盘决策,真正重要的问题:如果哪天你要把这套 Agent 迁到美股或加密市场,哪些代码要重写?

A 股 Agent 里的逻辑在美股/加密的命运
T+1 冻结状态机:今日买入标记"冻结",次日解禁;卖出前检查可卖数量整个消失。T+0 下当日买当日即可卖,"可卖数量 = 持仓数量",冻结逻辑一行不留
涨跌停分支:涨停买不进、跌停卖不出,挂单顺延整个消失。美股换成熔断与 LULD 停牌的新分支;加密连熔断都没有
隔夜跳空风险建模:盘后分析 → 次日开盘计划美股盘前盘后仍有交易,加密根本没有"隔夜"概念——24 小时连续定价
闭市即下班:15:00 后监控 Agent 可以静默不存在了。7×24 市场要求"人睡机器醒"的值班设计

前两条是代码层面:你的 Agent 状态机里为 A 股制度写的那部分,换市场时是删除而不是改参数——约束模型从来不是配置项,是架构。第三条是认知层面:美股还有自己的坑,比如 PDT 规则(账户不足 2.5 万美元,5 个交易日内日内交易超过 3 次会被限制)——换市场不是约束归零,是换了一副约束的面孔。

第四条展开讲:7×24 市场的"人睡机器醒"值班设计

A 股监控 Agent(第 6 课)每晚 15:00 收工,出了漏子最多耽误一个晚上。加密市场没有收工这回事,设计问题整个变了:

对你的 A 股主战场,这一条的反向价值更大:A 股的闭市时间是制度白送给你的缓冲带——盘后到次日 9:15,你有 18 个小时从容分析、制定计划。设计 A 股 Agent 时把重活放在这个窗口,是制度允许的最优解。

自测

凭记忆作答——答错比答对更能加固记忆。

动手挑战(可选,10 分钟)

打开 scripts/regime_compare.py,做两个实验:① 把 a_share"t_plus" 从 1 改成 0 重跑,A 股列会逼近美股列吗?差多少?② 把 crypto"fee_rate" 改成 0.0005(低费率所),看总费用和收益各变多少。做完回答自己:哪个约束对结果的影响更大——交收制度,还是手续费?

延伸阅读

下一课预告

第 10 课 · 政策面数据:公告与监管文本——A 股是政策敏感度最高的市场之一,下一课让 Agent 学会读公告和监管文件,把"政策风向"变成结构化的信号输入。

有任何不清楚的地方(比如 RULES 字典怎么扩展、周末 K 线的合成逻辑、PDT 规则的细节),直接问我——我是你的老师。