最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

Tushare是python金融量化交易中一个很好用的第三方依赖包,一般入门使用python做金融量化的都会用这个工具,因为它是免费开源的,而且可以获取的内容很全面,数据获取实时性也比较可靠,数据齐全。我在当年刚开始做python量化交易,第一个接触的就是这个工具,感觉挺好用的,不失为一个python量化入门的利器。

我们前几章也花了很大的篇幅介绍了tushare的一些包括基本面数据、历史行情、实时行情、tick分时数据,以及讲了一部分的股票龙虎榜数据获取。并且使用数据库引擎,将获取到的数据存入数据库,并且通过条件过滤查询出来。可以说,我们今天将tushare获取股票龙虎榜数据的最后一部分内容学习完后,tushare的使用基本就完成了。

那么,下面我们开始进行最后一部分的学习,看下如何获取股票龙虎榜数据包括:

  • 个股上榜统计
  • 营业部上榜统计
  • 机构席位追踪
  • 机构成交明细

下面我们进行介绍这几个数据的获取和使用方法。



个股上榜统计

个股上榜统计含义:

这个数据是获取近5、10、30、60日,这4种周期的数据统计,4种周期参数为可选参数,并且包括如下的信息:

  1. 上榜次数
  2. 买入席位数和卖出席位数。
  3. 累积购买额
  4. 累积卖出额
  5. 净额

首先,导入tushare包,并创建mysql数据库连接。相应的tushare及mysql驱动安装,我们之前已经介绍过啦,这里就不再啰嗦咯。

<code>from sqlalchemy import create_engine
import tushare as ts

#
engine = create_engine('mysql://root:[email protected]:3306/tushare?charset=utf8')
Session = sessionmaker(bind=engine)
session = Session()/<code>

获取最近10天的个股上榜统计,并且入库:

<code>pip install mysqlclient/<code>

打开数据库查看,获取的字段:


我们可以看到有几个字段,字段的含义分别如下:

  • code:代码
  • name:名称
  • count:上榜次数
  • scount:卖出席位数
  • samount:累积卖出额(万)
  • bamount:累积购买额(万)
  • net:净额(万)
  • bcount:买入席位数
  • 查询上榜次数最多的个股

    <code># 获取上榜个股最多的
    cursor = session.execute('SELECT * FROM `cap_tops` where count = (select max(count) from `cap_tops`)')
    result = cursor.fetchall()
    print("\\n查询数据结果:")
    for v in result:
    print(v)/<code>

    查看查询结果:

    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    从控制台输出,我们可以看到,统计上榜次数最多的三只股票是:日丰股份,万马科技,瑞玛工业,最近10天都上榜了9次,可见这三只股票最近的活跃度非常高。


    营业部上榜统计

    数据含义:这个数据获取的是营业部最近近5、10、30、60日上榜次数、累积买卖的情况,可以查看营业部具体持仓情况。

    获取最近10天的营业部上榜统计,并且入库,这个查询耗时比较久,约要20秒

    <code># 获取营业部上榜统计,周期为最近10天的统计
    data_2 = ts.broker_tops(days=10)
    # 入库
    data_2.to_sql('broker_tops', engine, if_exists='append')
    # 获取上榜营业部最多的
    cursor = session.execute('SELECT * FROM `broker_tops` where count = (select max(count) from `broker_tops`)')
    sleep(3)
    result = cursor.fetchall()
    print("\\n查询数据结果:")
    for v in result:
    print(v)/<code>

    获取数据如下:


    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    营业部上榜统计数据获取结果

    字段信息:

  • broker:营业部名称
  • count:上榜次数
  • scount:卖出席位数
  • top3:买入前三股票
  • bamount:累积购买额(万)
  • bcount:买入席位数
  • samount:累积卖出额(万)
  • 控制台输出:

    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    输出统计最高的营业部信息

    我们可以看到最近10天上榜营业部最高的是:西藏东方财富证券股份有限公司拉萨团结路第二证券营业部,并且其买入的前三只股票是:鱼跃医疗,平高电气,达安基因


    机构席位追踪

    数据含义:机构近5、10、30、60日累积买卖次数和金额等情况,被操作最多次的股票。

    获取数据并入库,周期为近10天

    <code># 获取机构席位追踪统计,周期为最近10天的统计
    data_3 = ts.inst_tops(days=10)
    # 入库
    data_3.to_sql('inst_tops', engine, if_exists='append')
    # # 获取机构操作次数最多的股票
    cursor = session.execute('SELECT * FROM `inst_tops` where bcount = (select max(bcount) from `inst_tops`)')
    sleep(3)
    result = cursor.fetchall()
    print("\\n查询数据结果:")
    for v in result:
    print(v)/<code>


    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    字段含义如下:

  • code:代码
  • name:名称
  • bamount:累积买入额(万)
  • bcount:买入次数
  • samount:累积卖出额(万)
  • scount:卖出次数
  • net:净额(万)
  • 控制台输出结果如下:

    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    机构买入次数最多的股票

    可见日丰股份为买入次数最多的股票,并且买入净额为1.2亿,净额为3200多万。可尝试关注!


    机构成交明细

    数据含义,机构成交明细应该不用我多说了吧,炒股的朋友肯定都知道这个数据,这个是获取最近一个交易日机构席位成交明细统计数据。

    获取数据代码:

    <code># 获取机构席位追踪统计,周期为最近10天的统计
    data_4 = ts.inst_detail()
    # 入库
    data_4.to_sql('inst_detail', engine, if_exists='append')/<code>

    获取数据如下:

    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    字段信息含义:

  • code:代码
  • name:名称
  • bamount:机构席位买入额(万)
  • samount:机构席位卖出额(万)
  • date:交易日期
  • type:类型
  • 现在,我们希望提取出有用的数据,怎么做呢?我们希望提取机构净买入额最大的股票,也就是bamount与samount差值最大,查询语句如下:

    <code>cursor = session.execute('select * from inst_detail where name = '
    '(select a.name from ('
    'select *,bamount-samount as buy_left from `inst_detail` order by buy_left desc limit 1) '
    'a)')
    result = cursor.fetchall()
    print("\\n查询数据结果:")
    print(result)/<code>

    打印查询结果:

    最终篇!Python编程,使用Tushare获取股票龙虎榜交易数据

    机构成交净买入额最大的股票

    结果可以看到,华大基因的股票净买入额最大,上榜理由有两个都是涨幅偏离值达7%的证券,其实这个数据多余了一条,重复了,这个应该删掉一条,这个以后我们讲数据清洗过滤时会细讲。


    以上,就是我们本章的全部内容,这也是我们大操手量化投资,关于python量化交易的tushare包,获取股票行情数据的量化金融数据的最后一章内容。

    希望经过这几篇文章的学习,大家都能够用tushare下载、存储所需要的股票行情数据,并且能够进行简单的数据分析。


    量化交易这条路其实很有趣,又很枯燥。笔者当年开始进行量化交易时,是因为兴趣入门,真正开始学习的时候,发现这个学习过程又是很枯燥的,但是到后来的拥抱量化交易,享受能躺着挣Q的幸福。这些年走过来,我发现量化交易不仅在工作上,还有投资事业上,都给了我很大的帮助,也利用量化交易从市场中获取了自己应得的那部分利润。看到很多做交易的朋友苦于想入门量化投资这条路又苦无方法,所以闲来无事,偶尔做做这方面的相关知识出来分享,希望能够帮到更多的朋友。

    感谢500多粉丝的关注,今后我会继续更新量化交易领域的相关知识。只要你坚持下去,并且将笔者的文章仔细学习并吸收,将尝试其运用于你的交易投资决策上,相信时间总能给你满意的回报的!加油吧,亲们。

    谢谢关注头条号:大操手量化投资,欢迎关注并转发,收藏我的文章!大操手量化投资,带你走进量化交易的世界!


    分享到:


    相關文章: