BJF TRADING GROUP · SHARPTRADER 生态系统
SharpTrader Optimizer — 面向延迟套利、对冲套利、锁仓套利等策略的多核回测器与策略优化器
专业级回测与参数优化引擎,适用于 SharpTrader 的套利及非套利策略。以可配置的订单执行时间回放真实历史 Tick 数据,将大规模参数网格分配到全部 CPU 核心上并行计算,并直接根据 Tick 数据流自动计算每笔订单的真实滑点。由 SharpTrader Pro 原班团队打造——相同的执行引擎,相同的经纪商协议适配。
一次性授权
SharpTrader Optimizer 能做什么?
SharpTrader Optimizer 是一款专用的回测与参数优化引擎,适用于基于 SharpTrader 平台构建的套利及非套利策略。它将历史 Tick 数据回放到您的策略逻辑中,模拟真实的执行成本(可配置的执行时间、逐笔变化的点差、基于 Tick 计算的滑点),并利用全部可用 CPU 核心并行运行,对数千种参数组合进行网格优化。
该工具专为运行延迟套利、锁仓套利、对冲套利、配对交易、新闻驱动及趋势策略的交易者打造,帮助他们在投入真实资金之前找到稳健的参数组合。与普通零售回测器不同,SharpTrader Optimizer 基于真实历史 Tick 运行,允许以毫秒为单位设置每笔订单的执行时间,并根据 Tick 数据流自动计算滑点——而这三个变量恰恰决定了策略在实盘中能否盈利。
单一配置回测
用一组参数对历史 Tick 数据进行回测,查看盈亏曲线、回撤、胜率以及按小时划分的表现。
参数区间优化
为每个策略参数设定最小值/最大值/步长——引擎会生成所有组合,并按盈亏或回撤对结果排序。
多核分配
计算负载均匀分配到所有 CPU 核心。单线程需要 12 小时的任务,在 4 核 CPU 上约 3 小时即可完成。
执行时间感知
以毫秒为单位设置每笔订单的执行时间。引擎会在 Tick 数据流中按该延迟向前推进,并以对应时刻的买价/卖价成交——自动产生真实的正滑点或负滑点。
支持的策略
Optimizer 自发布首日起即内置两类可直接测试的套利策略。另有三类将于 2026 年第二至第三季度上线,作为授权用户的免费产品更新。
现已可用 已发布
自 v1.0 版本起
- 延迟套利(Latency Arbitrage)— 经典的快速行情源对比慢速行情源策略,可配置开仓价差阈值与追踪离场。
- DominionForce — SharpTrader 专有的单腿套利变体,带自适应点差过滤。
- Phantom Drift — 融合马丁格尔与锁仓套利的混合逻辑。
- 锁仓策略(全系列)— 经典锁仓、非对称锁仓、多腿锁仓。
- 对冲套利 — 在两家经纪商同时开仓,并采用风险平价。
2026 年第三至第四季度路线图 计划中
授权用户免费更新
- 配对交易 — 基于协整关系,在相关品种之间进行均值回归交易。
- 三角套利(外汇)— 捕捉三种货币交叉汇率之间的定价偏差。
- 多品种组合优化 — 2026 年底推出。
回测模式与优化模式
Optimizer 提供两种互补的运行模式。大多数工作流程会同时使用两者:先通过优化找出候选参数区间,再对排名靠前的候选进行详细回测,验证资金曲线形态与回撤特征。
回测模式
用一组参数在指定的历史日期区间内运行。输出完整的盈亏图表、按小时划分的表现、按方向统计的盈亏笔数,以及逐笔交易明细。
- 逐笔查看资金曲线
- 检查每一笔已平仓订单:订单号、时间、类型、手数、价格、盈亏
- 按星期和小时进行筛选
- 适用场景:验证单一配置、调试策略逻辑、为客户或合作伙伴生成报告
优化模式
以网格搜索方式运行数千乃至数十万种参数组合。输出按盈亏、最大回撤(MaxDD)或自定义评分排序的结果表。
- 为每个策略参数设定最小值/步长/最大值,引擎自动生成完整网格
- 多核并行(每个核心同时处理一个组合)
- 实时进度条,显示已完成组合数和预计剩余时间
- 适用场景:寻找稳健的参数区域、前推(walk-forward)分析、在不同执行时间场景下进行压力测试
为什么多核并行会带来根本改变
大多数普通零售回测器只在单个 CPU 线程上运行。在如今 4–16 核的 CPU 上,这会浪费 75–94% 的可用算力。SharpTrader Optimizer 从设计之初就将优化负载分配到每一个可用核心上,每个核心独立处理一个参数组合。
在实际使用中,这意味着您可以一夜之间完成策略想法的迭代,而不必耗费一周。一次典型的中等规模优化,在合理步长下针对 1 周 Tick 数据会产生 30,000–100,000 种组合——在 4 核工作站上过夜即可轻松完成,在 16 核机器上只需几个小时。
严肃优化的推荐硬件
对于基于数月 Tick 数据集的 10 万+ 组合网格,我们建议使用 8–16 核 CPU(Intel i7/i9 第 12 代或更新,AMD Ryzen 7/9 5000 系列或更新)。如需加载多年的 Tick 历史数据,内存至少 32 GB。强烈建议使用 SSD 以提升 Tick 数据读写性能。
配置较低的硬件同样可以运行——只是耗时更长。优化器会自动检测核心数量并线性扩展。
优化参数详解
每种策略都有各自的一组可优化参数——下表以延迟套利策略为代表示例,列出其可用参数。其他策略(DominionForce、Phantom Drift、锁仓、对冲、配对交易)提供的参数各不相同。每个参数都可单独开关:勾选 Opt? 复选框即可将其纳入网格,不勾选则固定为单一数值。调整区间时,总组合数会实时显示。
| 参数 | 控制内容 | 典型区间 |
|---|---|---|
| StopLoss | 强制离场前的最大亏损点数(pips)。对锁仓和对冲策略的风险控制至关重要。 | 50–100,步长 10 |
| TakeProfit | 目标盈利点数(pips)。较低的止盈可提高命中率;较高的止盈可捕捉更大行情。 | 200–500,步长 50 |
| MinProfit | 追踪止损启动前的最低盈利阈值。用于过滤微小盈利。 | 10–100,步长 10 |
| PipsForMinProfit | 锁定 MinProfit 所需的价格变动点数。与 MinProfit 配合构成追踪逻辑。 | 0–100,步长 10 |
| TrailingStep | 追踪止损的步长。步长越小保护的利润越多;步长越大越能避免因噪音而过早离场。 | 10–100,步长 10 |
| DiffToOpen | 开新仓前所需的最小行情源价差(以 points 计)。延迟套利的核心信号阈值。 | 10–100,步长 10 |
| MaxSpreadSlow | 信号有效时慢速行情源允许的最大点差。用于过滤点差扩大的行情阶段。 | 1–20,步长 5 |
| MaxSpreadFast | 快速行情源允许的最大点差。与 MaxSpreadSlow 一起界定执行质量的范围。 | 1–50,步长 5 |
执行时间建模如何产生真实滑点
公开发布的套利回测结果之所以经不起实盘检验,最大的原因在于零延迟假设。普通零售回测器假设订单一经发出便立即以显示价格成交,而真实的经纪商并非如此。从策略决定发送订单,到订单在经纪商服务器上撮合成交,价格早已发生变化——对于每笔只赚取 1–3 个点的策略而言,这一变动往往就决定了是盈利还是亏损。
SharpTrader Optimizer 不要求您去猜测一个滑点数值。您只需配置一个物理输入量——订单执行时间(毫秒)——引擎便会直接根据历史 Tick 数据流推算出滑点。
引擎如何根据执行时间计算滑点
您设置执行时间 = T 毫秒(即您在实盘中观测到的往返时间)。引擎只取单程部分——T / 2 毫秒——并从策略决定发送订单的那一刻起,在 Tick 数据流中向前推进相应时长。经纪商回报的那一段被有意忽略:因为当回报返回时,成交价格早已由请求途中市场的走势所决定。在信号时刻 + T/2 所对应 Tick 上的买价/卖价,就是订单的成交价格。该价格与策略做出决策时”看到”的价格之差,即为实际滑点——可能为正、为负或为零,其大小取决于这几毫秒内市场的真实走势。
SharpTrader Optimizer 如何根据执行时间计算滑点
SharpTrader Optimizer 如何根据执行时间计算滑点——同一策略在同一 Tick 数据流中分别以 0 毫秒、50 毫秒和 150 毫秒运行的演示。
输入:执行时间(毫秒)
可全局设置或按每条腿分别设置订单执行时间。典型数值:5–20 毫秒(机构级托管共置)、30–60 毫秒(高速桥接 VPS)、80–180 毫秒(常见零售 VPS)、200+ 毫秒(网络连接较差)。
半延迟 Tick 推进
引擎从信号时刻起按实际时间推进 T/2,然后对齐到下一个可用 Tick。卖单以该 Tick 的买价(bid)成交,买单以卖价(ask)成交。
输出:每笔成交的实际滑点
滑点完全由 Tick 推进的结果决定——形成一个真实的分布,反映当天实盘市场的实际表现。滑点可能为正(价格朝有利方向移动),也可能为负(价格朝不利方向移动),其大小与真实的 Tick 波动相符。
开仓与平仓独立设置
您可以为开仓和平仓分别设置不同的执行时间——这反映了真实经纪商的情况:平仓订单往往比开仓订单经过更慢的路由路径。
实用工作流程
用同一组参数在不同的执行时间假设下运行三次:0 毫秒(瞬时成交,作为上限检查——不适用于实盘)、50 毫秒(高速 VPS / 托管共置桥接)、150 毫秒(常见零售 VPS)。如果盈亏在 50 毫秒与 150 毫秒两种场景之间大幅下滑,说明该策略对延迟敏感,更换经纪商或 VPS 后将难以为继。如果盈亏保持稳定,说明您的配置足够稳健,应能适应各种现实的经纪商条件。
24 小时表现分析
每次回测都会生成24 小时表现分解——一张按一天中各小时统计盈亏贡献的直方图。这是零售交易中最被低估的诊断工具之一:它能准确揭示您的策略何时赚钱、何时亏钱,以及何时应当暂停。
常见发现:
- EURUSD 上的延迟套利通常有 60–80% 的利润集中在 2–3 个特定小时(伦敦开盘、纽约开盘或伦敦收盘)。
- 贵金属(XAUUSD)上的类新闻交易策略常在 UTC 14:30 前后(美国数据发布)和 UTC 22:00–23:00(亚洲开盘)达到峰值。
- 锁仓与对冲策略通常与时段关系不大,但在周末隔夜结算及节假日流动性不足期间表现较差。
运行完成后,Optimizer 支持按星期和小时筛选结果——因此无需重新运行优化,就能找出诸如”仅在周二至周四 UTC 22:00–23:00 交易”之类的规则。
此外还提供以下筛选:订单持仓时长(找出持仓过久的订单)、订单总数(发现交易过少或过度交易)、实际滑点(区分出受益于正滑点的运行结果)。
系统要求
最低配置
| 操作系统 | Windows 10/11(64 位) |
| CPU | 4 核,2.5 GHz 以上 |
| 内存 | 8 GB |
| 存储 | 20 GB SSD 可用空间 |
| .NET | .NET 8.0 运行时 |
| 显示器 | 1920×1080 |
| 网络 | 必需(用于授权验证 + Tick 数据源更新) |
推荐配置(大规模优化)
| 操作系统 | Windows 11 专业版 |
| CPU | 8–16 核,Intel i7/i9 第 12 代以上或 Ryzen 7/9 5000 系列以上 |
| 内存 | 32 GB |
| 存储 | NVMe SSD,100 GB 以上可用空间 |
| .NET | .NET 8.0 运行时 |
| 显示器 | 2560×1440 或更高 |
| VPS | 可选 — 参见 VPS 指南 |
macOS / Linux:目前暂无原生版本。如有需要,可在 Parallels(Apple Silicon)中的 Windows 11 下,或通过 CrossOver / VMware(Linux)稳定运行。
SharpTrader Optimizer 与普通回测器对比
普通零售回测器是为趋势跟踪和基于指标的策略而设计的,并非为套利而生。它们的假设——瞬时成交、固定点差、单一行情源定价——会在不知不觉中摧毁套利回测所需的真实性。SharpTrader Optimizer 正是为弥补这三大缺陷而专门打造:
真实 Tick 级数据,而非 K 线近似
每次回测都回放真实的历史 Tick(时间戳 + 买价 + 卖价)。普通测试器则退而采用 M1/M5 K 线插值,悄无声息地抹平了套利策略赖以生存的价格波动。
订单执行时间可配置
您可以设置订单执行延迟(毫秒),引擎会将其应用到每一笔订单。普通测试器假设零延迟成交——这正是延迟套利回测在模拟中表现出色、在实盘中却失败的最大原因。
自动处理可变点差
点差直接从历史 Tick 数据流中逐笔读取。开仓与离场的滑点分别独立计算。普通测试器对每笔成交都采用单一固定点差——而在新闻发布、隔夜结算或流动性稀薄时段,真实点差并非如此。
逐项对比:
| 功能 | 普通回测器 | SharpTrader Optimizer |
|---|---|---|
| 真实 Tick 数据(相对于 K 线插值) | 不一定 — 取决于经纪商数据质量 | 是 — 原生 Tick 回放(BJF Feed:伦敦 / 东京 / 纽约) |
| 订单执行时间建模 | 否 — 假设瞬时成交 | 是 — 可配置执行延迟(毫秒) |
| 可变点差(逐笔) | 仅支持固定点差 | 自动 — 从 Tick 数据流读取 + MaxSpread 上限 |
| 真实滑点建模 | 否(订单以显示价格成交) | 是 — 通过执行时间推进从 Tick 数据流中自动计算(可正可负,幅度真实) |
| 多核并行 | 单线程 | 是 — 所有核心利用率 95% 以上 |
| 双行情源(快 + 慢)支持 | 否 | 原生支持 — 延迟套利必需 |
| 网格优化 | 有,但速度慢且为单线程 | 是 — 每次运行 10 万+ 组合,多核 |
| 24 小时表现分解 | 手动(导出后在外部制图) | 内置图表与筛选 |
| 按星期筛选 | 否 | 是 |
| 前推(walk-forward)分析 | 否 | 是 — 按日期区间划分 |
| 优化方式 | 遗传算法 / 黑箱 | 网格 + 排名(确定性、可审计) |
| 可测试策略 | 通用自动化策略 | SharpTrader 套利策略(Latency、DominionForce,另有 5 种即将推出) |
| 费用 | 随零售交易终端捆绑 / 免费 | $595 一次性授权 |
常见问题
Optimizer 运行的是为 SharpTrader 执行引擎构建的策略。您可以单独使用 Optimizer 进行研究和回测,但若要将优化后的参数用于实盘,则需要 SharpTrader 授权(Lite 起价 $800,Pro 起价 $2,995)。许多交易者会先购买 Optimizer 验证策略,然后再升级。
这取决于三个因素:组合数量、历史数据长度以及 CPU 核心数。以典型零售工作站作为现实基准:在 4 核 CPU 上,用约 30,000 种组合测试 1 周 XAUUSD Tick 数据大约需要 12 小时。同样的 3 万组合网格在 16 核机器上约 3 小时即可完成。较小的网格(5,000–10,000 种组合)针对 1 周数据,在 4 核上需 2–4 小时。较大的网格(100,000+ 种组合)跨越数月数据时,最好在 16 核以上的专用服务器上运行。
可以。Optimizer 支持标准格式的 Tick 数据(包含时间戳/买价/卖价的 CSV、常见交易终端导出的 Tick/历史数据格式,以及 BJF Feed 专有格式)。为获得最佳效果,我们建议使用 BJF Feed 数据——可从伦敦、东京和纽约节点获取——它与 SharpTrader Pro 实盘部署所用的数据源一致,使您的回测尽可能贴近实盘执行。
一次性授权:$595。无任何续费。包含 12 个月免费更新(涵盖 Phantom Drift、锁仓策略、对冲及配对交易的新增内容)。12 个月后软件仍可继续使用——只有新增策略需要购买可选的 $99 更新授权。
前提是优化方法正确。我们强烈建议采取两项保障措施:(1)将执行时间设置为符合您实际环境的数值——普通零售 VPS 通常为 80–150 毫秒,托管共置桥接为 30–60 毫秒。切勿在执行时间 = 0 毫秒的条件下进行优化。(2)进行前推(walk-forward)验证——在 1–3 月数据上优化,在 4–6 月数据上验证。如果最优配置在不同时期之间发生变化,说明策略存在过拟合。借助 Optimizer 的日期区间筛选功能,前推验证变得轻而易举。
对于研究类负载,AMD Ryzen 9 7950X(16 核)或 Intel i9-13900K(含能效核共 24 核)是性价比最佳之选——两者都能将基于 1 周 Tick 数据、在 4 核上通常需要 12 小时的运行缩短至约 3 小时,并能处理 10 万+ 组合的网格而不至于打乱时间计划。如果只是偶尔使用,任何现代 6–8 核台式机 CPU 都完全够用。云端方案(AWS c7i.4xlarge、Hetzner CCX33)同样可行,并可按需扩展。
可以。Optimizer 支持无界面(headless)运行,也可通过远程桌面使用。关于 VPS 服务商及配置建议,请参阅我们的外汇套利 VPS 指南。注意:典型的每月 $30 外汇 VPS 只有 2 个核心——如需进行严肃优化,您需要每月 $40–120 的独立 CPU 服务器(Hetzner AX 系列、OVH Game 系列)。
目前 Optimizer 内置的是以外汇为主的策略模板(Latency、DominionForce)。加密货币专用策略——包括 VIP Crypto Arbitrage 的对冲及单腿变体——计划在 2026 年第三季度的更新中推出。授权用户可免费获得此项更新。
如果 Optimizer 在您的硬件上无法按描述正常运行,BJF Trading Group 提供购买后 30 天内 100% 退款保证。完整条款请参阅我们的保障页面。该保证仅涵盖软件功能——不涵盖您所回测的任何策略的盈利能力。
StrategyQuant 和 QuantAnalyzer 属于策略生成器——它们通过随机组合指标自动生成 EA(智能交易程序)。SharpTrader Optimizer 不是策略生成器。它以真实的执行建模来测试和优化现有的套利策略(Latency、DominionForce 等)。两类工具用途不同:用 SQ/QA 生成策略假设,用 SharpTrader Optimizer 进行套利专用的参数调优并获得贴近实盘的执行真实性。
别再靠猜测,开始优化吧。
一次性授权,$595。12 个月免费策略更新。30 天内 100% 退款保证。搭配 SharpTrader Lite 或 Pro,即可将优化后的参数部署到实盘。






