Files
my_wiki/wiki/practices/期货量化回测与位移路程比.md

92 lines
5.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "期货量化回测与位移路程比"
last_updated: 2026-08-07
source: "https://github.com/bbfamily/abu (commit d602d847677e4c2b77b0a122df30816ea68b5710)"
created: 2026-08-07
updated: 2026-08-07
type: practice
tags:
- "量化"
- "期货"
- "回测"
- "趋势跟踪"
- "品种筛选"
confidence: medium
contested: true
raw_sources:
- path: "raw/量化/abuquant/abuquant-期货回测与位移路程比摘编.md"
hash: "sha256:8a5d4fdf3e8ce52e78531a919bf008d1ea6f3eb7013415370e22a54183a62cf3"
- path: "raw/量化/abuquant/abuquant-框架架构摘编.md"
hash: "sha256:1d40144383bd5f8e0f5d6049da545abb2933a83328693dc2d7852af9e70291d6"
---
# 期货量化回测与位移路程比
## 页面定位
本页提炼阿布量化对**期货市场**的量化处理方法:连续合约数据、保证金与强平机制、看涨/看跌双向策略、位移路程比(shift/distance)品种筛选、内外盘低频统计套利思路。它属于方法论实践页,与具体品种研究([[焦煤期货研究框架|焦煤期货研究框架]]、[[玻璃期货研究框架|玻璃期货研究框架]])互补:本页讲量化回测技术,品种页讲基本面。教学示例数字仅用于说明机制,不代表真实回测结论。
## 一、期货数据与合约要素
- 量化用**连续合约**(如 JM0 焦煤、I0 铁矿石、RB0 螺纹钢、FG0 玻璃),而非具体月份合约(如 JD1709)。
- 合约要素(AbuFuturesCn):`min_uni` 每手数量(鸡蛋 5 吨/手、胶合板 500 张/手)、`commission` 每手手续费、`min_deposit` 最低保证金比例(0.08=8%)。
- 内置沙盒 46 个品种:覆盖大商所(J0/JM0/I0/M0/Y0/A0/B0 等)、郑商所(TA0/FG0/ZC0/MA0/SR0/CF0 等)、上期所(CU0/AL0/RB0/HC0/AG0/AU0/NI0 等)。
## 二、保证金、强平与交割(教学机制)
- 保证金杠杆:以鸡蛋为例,4014 元/吨 × 5 吨/手 × 20 手 ≈ 40 万货值,8% 保证金约 3 万+ 即可开仓;收益与风险同比例放大。
- 价格反向时账户净值不足新保证金要求 → 期货公司先要求追加,否则**强行平仓**。
- 看跌(put)机制:可理解为"借入商品卖出、低价买回归还",赚取差价。
- 交割限制:个人投机账户无实物交割资格,持有到交割日由交易所强平;"保值"账户仅限有资格企业。
## 三、双向策略实现
- 市场目标切换:`g_market_target = E_MARKET_TARGET_FUTURES_CN`
- 看涨:向上突破买入因子(如 AbuFactorBuyBreak);看跌:向下突破因子 AbuFactorBuyPutBreak(混入 BuyPutMixinexpect_direction=-1)。
- 卖出因子需 `support_direction()` 声明双向支持,按 `order.expect_direction` 区分:call 方向"暴跌止损"、put 方向"暴涨止损"(示例 `(pre_close - close) * expect_direction > atr21 * pre_atr_n`)。
- 周期选择需适配品种:期货有交割周期与季节性,突破参数宜从 42/60 调整为 21/42 天;比特币示例用重采样确定 10 天上下周期。
## 四、位移路程比(shift/distance
### 定义
```text
sd = shift / distance
shift = 起终点直线距离(价格净变化,位移)
distance = 路径实际走过的总距离(路程)
```
- `sd` 接近 1:走势干净、趋势保持好;`sd` 显著大于 1:反复震荡、趋势快速回复。
- 实现:`ABuTLExecute.shift_distance`,返回 (h_distance 底边, v_distance 垂直, distance 路程, shift 位移, sd)`show_shift_distance(how, step_x)` 可视化,`how` 可选 close(序列最后元素)/maxmin(趋势极限值)/sum_maxmin。
### 选股逻辑(趋势突破策略适用性)
| sd 特征 | 品种示例 | 结论 |
|---|---|---|
| 基本 <2,偶有 >2 段 | V0 PVC | 符合:能惯性保持趋势,涨跌都有机会 |
| 多次 >2.0 | FB0 纤维板 | 过滤:短涨即反弹,趋势无法保持 |
| 无 >2.0 | Y0 豆油 | 过滤:太平稳,无趋势 |
- 应用:38 个期货品种先全品种回测(收益一般),再用位移路程比选股缩小品种池 → 提升突破策略适配性。
- 实现因子:`AbuPickStockShiftDistance`PickStockBu)。
## 五、方法要点与引申
- **品种筛选优先于参数优化**:先用趋势持续性指标(位移路程比)筛品种,再优化参数。
- 双向策略下,止损因子逻辑必须按方向区分。
- 内外盘低频统计套利(notebook 25):同一/相关品种跨市场价差关系,教学示例,需结合具体市场规则核验。
## 六、证据与不确定性
- 教学示例中的价格/收益数字(2017 年鸡蛋等)仅用于说明机制,不构成真实历史回测结论。
- 沙盒数据(2017 年前后内置)仅供学习;实盘需外部数据源并重新核验合约参数(保证金比例、手续费随交易所规则变化)。
- 位移路程比是**趋势持续性**的度量工具,不预测方向;需配合止损、仓位与基本面。
## 七、相关页面
- [[阿布量化框架架构|阿布量化框架架构]] - 框架模块与 UMP 裁判机制
- [[阿布量化策略开发与回测|阿布量化策略开发与回测]] - 因子开发、度量与参数寻优流程
- [[焦煤期货研究框架|焦煤期货研究框架]] - 焦煤基本面与盘面研究框架
- [[技术分析形态与突破确认|技术分析形态与突破确认]] - 突破信号确认与假突破
- [[商品市场金融化与库存套利|商品市场金融化与库存套利]] - 期现、基差与库存的宏观背景