前言

我们经常听到这样的股市要闻:“主力资金全天净流出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股,仍然会被识别为小单!

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

总结

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

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

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

大家如果想对涉及到的知识点进行更全面、更体系的从0-1方式的介绍,这里推荐给大家我的书籍《Python股票量化交易从入门到实践》!天猫、京东、当当全面开售!

同时也欢迎大家关注我的微信公众号【元宵大师带你用Python量化交易】了解更多Python量化交易相关内容

python 主力资金_小散量化炒股记|一文揭秘主力、散户资金流入流出的来龙去脉...相关推荐

  1. 小散量化炒股记|趋势指标金叉死叉策略在震荡行情中怎么处理

    前言 相信大家都听说了量化交易这个东西了吧!量化交易是一种新兴的系统化金融投资方法. 那么,什么才是普通股民所适合的量化交易打开方式呢? 本文就用一个接地气的股票分析场景--典型的趋势指标金叉死叉策略 ...

  2. 小散量化炒股记|股价如波浪起伏,教你用量化识别波段的极值点

    前言 相信大家都听说了量化交易这个东西了吧!量化交易是一种新兴的系统化金融投资方法. 那么,什么才是普通股民所适合的量化交易打开方式呢? 本文就用一个接地气的股票分析场景 -- 用量化方法识别股价波段 ...

  3. 小散量化炒股记|搭建本地化的股票量化数据库这么几步就够了

    前言 相信大家都听说了量化交易这个东西了吧! 量化交易是一种新兴的系统化金融投资方法,它综合多个学科的知识,用先进的数学模型代替人的主观思维制定交易策略,利用计算机强大的运算力从庞大的股票.债券. 期 ...

  4. 小散量化炒股记|说某个指标能赚钱?不盲从,先量化回测一番!

    前言 相信大家都听说了量化交易这个东西了吧!量化交易是一种新兴的系统化金融投资方法. 那么,什么才是普通股民所适合的量化交易打开方式呢? 本文就用一个接地气的股票分析场景 -- 用量化回测来识别技术指 ...

  5. 小散量化炒股记|要克服人性弱点?激活股票全自动化交易!

    前言 股票的自动化交易接口在2015年之后就被管制了,于是对于普通股民来说只能通过手动下单方式完成量化交易最后一个环节. 当然,对于股票交易来说,大部分人更偏向于中低频的交易范畴,毕竟高频交易在政策限 ...

  6. 小散量化炒股记|手把手教你转换通达信公式,盘整后均线粘合突破

    前言 通达信的公式编写功能非常流行,很多高手都是在通达信上编写公式来分析股票的. 作为过来人,建议大家在初期的策略研究阶段,选一个通用的平台进行策略研究,因为有现成的功能模块可以调用,这样就能把精力聚 ...

  7. 小散量化炒股记|基于多任务爬虫技术, 实现A股实时行情Level1采样

    前言 股票行情数据对量化交易者来说非常重要,无论是短线交易者还是中长线交易着. 对于短线交易者来说,获取实时行情数据的方案涉及到盘中分析和买卖点监测的时效性. 对于中长线交易中来说,盘后更新全市场数据 ...

  8. 小散量化炒股记|MySQL搭建股票量化数据库完整模版来袭

    前言 数据是量化交易的源头,如何高效地管理大量数据是量化交易分析中非常关键的环节.数据库就是最佳的解决方案. 通过API接口获取到股票行情数据之后,我们可以存入到数据库之中,这样下次调用的时候只需要从 ...

  9. 小散量化炒股记|如何用MySQL搭建本地股票量化数据库

    前言 数据是量化交易的源头,如何高效地管理大量数据是量化交易分析中非常关键的环节.数据库就是最佳的解决方案. 通过API接口获取到股票行情数据之后,我们可以存入到数据库之中,这样下次调用的时候只需要从 ...

最新文章

  1. Ext.Net学习笔记22:Ext.Net Tree 用法详解
  2. Android中Handler的使用
  3. 关于Unsupported major.minor version 52.0报错问题解决方案
  4. 修改wordpress地址(URL)导致不能登录后台
  5. linux 交叉编译 openssl
  6. 原创jquery插件treeTable(转)
  7. jQueryEasyUi验证
  8. linux查找应用主机,Linux 主机和服务器基本性能检查命令和工具
  9. Linux db2 4499,db2 連接 ERRORCODE=-4499, SQLSTATE=08001,解決辦法
  10. 操作系统和语言的关系(转载)
  11. 【TSP】基于matlab GUI蚁群算法求解旅行商问题【含Matlab源码 929期】
  12. Java培训机构可靠吗?
  13. 泰国之旅随感(70天)
  14. 撼龙图怎么开鸿蒙炁灵,《一人之下》藏金图怎么玩 撼龙藏金图高概率出绝世炁灵技巧...
  15. 人工智能导论测试题——第六章 进化智能与群体智能(2)
  16. java中Date类之GMT、UTC
  17. 致远OA 组合getshell
  18. 什么是Linux内存管理中的RSS和VSZ
  19. pyQt-GUI检测键盘操作
  20. Android问题集锦(六)- adb不是内部或外部命令解决方法

热门文章

  1. 虚拟机安装---模板机准备9(测试安装好的模板机)
  2. putty 下载地址
  3. .\Obj\Template.axf: error: L6002U: Could not open file .\obj\core_cm3.o: No such file or directory
  4. python学生成绩管理系统【完整版】
  5. python实现kd树以及最近邻查找算法
  6. 给大家介绍一个PDF图书下载网站,还有TXT图书下载
  7. 怎么用计算机名看地址吗,知道计算机名 肿么查ip
  8. excel中设置每行等高
  9. 3dsnbsp;max基础材质初学者必读(15)——设置砖墙纹理
  10. 空间实景三维激光点云数据处理服务来了!