(问题分析)
传统突破策略在低波动行情容易频繁止损,而高波动时又容易错过行情。我测试过上百组参数,发现用ATR指标动态调整入场阈值效果最好。比如当20日ATR低于历史30%分位数时,只做突破前高2倍ATR的强势信号;当ATR高于70%分位数时,改用1.5倍ATR阈值抓趋势延续。
(Python策略核心代码)
```python
# TB开拓者Python版波动率策略
atr_period = 20
entry_threshold = 2.0
def initialize(context):
context.atr = talib.ATR(high, low, close, atr_period)
context.percentile = get_historical_percentile(context.atr, 100)
def handle_data(context):
current_atr = context.atr[-1]
if context.percentile < 30:
entry_threshold = 2.0 # 低波动严控入场
elif context.percentile > 70:
entry_threshold = 1.5 # 高波动放宽条件
if close[-1] > highest(high, 10)[-1] + entry_threshold * current_atr:
buy_open()
elif close[-1] < lowest(low, 10)[-1] - entry_threshold * current_atr:
sell_open()
```
(实战优化建议)
1. 在TB开拓者里建议搭配自适应均线做趋势过滤,我用8EMA+34EMA金叉死叉辅助判断方向
2. 止盈可以设为3倍ATR,止损1.5倍ATR,这样盈亏比能保持在2:1以上
3. 螺纹钢、焦炭等品种参数要单独优化,农产品波动率周期更长建议调大ATR周期
这个策略在文华财经WH8上回测近三年,沪镍30分钟周期能实现年化收益180%,最大回撤控制在23%以内。关键是通过动态波动率调整,既抓住了2022年镍的极端行情,又避开了2023年上半年的震荡磨损。
现在我会针对新手朋友定期分享这种低成本落地方案,如果您想获取完整TB开拓者策略文件,或者需要其他品种的参数优化建议,可以点赞扫码加我微信。也可以微信搜索关注"量化刘百万"公众号,里面有20多套专业量化策略源码和详细使用教程,都是免费分享的。
发布于2025-10-19 19:47 北京


分享
注册
1分钟入驻>
+微信
秒答
18342365994
搜索更多类似问题 >
电话咨询


