雪球舆情分析

舆情分析介绍

本篇文章主要结合雪球数据以及Tushare财经数据包的使用、

随着各种社交平台的发展,越来越多的牛逼哄哄的公司开始考虑利用文本数据挖掘有效的因子,第一个公开搞得比较好的同志当属美国一名教授,利用twitter数据构建了一个与标普500之间的模型,点燃了人们的激情。

在A股割韭菜越来越难之后,国内很多机构,比如光大证券,广发证券都各自撸起袖子干起了情绪分析因子研究。其中,光大证券在2011年开源了中文云项目,有兴趣的筐友可以了解一下。

由于文本数据为非结构化数据,在数据获取以及数据预处理的上,与一般的交易数据、财务数据相比,难度颇大。 这也导致社区中关于文本舆情分析的帖子比较少,在此,楼主利用米筐平台仅有的舆情分析数据——雪球舆论数据,进行一些探索。

雪球舆论数据查询

雪球作为一个XXX的社区,吸引了大量股民在雪球交流,并且,每个在雪球的用户可以选择关注自己感兴趣的股票,或者去评论一番。 如图所示:

基于每天雪球都会有大量讨论这一个事实,我们考虑,雪球社区的同志们是走心还是套路呢?

我们基于以下思路对雪球热度排行榜的数据进行测试:

① 选取前一天新增评论最高的20支股票,每天开盘买入,第二天调仓

让我们来看看如何利用米筐平台实现这个简单的想法呢? 打开数据,找到舆论数据 ,我们发现米筐提高了两个关于雪球舆论数据的API:

此处需要注意,米筐平台上关于这几个函数的文档说明已经过期,请以如下实际说明为准。

另外,数据最早可以追溯到2015年4月23日

雪球舆论数据查询:

研究:xueqiu.top_stocks(field, date, frequency='1d', count=5, country='cn')

交易:xueqiu.top_stocks(field, date, frequency='1d', count=5, country='cn')

雪球股票历史信息查询(研究专用):

xueqiu.history(id_or_symbol, start_date='2015-05-21', end_date='2016-05-21', frequency='1d', fields=None, country='cn')

雪球舆论数据: xueqiu.top_stocks 参数说明:

field: 必选参数,参数类型:str,表示需要获取的数据类型,有如下几种选择:

新增评论 'new_comments'

新增关注人数 'new_followers'

总评论数 'total_comments'

总关注人数 'total_followers'

卖出行为 'sell_actions'

买入行为 'buy_actions'

date: 必选参数,传入需要获取的日期

frequency: 可选参数,默认为'1d',可选择 '1d','1w','1M'(大写),分别对应频率为天、周,月

count:可选参数,默认为5,表示需要返回排名前count个数据。

可以看到,其实每日新增评论里含有大量的异常点,这里面的信息值得我们深入挖掘。

比如:2016-12-29,2017-01-05,新增评论大增,对应到盘面上我们可以看到一个十字星的出现。

根据新增评论构建

回到我们的策略回测上,结果如图所示:

哎、都是套路、

② 将频率换到周频率试试? 结果如图所示:

MD,都是套路。

可以看到,跟着雪球热榜走,基本上是稳亏不赚的。良好的反向选股指标!

其实这也不代表雪球热榜没有意义,如果我们能够做空热股榜股票, 那该多好!! 关于这个,还是洗洗睡吧、、、

根据新增关注人数构建

我们尝试一下,将新增评论换为新增关注人数试试?

周频回测结果如下:

尝试3

策略思路:

获取月度数据,月度调仓

选取上月新增评论最高的20支股票为股票池1;

选取累计最高的20支股票作为股票池2;

选取股票池1 与股票池2 的交集

回测结果如图:

可以看到,经过简单的优化,策略效果大大提升【虽然还是很烂】,值得注意的是,本策略在市场反弹的时候,基本弹得比较快,也比较高。有兴趣的筐友可以进一步深入研究。

经过如上几个测试之后,我们可以发现,仅利用雪球热度数据其实很难做出一个比较好的因子,但这可以启示我们用更多的信息去帮助我们做决定,例如:2016-12-29中国平安新增评论当中,究竟是正向评论多还是负向情绪多? 这就需要进一步的数据支持了。

米筐量化交易平台:http://www.ricequant.com

量化炒股QQ群:484490463  群内大神每日在线讲解代码,用Python自动赚钱!

你可能感兴趣的:(雪球舆情分析)