分钟K线数据重构 ATR自适应通道 请高手来迭代

本文介绍了如何使用Python构建一个量化模型,通过将15分钟K线重构为1小时线,并应用ATR自适应通道进行交易策略。首先,讨论了数据重构的重要性,特别是避免交易拥挤和不科学的时间颗粒度问题。然后,详细阐述了ATR通道优于标准差的波动率表示,并展示了在商品期货和股指上的测试结果,强调了ATR在交易次数和绩效IR方面的优势。最后,文章提到了数据重构的细节,包括分钟线拼接为半日线的方法和关键时间点的处理,以及绩效测试的过程和结果。
摘要由CSDN通过智能技术生成

今天我们构建的量化模型,尝试用python搭建,首先它把数据拆分重构,使用15分钟或者更低颗粒度的K线,重构成为1小时线或者半日线。然后在重构的K线上,搭建ATR自适应通道交易模型。

如果说后半部分模型开发是很多软件都可以做的,前半部分就并非如此了。我们要以每天中午12点,下午15点为切分点,把每天的时间序列切分成3段。

让我们从最简单的模型本体交易逻辑开始讲。

一、模型本体——ATR自适应通道

很多做期货动量交易的人都明白,通道突破类策略是典型的趋势策略,这类策略指导构建的交易模型也比较简单清晰,并且将标准差等波动率表达方式考虑到模型中,有助于提升绩效。这里说的提升绩效,一方面是通过通道的中轨确定大致方向,另一方面是通过标准差等波动率指标,确认通道宽度。

首当其中的就是布林带,这个经典指标已经几十年被使用,基本上没人敢说这套系统不能用,但是它毕竟太过于古老,需要改进,这是共识。

典型的通道突破类策略是Aberration,实际上就是布林带,它被翻译理解为“失常、离开正路、越轨”等含义。该模型在均线上,构建了上下两个通道,通过波动率高低调节通道大小,如果价格突破上轨,就做多,如果价格突破下轨,就做空,价格回到中轨平仓,达到一定的自适应突破效果。

它的原理是这样:

// 中轨AverageMA,此处的Length是计算均线的窗口期

AverageMA = Average(Close1,Length);

// 价格序列的标准差

StdValue = StandardDev(Close1,Length);

// 上轨和下轨,此处的StdDev是标准差倍数

UpperBand = Avema StdDev StdValue;

LowerBand = Avema - StdDev StdValue;

今天的改进针对标准差部分,我们发现ATR比标准差更能够反应波动率的真伪,毕竟ATR采用的时间序列信息含量更高。

标准差是一个统计工具,不再叙述。ATR概念由威尔德(J. Welles Wilder)1978年于《New Concepts in Technical Trading Systems》书中提出,它取一定时间周期内的价格波动幅度的移动平均值,和你看到的网络上的注解不同,它并不是主要用于研判买卖时机,也不是做什么反趋势指标,它能感知到波动率。

海通证券测试了ATR和标准差的性能差异,这四种情况虽然特殊,但是以极端方式,体现了标准差和ATR的区别。

图1,标准差的表现力更强,因为价格确实出现了波动幅度变化。

图2,和研报观点相同,ATR可以稳定的保持着较高的水平,能对新的价格运行方向上的波动状态进行有效的刻画,但是标准差不行。

图3,标准差在适应新趋势时又一次表现出对趋势逆转时波动率提升的错误描述,它在新趋势刚开始出现时先缓慢下降,此时很容易造成通道类突破系统做出错误判断。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值