1.行业场景
贵金属交易中,黄金(XAU)与白银(XAG)长期维持**稳定的比价关系**,即**金银比价(Gold-Silver Ratio, GSR)**。历史均值约 65-70 倍,标准差约 2-4 倍。当市场情绪或资金流向导致 GSR 短期内显著偏离均值时,会形成**均值回归交易机会**——偏离越大,回归收益越高。
这类跨品种价差/比价交易属于**统计套利(Statistical Arbitrage)** 范畴,具有:
- **市场中性**:同时做多和做空,净 Delta ≈ 0,不受单边涨跌影响
- **胜率高**:均值回归策略长期胜率 55%-65%,配合网格加仓可达 70%+
- **风控清晰**:相关性破位是唯一致命风险,有成熟的检测手段
2.行业痛点
手工执行这类策略存在几个结构性问题:
| 痛点 | 后果 |
| GSR 偏离机会转瞬即逝(分钟级) | 人反应不过来,错过入场点 |
| 跨品种对冲需要同时开两笔单 | 滑点风险高、手数配比容易出错 |
| 网格加仓/止盈止损涉及多层级条件 | 人工监控不现实 |
| 黄金、白银同时持仓时,组合盈亏计算复杂 | 无法及时判断是否该平仓 |
| 客户端不稳定、连接偶尔断线 | 单进程挂掉 = 持仓无人管 |
| 宏观数据(CPI、非农等)公布时波动剧烈 | 可能瞬间打爆账户 |
3.立项原因
需要一套**全自动、24/7 运行、可监控、可恢复**的跨品种对冲交易系统,解决上述痛点,让 GSR 均值回归策略可以**无人值守**地实盘运行。
1.核心交易引擎
2.风控系统
3.网页面板
核心功能包括:每秒级 客户端实时行情采集、M15 周期滚动计算 GSR 均值/标准差并输出 Z-Score 交易信号、跨品种黄金白银固定比例或 ATR 动态比例对冲下单、三模式(IOC/FOK/RETURN)智能 fallback 订单执行、多层级网格加仓(默认最多 2 层)、组合盈亏止盈止损平仓、熔断+看门狗双路风控、滚动相关性监控、宏观数据发布窗口暂停、点差与保证金限制等 8 道风控防线;配套一个可多账户并行管理的网页 Dashboard,实时展示引擎状态、MT5 账户信息、GSR/Z-Score 指标、周期已实现盈亏日历(支持历史月份切换)、持仓明细表、网格状态,并提供启停控制与配置热更新能力。
整个系统用 Python+客户端,配合 Pandas/NumPy 做 K 线对齐和 Z-Score 统计、Flask 提供 Dashboard HTTP 接口、SQLite 做零配置文件持久化(引擎独立 quantdata.db + Dashboard 共享 web.db)、PyInstaller 打包成 Windows 可执行文件、前端纯原生 HTML/CSS/JS 无任何框架依赖;架构上采用 多进程解耦 设计——一个 HedgeDashboard.exe管理多个独立的 hedge_engine.exe 账户进程,每个引擎独立 initialize 不同 账号,通过 SQLite 读写实现跨进程状态共享与命令下发,避免了客户端API 单进程多 login 不支持的限制;实现亮点包括:自动探测与 fallback、熔断+看门狗双路风控状态机、订单执行三模式(IOC→FOK→RETURN)按券商兼容性自动 fallback、黄金白银 K 线时间戳对齐后才计算 GSR 序列避免错位噪声、持仓 comment 内嵌`_L0_` /`_L1_` 网格层标记使引擎重启后能从客户端实时还原完整组合状态;难点集中在五个方面:客户端对外的API文档模糊导致 order retcode 10006/10027 等异常需要逐个摸透、多进程各自连接 客户端时 tick 推送时间差(30-50ms)导致同品种跨终端报价微差最终体现在 Z-Score 上差异约 0.02、PyInstaller 打包时 _MEIPASS 路径和账户目录 account_dir 需要同时兼容 frozen 和 source 两种模式、客户端32/64 位及不同券商的安装路径不一致需要启动时遍历注册表探测、以及前端零框架但要实现复杂交互(日历月份切换、实时刷新、配置热更)需要手写所有 DOM 操作和事件同步。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论