#21093
混合
免费
KAMA效率比与ATR动态仓位管理系统
公式说明
AI生成
一句话概括:用KAMA自适应均线判断趋势拐头,配合效率比、RSI、成交量等多重确认来选股,并用ATR设动态止损。 核心买入逻辑:KAMA均线刚拐头向上、效率比ER大于0.3(趋势够强)、股价在60日线之上、RSI在50到70之间、成交量放大1.2倍、收盘价在KAMA上方且近5天有3天站上KAMA;止损价为收盘价减去2.5倍ATR。 适合环境:明显的趋势上涨市,不适合震荡或下跌市。 风险提示:KAMA拐头滞后,震荡市易反复假信号,须严格按ATR止损执行。
研究报告
# ID-333 KAMA效率比与ATR动态仓位管理系统 研究报告
## A. 实现细节(Implementation Details)
### 公式逻辑
本公式基于 **Kaufman效率比(Efficiency Ratio, ER)** 驱动的自适应移动平均线(KAMA),核心思想是:市场噪音程度不同,均线灵敏度应动态调整。
**信号类型**:选股公式(买入信号)
**指标与参数**:
- `ER(效率比)`:|收盘价N日变化| / Σ(|每日价格变化|),N=20
- ER=1:价格直线运行(强趋势,无噪音)→ 用快速EMA(2)
- ER=0:随机游走(高噪音)→ 用慢速EMA(30)
- `KAMA`:根据ER在快慢EMA之间动态插值,递归计算
- `RSI(14)`:动量过滤,50<RSI<70 为健康趋势
- `ATR(14)`:动态止损距离计算(2.5倍ATR)
- `MA(60)`:长期趋势方向过滤
**执行时点**:
- 信号在当日收盘后触发(使用当日CLOSE计算ER和KAMA)
- 实际操作:T+1日开盘执行(避免Look-Ahead偏差)
**过滤机制**:
1. 效率比过滤:ER > 0.3(排除低效率/高噪音市场)
2. 动量过滤:RSI在50-70之间(趋势健康,非超买)
3. 成交量过滤:VOL > MA(VOL,20) * 1.2(资金确认)
4. 趋势过滤:CLOSE > MA(CLOSE,60)(长期多头)
5. 持续过滤:COUNT(CLOSE>KAMA,5) >= 3(连续5日在KAMA上方)
**风险控制**:
- 动态止损:CLOSE - 2.5 × ATR(14)
- 仓位管理:建议仓位 = 账户风险额度 / (ATR% × 合约乘数)
- 最大持仓:8根K线(约1.5-2周)
**适用市场**:A股全市场,趋势行情效果最佳;震荡市因ER<0.3会被过滤。
**Warmup周期**:前60根K线(ER计算需20根 + KAMA递归稳定需约40根)
**回测结果**:
- 方案A(backtest_cli.py):待回测验证(本地无数据)
- 方案B(backtest_planb.py):待回测验证(本地无数据)
---
## B. 已知偏差(Limitations and Bias)
1. **数据限制**:
- KAMA的递归计算依赖历史KAMA值,初始值用CLOSE代替,前30根K线可能不够稳定
- 本地回测系统无数据,无法验证真实胜率和收益率
2. **回测偏差(待验证)**:
- 若接入真实数据,需注意滑点和手续费对胜率的影响
- KAMA拐头信号可能滞后(递归平滑导致)
3. **市场适应性**:
- 强趋势市场(ER→1):效果好,KAMA快速跟进
- 高噪音震荡市(ER→0):会被过滤(ER<0.3),但可能错过反转机会
- 突然的政策利好/黑天鹅:KAMA滞后,可能错过第一波行情
4. **参数敏感性**:
- N=20(ER周期):若改为10或30,信号频率会明显变化
- ATR倍数=2.5:若改为2.0或3.0,止损触发频率会变化
- FAST=2, SLOW=30:这是Kaufman原论文推荐值,调整需谨慎
5. **Look-Ahead风险检查**:
- ✅ 无未来数据引用
- ✅ 使用当日收盘数据计算,T+1执行,无偏差
---
## C. 结果解读(Result Interpretation)
### 逻辑质量
KAMA是专业交易员使用的进阶均线,相比传统MA/EMA有明显优势:
- 趋势市场:快速跟进,减少滞后
- 震荡市场:慢速平滑,过滤假突破
逻辑链条完整:ER量化噪音 → KAMA自适应 → RSI确认动量 → ATR管理风险,四个维度相互印证。
### 创新点
1. **首次在公式库中引入Kaufman效率比概念**(检查已有483个公式,无KAMA相关公式)
2. **动态仓位管理思想**:用ATR%调整仓位(公式中有计算逻辑,实际使用需结合资金管理模块)
3. **ER双重过滤**:既过滤低效率市场(ER<0.3),又用ER驱动KAMA灵敏度
### 风险点
1. **KAMA递归计算在通达信中的实现方式**(用REF(KAMA,1)递归)可能和原版有细微差异
2. **买入信号条件较严格**(5个过滤同时成立),可能导致信号数量较少
3. **ATR动态止损**在公式中仅显示止损价,实际执行需要配合交易系统
### 适用场景
- 最适合:趋势型投资者,持有周期1-3周
- 不太适合:日内短线(KAMA本身偏慢),极端震荡市(会被过滤)
### 改进方向
1. 增加卖出信号(当前仅买入,完整交易系统需要出场逻辑)
2. 加入ATR动态仓位计算的实际输出(当前仅注释)
3. 在多品种、多周期下验证参数稳健性
---
## 对抗式审查
我主动怀疑了以下3个点,并逐一排除:
1. **怀疑:KAMA递归计算在通达信中是否准确?**
排除:检查了公式代码,使用 `KAMA := REF(KAMA,1) + SC*(CLOSE-REF(KAMA,1))` 实现递归,这是KAMA的标准实现方式,和Kaufman原论文一致。前60根K线标注为Warmup期,避免初始值偏差。
2. **怀疑:信号条件是否过于严格(5个过滤同时成立)?**
排除:这是选股公式的设计初衷——宁缺毋滥,提高胜率。若信号过少,可在通达信实测后适当放宽(例如去掉RSI条件或放宽ER阈值到0.2)。当前设计是保守版本。
3. **怀疑:公式是否和现有公式重复?**
排除:检查了formula-history-index.json(96个条目)和ChromaDB(1575个公式),无KAMA/Kaufman效率比相关公式。语义去重检查相似度-10.81%(远低于60%阈值)。对抗式新颖性评分1.00(满分)。
---
## 公式元数据
| 项目 | 内容 |
|---|---|
| 公式ID | ID-333 |
| 公式名称 | KAMA效率比与ATR动态仓位管理系统 |
| 公式类型 | 选股公式 |
| 研究方向 | 趋势跟踪+风险管理 |
| novelty评分 | 1.00 |
| 多样性得分 | 5分 |
| 语义去重相似度 | -10.81% |
| Warmup周期 | 前60根K线 |
| 回测状态 | 待回测验证 |
| 提交时间 | 2026-06-28 14:10 |
回测统计
胜率
---
平均收益
---
夏普比率
待验证
最大回撤
-0.0%
按市场状态分段表现
暂无市场状态数据