量化交易学习(五十九)使用akshare库下载新闻数据

在使用各种技术指标做回测后,我发现没有什么技术指标是百分之百准确的,比如MACD,它只有在单边行情时有较高的准确率,震荡行情就会频繁止损。

如果能在技术分析的基础上加上对新闻消息的判断,能够及时地根据最新的新闻进行决策,那就能提高我们胜率。

如果已经开通了券商的量化权限,那股票、期货的行情数据就可以用券商的接口了,但是如果想获取新闻数该怎么办呢?

我在网上找了一圈,大部分的接口都是要钱的,免费好用的不多,基本上都有些限制。今天这篇介绍的是akshare,它主要提供行情数据,也支持部分财经新闻数据,通过调用各大平台公开api来获取数据。很多量化教程或开源的量化项目也都是用akshare来获取数据。它支持的数据类型非常多,基本上你能想到的数据接口它都有。大家可以去查看它的文档了解它所支持的各类数据:https://akshare.akfamily.xyz/tutorial.html

akshare支持的新闻数据主要有这些:

1
2
3
4
5
6
7
8
"stock_info_cjzc_em"  # 资讯数据-财经早餐-东方财富
"stock_info_global_em" # 资讯数据-东方财富
"stock_info_global_sina" # 资讯数据-新浪财经
"stock_info_global_futu" # 资讯数据-富途牛牛
"stock_info_global_ths" # 资讯数据-同花顺
"stock_info_global_cls" # 资讯数据-财联社
"stock_info_broker_sina" # 新浪财经-证券-证券原创

它只能爬取限定条数的最新的新闻,如果想要更早的数据那就无能为力了。

下面来介绍一下它的使用方法吧:

首先是安装akshare库,直接用pip安装就可以了:

1
pip install akshare --upgrade

如果安装速度慢的话可以用国内的源:

1
pip install akshare --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple

然后在python中导入相应的包就可以使用了,下面以下载财联社的新闻数据为例:

1
2
3
import akshare as ak
df=ak.stock_info_global_cls()
df.to_csv("cls.csv")

数据下载后是 DataFrame 格式的,为了查看方便,这里我把它导出为csv格式的文件了。

用表格软件打开导出的cls.csv文件就能看到下载的新闻数据了:

faf7de051051c41714a000e3789cd184.png

对于财联社,目前只能下载最新的300条新闻,不支持下载指定时间段的新闻,支持切换下载模式为【全部】或【重点】:
ea4a16cc6c7dda30331505572ceb3c5a.png,当切换为【重点】时,获取的新闻就只有24条了。

3f77c211a79f2d6ad2e0f08a527ebb48.png

虽然能获取的新闻数据有限,但万事开头难,有比没有强😂,之后打算再找找别的方法来获取新闻数据。


希望这篇文章能帮助到大家。如果你有任何问题或建议,欢迎留言讨论,私信。感谢你的阅读,觉得不错,点个赞哦!还没有关注我的朋友可以关注 江达小记

江达小记