本文来源于量化小论坛策略分享会板块精华帖,作者为chenlei,发布于2024年1月24日。
以下为精华帖正文:
01
缘起
最近看小白老板的帖子有感,想实现一下帖子里描述的长期横盘后有异动的形态。
帖子链接:【Ryan小白】《白交学费》(一)
想了2天,尝试了4,5种方法,把计算量低,灵活性高的一种分享给大家。
02
想要抓住的形态描述
如上图所示,该股持续了很长时间的横盘震荡,然后在6点突破压力位后起飞。
要想抓住这种形态必须满足以下条件:
1 如何判断长时间的横盘
2 如何判断短期的异动
对于1,这里用眼睛看很容易分辨,但是量化起来就比较麻烦:
如何量化长时间的长?多长才算长?
如何量化横盘震荡的幅度?多大的振幅内算横盘?
对于2,如何描述异动?(这个话题我还在思考,这篇帖子给出一种简单的实现方法,葫芦籽给的足就下一篇讲(狗头))
03
对横盘震荡的描述
踩过的坑先略过,直接上结论:
input:指定的窗口值,指定的上下振幅值
处理:1 对每日做.rolling(窗口值),2 算窗口内的中位数,3 算已中位数为基准的上下振幅值边界条件, 4 统计在上下边界内的个数与窗口的比例,当比值大于90%时认为属于横盘震荡
output:输出每一天的横盘震荡信号,有震荡则把这个中位数填入进震荡信号的cell内
具体代码如下:
为了对应各种长短的周期,各种振幅的情况,我对窗口和振幅值进行了有限的穷举,这样基本就能满足各种条件的横向震荡形态的需要
04
如何实现小白老板帖子里的形态?
我们可以把window设大,把振幅设小,下图是window 200,上下振幅15%时搜出来的股票,红色为买入位置,蓝色为卖出位置
那为啥不是在横盘刚结束的位置买入?为啥过了很多天后买入?
因为我不光判断了长期的横盘震荡情况,我还判断了短期是否有横盘震荡,这就是为什么要遍历多个window和振幅的原因**(这里是重点)**
通过对大小周期,不同振幅的综合判断,可以描述出很多的形态。比如你可以通过观察10日内是否有5%的横盘和10日内是否有10%,20%,30%的横盘和中位数的具体位置来反向推导出这10天的上涨,下跌情况。
以下是找到上图的条件:
05
总结
这篇文章介绍了一种通过股价的相对位置关系来描述横盘震荡的方法,通过对大小周期的综合判断来实现具体横盘形态的检测。可以运用到分钟级别,日线级别或更高级别中,是一种股币通用的判断方法。
06
相关代码
最后附上相关代码,如有需要可以评论区留言获取。