第 25 章 · 什么是 Backtest
用历史数据模拟一个策略,能证明它将来会赚钱吗?
- 练习的能力
- 数据验证
- 3D 模拟
- 研究实验室 · 策略实验室(规划中)
市场现场
小林的规则在图上看起来不错。他想把每次信号后的涨跌相加,称为策略收益。阿哲问:当时是否有仓位?数量多少?何时成交?资金费怎样扣?只计算方向,无法复原账户。
你来决定
要得到能够对账的账户结果,你会怎样记录这段交易?
观察结果
默认合成样本的同数量毛收益约 1,320.78,手续费约 183.33、滑点约 91.66、资金费净支出约 108.23,净收益约 937.56,账户由 10,000 变为 10,937.56。这里没有历史行情,也不能把结果年化成真实策略成绩。
背后的机制
引擎在前一根收盘得到信号,下一根开盘执行,再记录持仓盈亏和当根资金费。开仓按当时权益的一部分确定数量,持有期间不持续再平衡。末尾默认平仓并收费。多空反转先平旧仓再开新仓,因此两次成交都产生费用。
最大回撤只根据收盘采样,不覆盖盘中最坏风险。账户权益耗尽会停止并保留负余额缺口;模型不是交易所逐仓强平引擎。开仓比例不超过当时权益,不意味着持有期间的实际杠杆永远不超过一倍。毛收益沿用实际交易数量,仅剥离费用,不是另跑一个零成本账户。
它叫什么
真实市场
第 22 章的可得时点决定最早成交时点。
第 17 章解释资金费方向,不能把持有成本只算在进出场。
第 10 章区分终点收益与途中损失。
动手
- 保留默认值,核对毛收益减总成本等于净收益。
- 修改策略类型,只比较同一合成数据和成本口径下的结果。
- 填写报告观察说明,复制或下载 Markdown;把未做的样本外和稳定性检验保留为未验证。
种子 42 的 360 根合成日线,非历史业绩。初始 10,000 美元,每次开仓使用 50% 权益预算,持有不再平衡,最后收盘退出;开盘与收盘检查权益耗尽,保留穿仓。
- 净收益
- 9.38%
- 收盘最大回撤
- 15.63%
- 平仓交易数
- 44
- 净胜率
- 52.27%
- 期末权益(美元)
- 10,937.56
- 停机 / 穿仓(美元)
- 未停机 / 0
| 同数量账本(美元) | 金额 |
|---|---|
| 毛盈亏 | 1,320.78 |
| 手续费 / 滑点 / 冲击 | 183.33 / 91.66 / 0 |
| 资金费净付(负数表示净收) | 108.23 |
| 净盈亏 = 毛 − 全成本 | 937.56 |
毛盈亏按同一批实际成交数量与参考价还原,不能当作另一条零费用策略。成本会改变之后的资金与数量;固定冲击参数不等于订单簿容量估计。资金费可能净收取。
| 前 8 次成交 | 信号索引 → 成交索引 | 方向 | 成交价 |
|---|---|---|---|
| entry | 10 → 11 | buy | 103.8 |
| signal-exit | 27 → 28 | sell | 107.29 |
| entry | 28 → 29 | buy | 108.27 |
| signal-exit | 49 → 50 | sell | 114.75 |
| entry | 51 → 52 | buy | 116.95 |
| signal-exit | 62 → 63 | sell | 120 |
| entry | 66 → 67 | buy | 121.65 |
| signal-exit | 70 → 71 | sell | 122.32 |
仅在本页编辑;刷新会清空,请及时复制或下载。
课程版本V1-docs;来源p3:report:backtest-report.md;第 25 章 / TRD-BT-001
只记录点击时的参数和结果;不代表实验通过。查看待保存快照
改一个变量
三种深度
- 基础用历史数据模拟一个策略,能证明它将来会赚钱吗?第 25 章
- 进阶事件驱动回测和向量化回测,各自有什么陷阱?Advanced C · 系统化与量化交易
- 机构研究平台怎样保证每一份回测都可复现、可审计?Institutional
- 3D选择市场和信号(Funding、OI、Momentum),组合条件,直接在历史行情里看结果。研究实验室
先把每笔买卖与费用复算出来,再看汇总指标。
比较事件驱动与向量化实现的时序、仓位重叠与费用边界,任何加速都不能改变账户语义。
继续完成作品:核查回测时钟和可复现代码。
保存输入版本、代码版本、配置、流水和报告;独立复算与审计是晋级前提,见 Advanced B。
继续完成作品:让输入、代码和报告可审计。
带走的问题
本章自测
不是,是固定种子的合成市场。
沿用实际交易数量与参考价,剥离费用;不是重新运行零成本策略。
默认强制平仓并计费,报告必须记录末尾处理口径。
不能,它只说明给定数据与假设下的模拟结果。
一句话带走
回测回答的是「如果过去按这条规则交易会怎样」。它能推翻一个策略,却不能保证策略将来有效。
记录这次学习
“已读”只表示你确认读过本章;自测由你对照参考结论自评,两者都不等于掌握认证或职业等级。每次点击保留一条带时间的本地记录。
自答核心问题并记录自评
用历史数据模拟一个策略,能证明它将来会赚钱吗?
概念掌握自报(不是认证)
仅由你主动声明。已读、正确自评或实验结果都不会推断掌握;未报告为未知。撤销后成为未知,并取消已选附件。
回测:未读取
历史模拟:未读取
权益曲线:未读取
绩效指标:未读取
尚未读取本章自报;没有报告不表示已经掌握。
带着本章上下文准备提问
Tutor 提问工作台
模型服务尚未配置。点击发送只会把下方预览提交给本站接口并收到未配置提示,不会调用外部模型或生成回答。提供方、运行位置及数据保留方式仍待确定。
角色目标:用故事、例子和计算解释一个概念。 以下为提问准备,不是该角色的生成结果。
Foundation 第 25 章 · TRD-BT-001 v1.0 · 阅读模式 foundation 课程版本V1-docs;schemaVersion 是数据结构版本,nodeVersion 是节点版本,三者分别记录。阅读模式不等于自报 Level。
选择本地记录、管理自报 Level
读取只在点击后发生;读取不等于同意上传。已读、自评、实验、研究快照均是学习者资料,不是模型指令或已验证事实。不要放入密钥、身份信息或真实账户资料。
检查将使用的提问与附件
请填写 1–4000 字的问题
服务未配置;没有 AI 回答。
本地存储、导出与清除
记录保存在当前浏览器、当前站点的 localStorage,最多 100 条,不自动过期。没有账号隔离或云备份;共用设备上的其他使用者可能读到。请单标签页编辑;多标签页同时写入可能覆盖,请及时导出。修改或删除记录会取消当前已选附件,需重新加载。
Journal 由第 35 章日志工具单独管理和清除。删除本地数据不代表删除未来服务端数据;当前没有服务端副本。浏览器拒绝存储时不会假报成功,请复制本页预览。