ElinaAalipour/statistical-range-detection
GitHub: ElinaAalipour/statistical-range-detection
基于波动率收缩特征工程与统计验证的量化研究项目,用于检测和定义外汇市场的区间震荡状态。
Stars: 0 | Forks: 0
# 统计区间检测
## 目标
本项目旨在使用基于波动率的量化特征对区间市场状态进行统计定义。
## 项目目标
开发一个具有统计学基础的指标,能够识别可能产生区间市场行为的波动率收缩状态。
## 研究问题
如何使用可量化的波动率收缩信号对区间市场进行统计定义?
## 市场
EURUSD(H1 时间周期)
## 研究方法
本项目遵循结构化的量化研究 pipeline:
1. 波动率假设定义
2. 特征工程(波动率收缩信号)
3. 特征验证(可视化与统计)
4. 相关性与冗余分析
5. 代表性特征选择
6. 区间评分构建
7. 市场状态分类
8. 统计验证
## 特征
### ATR 收缩 ✅
衡量当前波动率相对于历史 ATR 基线的水平。
**目的:** 检测波动率收缩与扩张状态。
特征:
* atr_rel_16
* atr_rel_48
### 标准差收缩 ✅
衡量价格离散度相对于历史标准差基线的水平。
**目的:** 量化市场波动率的变化。
特征:
* std_rel_16
* std_rel_48
### K线实体收缩 ✅
衡量单根 K线 尺寸的收缩相对于历史 K线 区间的水平。
**目的:** 捕捉局部价格的收缩与扩张行为。
特征:
* range_rel_16
* range_rel_48
### 布林带宽度收缩 ✅
使用归一化的布林带宽度衡量价格的收束情况。
**目的:** 检测价格在其移动平均线附近出现统计性收缩的时期。
特征:
* bb_rel_16
* bb_rel_48
### 特征分析与选择 ✅
在构建了 8 个相对收缩特征之后,进行了全面的相关性和结构分析,以评估特征的冗余度和信息重叠度。
**已执行的分析:**
* 皮尔逊相关性矩阵
* 斯皮尔曼相关性矩阵
* 跨时间周期相关性比较(16 与 48)
* 层次特征聚类
* 特征相关性网络可视化
### 区间评分模型 (v1)
选定的特征使用百分位秩归一化进行转换,以确保不同波动率衡量指标之间的可比性。
**收缩评分:**
* s_i = 1 - rank_pct(x_i)
其中较高的值表示更强的波动率收缩。
**区间评分:**
* RangeScore = mean([atr_rel_16_s, std_rel_48_s, range_rel_48_s]) * 100
**评分解读:**
* 0–40 → 波动率扩张(趋势状态)
* 40–60 → 中性 / 过渡状态
* 60–100 → 波动率收缩(区间状态)
这产生了一个连续的概率评分,表示处于区间市场状态的可能性。
### 关键发现:
* 源自相似统计学基础(如标准差和布林带宽度)的指标显示出强相关性。
* 部分短期和中期时间周期提供了重叠的信息。
* 波动率特征自然地分组为结构性集群。
### 选定的特征集(v1 – 精简集):
* atr_rel_16
* std_rel_48
* range_rel_48
### 选择这些特征是为了平衡:
* 信号稳定性(较长的时间周期)
* 信息多样性(较低的交叉相关性)
* 多尺度市场结构表征
## 特征工程状态
**已完成的组件:**
* ATR 收缩
* 标准差收缩
* K线实体收缩
* 布林带宽度收缩
特征选择 ✅
相关性分析 ✅
冗余降低 ✅
代表性特征集 ✅
区间评分模型 ✅
状态标注 ✅
**当前阶段:**
统计验证
## 可视化验证
### 价格 + 区间状态叠加
标签:时序数据, 波动率分析, 特征工程, 逆向工具, 量化交易, 金融市场