小散量化炒股记|一文揭秘主力、散户资金流入流出的来龙去脉

前言

我们经常听到这样的股市要闻:“主力资金全天净流出140.95亿元……”

目前很多行情软件也提供了主力资金流入流出、散户资金流入流出等数据。

很多交易者会依据这些“主力”和“散户”动向数据来判断股票的走势。

相信大家都听说了量化交易这个东西了吧!

那么,什么才是普通股民所适合的量化交易打开方式呢?

本文就用Python一步一步来统计主力和散户资金流入流出数据,从而揭秘揭秘主力、散户资金流入流出的来龙去脉,用一个接地气的选股场景来和大家分享一下,普通股民如何去使用量化交易!

解读分时明细数据

我们从免费行情软件中截取了某股2020年1月23日的成交明细数据,我们看到成交明细中有时间、价格、现量和笔数四列数据,如下图所示:

由于是免费行情软件,此处“成交明细”数据是以3-6秒间隔去记录的,表示在这个时间撮合的多笔单子的总和,因此确切地说是“分时成交”数据,即依据时间段为单位统计的结果,笔数这栏表示的是在这个周期内总共成交了几笔。

因此显示的数据格式为在几分几秒以多少价格分几笔成交了多少手。

注意:这不同于“逐笔成交”的数据,“逐笔成交”数据记录的是每一笔成交的明细,这个属于行情软件收费范畴的功能。

比如像以下这样的数据,如图所示:

再来看下现量这栏,现量指的是当前分时的成交量,以手为单位。其中有三种颜色,分别是红色、绿色和白色。红色代表主动买单,绿色代表主动卖单,这部分与“五档买卖明细”相关,如下图所示:

我们知道交易所成交的规则为“价格优先、时间优先”,挂单价比现价高就会优先成交,因此主动买单,指的是以委卖的价格成交,即以买卖档位窗口中“卖一”及以上的价格成交。主动卖单跟主动买单刚好相反,以“买一”及以下的价格成交,挂的卖单价格比现价低就会优先成交。

从内外盘可以看出委买委卖的情况,即外盘代表主动买盘的集合,内盘代表主动卖盘的集合。

当然,白色也比较好理解了,即指的是主动买单和主动卖单相等的情况。

分时明细数据格式

此处我们以'002372'该股'2020-01-23'当天分时数据为例。此处数据名称为df_tick,Data Frame格式如下所示:

返回值中time时间、price成交价格、change价格变动、volume成交手、amount成交金额(元)、type买卖类型【买盘、卖盘、中性盘】。我们验证该数据与行情软件的成交明细数据吻合。如下图所示:

计算资金流入流出

接下来我们以还原计算过程的方式,解释下主力和散户资金流入流出的原理。

首先我们通过分时明细数据粗略地估计下该股流入和流出的资金情况。

成交额的计算为价格*成交量,df_tick数据已经包含了成交额数据amount。我们把当天所有分时的成交额累计后得到整一天的成交额为9856.02万,代码如下所示:

df_tick.amount.sum()

计算总体资金流入和流出的代码如下所示:

df_tick["amount"].groupby(df_tick["type"]).sum()
"""
type
中性盘     2110576
买盘     36741662
卖盘     59707926
Name: amount, dtype: int64
"""

重点来了!对于主力资金的流入和流出的计算,可不是根据每笔交易的归属账户来划分机构、散户的!而是通过资金量的大小去筛选,因为成交一笔较大大成交量的单子是需要相应大小资金,往往认为这笔成交是由机构或者大户完成的,也就是所谓的主力。所以主力的动向怎么能轻易被公开呢?

比如东方财富网的定义如下:

超大单:大于等于50万股或者100万元的成交单;

大单:大于等于10万股或者20万元且小于50万股和100万元的成交单;

中单:大于等于2万股或者4万元且小于10万股和20万元的成交单;

小单:小于2万股和4万元的成交单;

流入:买入成交额;

流出:卖出成交额;

主力流入:超大单加大单买入成交额之和;

主力流出:超大单加大单卖出成交额之和;

净额:流入-流出;

净比:(流入-流出)/总成交额;

因此我们可以设置主力交易成交额阈值即可,当天所有大于该阈值的买盘的总成交额,即为主力资金流入,当天所有大于该阈值的卖盘的总成交额,即为主力资金流出。代码如下所示:

df_tick[df_tick["amount"]>threshold].amount.groupby(df_tick["type"]).sum()
"""
type
中性盘     1119753
买盘     14042952
卖盘     33459052
Name: amount, dtype: int64
"""

同样的方法也可以统计得到散户的资金流入流出情况。

然后把这些数据绘制成折线图后,能更清楚的了解资金流入和流出的变化趋势。如下所示:

这里要说明下,如果要更精确的统计流入流出的资金情况,可采用分时逐笔成交数据去计算。

确切地说即使使用“逐笔成交”数据也只能作为寻找主力行踪的一项参考指标,有两个原因:

1)如果我是一个散户,我下一个50万的单子就被识别为机构了,同时机构的单子依据目前的技术都是用自动交易软件批量下单的,把一个大单转化大为各种小单,那就被识别为散户了。

2)“逐笔成交”是以实际成交对手盘中买卖双方较小投注量为单位统计的结果。即使机构挂了50万的单子,但实际只成交了1000股,仍然会被识别为小单! 

总之这个数据要用来判断主力的行踪,真的不要太当真了!

总结

通过这个简单而又实用的股票量化场景,希望能够给广大朋友对于量化交易有一个直观的感受。

然后,我们应该升级自己的炒股方式了,把自己以前炒股的那套方法,抽象成策略模型,用量化的方法去全市场回测评估,然后让程序帮助我们监测行情的走势。

这个才是普通股民所适合的量化交易打开方式!

例程中代码可在掘金小册课程中查阅(公众号主页->热门课程->掘金小册,可获得课程二维码),同时我们会上传至“《Python股票量化交易从入门到实践》读者交流群”和知识星球。

往期回顾

小散量化炒股记|只用一分钟选出底部放量跳空上扬的强势股

小散量化炒股记|不用追高!Python告诉你强势股回调介入的位置

元宵大师的量化交易书籍开售!!京东、当当、天猫有售!!凭订单进读者交流群获取工具源码!加我微信了解详情
微信关注:‘元宵大师带你用Python量化交易’

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值