Py学习  »  Python

大A为何频繁跳水,Python量化1200W条交易数据给你答案!| 邢不行

邢不行 • 1 月前 • 47 次点击  

这是邢不行第 110 期量化小讲堂的分享

作者 | 邢不行、密斯锌硒


常看我文章的读者应该能发现,我介绍过的量化策略大多都会在开盘时买入


比如小市值策略散户反着买策略:


点击图片查看文章


它们都会在每个周期的第一个交易日开盘买入相应的股票。


不知道大家有没有思考过,我们为什么会选择开盘而不是收盘盘中买入呢?


毕竟印象中大A经常高台跳水,开盘买入不就意味着亏损吗?


这其实和股市中的某个常见现象有关,了解这个现象,对做量化及手工交易都有启发,下文我们就来做相应的介绍。



01

A股低开效应


1

A股行情


一直以来A股都被戏称为国家一级跳水运动员,非著名速降自行车手3000点高地常备役守军


谁让我们遇到的行情总让人一言难尽:



尤其行情较差时,大家都习惯了大A低开,即使偶尔高开也会低走


我也问过有一定交易经验的朋友们,在他们印象中大多数时候大A都是低走的。


这样的感觉是否正确呢?A股是否真的存在低开效应呢?


我们是做量化交易的,不能只凭主观直觉去判断。


还是要找来A股历史数据,借助Python代码,去看A股是否真的频频低开。



这也恰好是决定策略是开盘买还是收盘买的关键所在。


2

“开”/“走”定义


要进行这样的验证,我们首先需要知道什么是低/高开、低/高走


具体定义我已帮大家列示如下,就不多加赘述了:



了解了相关定义,我们就可以找来上证指数交易数据、编写相应的Python代码,统计历史上大A的开盘表现。




02

A股开盘统计


1

上证指数开盘情况


程序运行结果如图所示:



2007年至今,上证指数共出现1751次高开2397次低开,另有2次平开。


从数据角度看,大盘确实以低开为主



2

A股指数开盘情况


我们还顺便统计了A股其他指数,发现也是低开居多,高开更少:



这类现象的成因较难解释


有人认为和A股的T+1交易制度相关,但好像也不能完全说通。


我们先用其他T+0交易市场的指数来做个交叉验证


3

其他市场开盘统计


我们统计了恒生指数、标普500和纳斯达克指数的开盘情况:



和A股指数不同的是,上述指数高开的概率确实更高。


但不同市场低开/高开占比的差异,真的仅仅由T+1交易制度带来吗?


感兴趣的同学可以自己思考,我就不多着墨于此了。


4

上证走势


我们再进一步去探究A股每天的走势。


计算相对简单,只需在原有代码稍作修改即可,具体结果如图所示:



2007年至今上证指数在历史上共出现1292次低开高走,占比31%,与我们认为低开低走或高开低走出现最多的经验相悖。


5

失真指数


当然我们也不能只看上证指数,毕竟指数无法代表全部股票,尤其是上证指数这样一个失真的指数


点击图片,了解上证指数为何失真


因此我们还需要找出全部A股历史数据,编写相应的Python代码,去看个股低开还是高开更多,是否也存在低开高走现象



03

个股开/收盘统计


1

数据&代码


具体的数据我已经帮大家整理妥当,包含了所有股票(包括已退市的股票)上市至今每天的开高收低价格,甚至可以计算复权价,非常的完备。



有了数据我们就可以借助Python代码去做相应的计算:



如果你需要上述数据和代码的话,可以加我微信xbx297,都是可以直接免费发给你的。


2

统计结果


统计结果如图所示:



2007年至今所有A股股票也都以低开为主


比较神奇的是在剔除了停牌的情况下,仍有168万平开,占比14.13%。



进一步挖掘当日走势,我们发现个股还是低开高走居多然后才是低开低走和高开低走


这与指数验证的结论是一致的,即A股整体以低开为主且低开高走的趋势最多



这也解释了为何实盘策略会倾向于开盘买入股票,因为在收盘时获得正收益的可能性更大。


而如果在前一天收盘买入,则有更高的可能面临开盘下跌的境地。


上述结论不单单能运用到量化交易中,手工操作也可以借鉴


比如原先准备当天收盘时买入股票的,就可以等到第二天开盘时再买入,这样相对而言会有系统性的优势,日积月累也会产生不错的收益。



3

深入探究


当然我们的研究也不会仅仅止步于此。


接下来我们将继续深入探索,看看A股的低开高走现象又有哪些更细分的规律


比如什么情况下股票低开更加容易高走?



04

个股低开研究


1

低开分组


我们把低开的幅度按照0%-1%、1%-2%一直到8%-9%进行分组共计9组。


低开9%以上涉及到跌停,这里就暂不讨论。



这9种不同程度的低开发生后,在未来1/2/3天及更多天的股价表现又会如何?


我们仍借助全部A股历史数据和Python代码来进行验证。



相关数据和代码已经准备好了,如果你需要的话,可以加我微信xbx297,都是可以直接免费发给你的。


2

统计结果


代码运行结果如图所示:



2007年至今低开1%以内的情况最多,共409万次,而低开8%-9%的情况则只出现过5914次。


显而易见低开幅度越大,出现次数越少


3

1日后表现


再从低开后1天的表现来看,低开8%-9%的区间更易走高,高走概率达到56.21%盈亏比也高达3.65



这意味着每一次高走的收益,相当于3.6次低走的收益


再进一步去看,我们发现股票低开的幅度越大,当天平均收益也越高,最高的甚至有2.82%



但需要注意的是,在实操中我们无法在当天卖出这些股票,即无法赚到这2.82%。



但不管怎样,长期来看低开股票未来收益都不错,只有低开幅度在4%-7%区间的股票仍会面临亏损



4

相应策略


至此我们对A股的低开现象做了深入分析,那是否可以据此构建一个相应的量化策略呢?


本期只是得出了一个结论,从结论转化到可以执行的交易策略还有很多步骤。



篇幅有限,就不在本文多做讲解。


大家感兴趣的话可以多多点赞,点赞破100,我们就聊聊该如何设计相应的量化策略



05

后记


文章的最后,和大家分享一点量化投资的心得。


经常有人问我小白如何入门量化投资,有什么资料分享。


我特意为大家准备了一个《量化投资新手学习大礼包》。



首先是我们自己总结的适合零基础新手的量化投资学习路径,可以让你知道自己每一步需要达到什么阶段。



接下来你可以通过我整理的量化文章合集,来更全面的了解量化投资到底是什么。



我还精选了适合各个学习阶段的策略研报合集,正如我一直所说,量化研报是很好的量化实践项目,深度研报可以显著提升你的量化水平。



这一份代码则适合喜欢研究技术指标的人,你可以跟着教程轻松计算出所有技术指标,并测试这个指标的有效性。



如果你有一定的基础,还可以尝试回测一些策略,我为你准备好了十几个不同类型的经典策略和它们的代码,相信总有一个适合你自己去魔改开发,运用到实盘。



最后也是最关键的,量化的基础就是准确的历史数据,我会送你一份股票历史日线数据和一份财务数据,你可以用它测试所有技术指标和财务指标,也可以用来回测大部分策略



识货的你一定能够发现这个大礼包的价值吧。如果你需要的话,可以加我信xbx297,都是可以直接免费发给你的。



联系作者


往期文章推荐

A股贵如金?Python量化验证AH股溢价效应,跟着买15年18倍?| 附策略代码

跟着基金买,别墅靠大海?买基金重仓股票,会破产吗?| 附最新选股结果 |【邢不行】

抓了几千万条热门股数据,用Python量化验证后发现结果竟然...... | 【邢不行】

当我们谈论量化时,我们在谈论什么?量化投资常见策略有哪些?| 融券T0和高频交易详解|【邢不行】

散户反着买,别墅靠大海?股票上了龙虎榜还能买吗?【邢不行】

量化交易一定是机器人+自动化+高频交易吗?| 常见量化交易误区合集,新手脱坑入门指南 | 【邢不行】

抄底总在半山腰?抄底A股的时机何时到来?|【 邢不行】

投资不识筹码峰,炒遍A股也枉然?| 如何用python计算筹码分布数据 |【邢不行】

烂板如何出妖股?每天买炸板股票,不亏反赚100倍?| 【邢不行】

跟着社保买,别墅靠大海?跟着国家队炒股,还会亏钱吗?| 附最新选股结果【邢不行】

A股月份效应 | Python量化A股市场魔咒,5穷6绝7翻身准确吗?| 【邢不行】

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/167902
 
47 次点击