Type/to search

交割合约现货套利策略测试版

Common strategy
Created: 2025-11-28 16:20:48
Last modified: 5 months ago
2
Follow
495
Followers

策略概述

本策略基于现货与交割期货合约之间的价差进行统计套利,通过ADF(Augmented Dickey-Fuller)单位根检验验证价差序列的平稳性,在价差显著偏离统计均值时建立对冲头寸,待价差回归后获利了结。策略采用四层架构设计(数据层、信号层、执行层、展示层),具备完整的风控体系与异常回滚机制。


核心逻辑

1. 平稳性检验(每小时执行)

策略定期对现货与交割合约的价差序列执行ADF检验,只有当价差序列通过平稳性验证(p值低于阈值),且连续失败次数未超过上限时,才允许该交易对参与套利交易。

2. Z-Score信号生成

基于历史价差数据计算当前价差的Z-Score,衡量当前价差偏离均值的程度:

  • 入场信号:|Z-Score| 超过入场阈值,表明价差存在显著偏离
  • 出场信号:价差回归至目标区间(均值附近)

3. 开仓方向判断

  • 正套(Z-Score > 0,价差偏大):做多现货 + 做空交割期货
  • 反套(Z-Score < 0,价差偏小):做空现货 + 做多交割期货

策略同时分析现货与期货各自的偏离幅度,智能决定先开哪条腿,降低腿差风险。


执行机制

开仓流程

  1. 冷却期检查:过滤处于10分钟或1分钟冷却期内的交易对
  2. 实时盘口验证:通过Depth盘口中间价二次确认套利机会仍然存在,Z-Score方向未反转
  3. 现货余额检查:正套验证USDT余额是否充足;反套验证持币余额是否充足
  4. 限价单开仓:基于Depth价格加小幅调整挂限价单,提升成交质量
  5. 回滚机制:若一条腿成交后另一条腿失败,自动触发回滚(最多重试3次),防止裸露单边敞口

平仓流程

  1. 并发提交:现货与期货平仓订单同时提交,减少腿差
  2. 轮询确认:持续检查两条腿的成交状态,对未成交订单进行强制平仓处理
  3. 止损二次确认:触发止损时,延时重新计算实时盈亏,若亏损已收窄则取消平仓,避免误触

目标区间动态调整

根据实际成交价差动态校准目标平仓区间,确保平仓时的理论盈利空间满足最低要求,防止因入场滑点导致无利可图。


风险控制

风控模块说明
止损总亏损率超过阈值触发止损,附二次确认机制
临近交割保护距交割日不足1天强制平仓
持仓时长限制超过最大持仓天数且盈利时主动平仓
10分钟冷却期开仓失败、回滚发生后触发,避免频繁异常操作
1分钟冷却期套利机会消失(Z-Score衰减/方向反转)后触发
余额保护保留最低USDT储备,避免账户耗尽
最小到期天数过滤临近交割的合约,规避交割风险

策略特点

  • 秒级轮询,信号响应及时
  • 全程使用Depth盘口中间价,杜绝Last价格的滞后与误差
  • 支持持久化存储,策略重启后可无缝恢复历史数据、持仓记录与冷却状态
  • 实时看板展示:系统状态、ADF检验结果、当前持仓、历史交易记录一览无余

⚠️ 免责声明:本策略仅供学术研究与技术学习使用,不构成任何投资建议,请勿直接用于实盘交易。

文章链接:现货-交割套利策略的实践探索:从理想到现实的那些坑

Source
JavaScript
// 仅做学术研究使用,请勿直接用于实盘

// ==================== 全局配置 ====================
const CONFIG = {
    // === 平稳性检测参数 ===
    adfWindow: 1000,
    adfPValueThreshold: 0.1,
    stationarityCheckInterval: 3600000,
    consecutiveFailThreshold: 3,
    
    // === 入场/出场信号参数 ===
    zScoreEntry: 1.0,
Comment
All comments (0)
No data
No data
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)