前言
我们的股票量化系统QTYX在实战中不断迭代升级!!!
星球学员中的大佬们给QTYX提供了很多实战应用方面的建议,志同道合的一群人一起来优化完善这个系统,日益强大的QTYX同时也能更好地帮助各位在市场中提高战绩!
“筹码分布”自从问世以来一直受到广大投资者的追捧,它是把股票按不同价位上的流通数量做了排布,从而反映了这个股票对于全体投资者来说持仓成本的分布情况。
我们知道主力的常用手段是:吸筹、拉升、派发、回落,这四个阶段我们用筹码分布可以研判出主力的踪迹,这也是为什么“筹码分布”一直热度不减,股市高手都不约而同地会去研究“筹码分布”,同时各大行情软件也会标配上“筹码分布”功能。
于是,我们采纳了来自星球学员小伙伴的建议:
于是,股票量化分析工具QTYX升级到了2.7.6版本,增加了个股筹码分布数据接口,选股时候可以结合筹码进行综合分析!
接下来,分享下如何使用QTYX新增的功能吧!
如何使用
在【条件选股】界面,当从【选股数据源】中获取到选股数据后,双击“股票代码”列的个股代码,此时会触发“高级分析功能”。或者双击界面左侧自选股列表的“股票代码”也会触发“高级分析功能”。然后选择“查看筹码分布”。
然后会显示筹码信息,比如当前日期、获利比例、平均成本、90成本高低范围和集中度以及70成本高低范围和集中度。
有了这个接口后,后续开发我们可以把它作为因子加入到选股算法中自动选股。
概述计算原理
对于要搭建自己的量化交易系统的人群来说,我们不能只看行情软件的指标,我们要把“筹码分布”作为一个研判因子结合到我们的交易系统中去,那么势必需要明晰“筹码分布”是如何计算出来的。
接下来我们就从原理上来讲解下行情软件上的“筹码分布”是如何计算出来的。
要讲清楚“筹码分布”的原理,得从股票第一天上市发行开始说起。
比如某个股票以10元价格发行了100股,然后发生了以下的几笔交易:
第一笔是:10.1元成交了50股,这时会在10.1元增加50股,在10元减少50股
第二笔是:10.2元成交了20股,这时会在10.2元增加20股,但是我们无法知道这20股分别来自10元和10.1元的多少部分,因为交易所是不会向公众提供投资者的帐目信息的。
因此理论上,我们根本无法绘制完全准确的筹码分布图,包括各类软件中的筹码分布状况也是通过历史交易计算出来的近似值。
所以,我们不能完完全全地只是依赖“筹码分布”做分析,而是应该把它作为一个因子和其他指标结合去综合分析。
那么行情软件上的“筹码分布”图又是如何绘制出来的呢?
这里就需要先设定一个计算规则,比如最简单的做法是10.2元增加了20股,同时10.1元和10元等比例的减少相应的股数(分别减少10股)。再复杂点的计算规则,会假设卖出行为背后的动机,比如盈利越多的价位卖的越多,也就是10元的筹码会比10.1元减少多点。
依照计算的规则,随着交易的继续,筹码会在不同价位之间进行流动,当不同的价位区间和相应的持仓量堆积起来之后,就形成了高矮不齐的山峰状态,也就形成了筹码分布的形态。
如何分析主力
虽然我们无法精确地得到“筹码分布”,但是并不影响我们的使用。
因为目前相对有效的“筹码分布”用法,主要是利用筹码的分散与密集来研判股价的运行趋势。
如果一只股票在某一个价位附近横盘了很长的时间,就会造成横盘区上方和下方的筹码向这个横盘区集中,在这个价格空间内,聚集了该只股票几乎所有的筹码,这种状态称之为筹码的密集状态。
反之,如果一只股票的筹码分布在比较广阔的价格空间之内,我们就称其为筹码的发散状态。
如果筹码自高位流向低位,在相对低位的狭窄价格空间实现聚集,就叫“筹码的低位密集”,此时是不错的买点。
如果筹码从低位筹码向上转移,在高价位区实现密集,它就应该被称之为筹码的高位密集,说明在市场上发生或正在发生大量的获利了结的行为,这很有可能是主力出货的迹象。
因此我们只需要计算得到筹码分布的形态即可,这样一来我们不需要使用逐笔成交数据,而是用当天的均价和成交量这种更简化的方法近似计算。
如何代码实现
虽然QTYX中是直接采用了现成的接口获取筹码数据,但是即使单独去计算,代码实现其实也比较简单(代码可以在星球主题附件中搜索到)。
第一步,获取股票数据。我们的历史股票数据除了有OCHLV之外,还要包含换手率和成交金额数据,OCHL使用复权数据。
可以使用baostock的数据源,返回列包含以下数据:
fields= "date,open,high,low,close,volume,pctChg,amount,turn"
第二步,计算筹码分布。
我们把当天的价格范围和成交量分成N份,近似地视为某个价位成交了多少股份。
price_per = (highT - lowT) / div_num
vol_per = volT / length
对于每天的换手率,指的是每天交易的股数占流通股数量的比例,也就是历史的股数有多少发生了转手,于是今天的股数增加,意味着历史的股数相应减少。
循环以上操作,滚动累计即可完成。
第三步,绘制柱状图形。
说明
完整的源码上传到知识星球《玩转股票量化交易》中,想要加入知识星球《玩转股票量化交易》的小伙伴记得先微信call我获取福利!
知识星球介绍点击:知识星球《玩转股票量化交易》精华内容概览