当前位置: > 股票>正文

python抓取A股市场历史数据(个股、指数) 怎么通过股票查基金收益

2023-07-24 07:53:59 互联网 未知 股票

python抓取A股市场历史数据(个股、指数)

@抓取金融市场数据

A股市场的关键数据

如果不是做短线,在一天内拼瞬时交易锁定投机收益。那每天只取一份数据就可以,用长时间的历史数据做决策分析(机会选择、持有收益计算,及交易策略的评估)。

个股数据与数据源

对于个股数据,可以拆分为个股基本属性信息和历史交易信息。 个股基本信息:可以包括行业、市值、利润、市盈率等中长期属性,这一部分季度/半年一看即可,不用抓取最新。 (从天天基金网抓取)

历史交易数据:每天要抓取最新的数据,累积至少5年的数据(我从2015.01.01开始,抓取5年的数据,网易提供了方便的数据获取接口,从网易可以获得任意长的历史数据,经过比较各家,个股历史数据的抓取还是163最好用)

python准备

工欲善其事必先利其器,数据抓取主要是从各种第三方抓,由于还是非付费用户,所以便捷高效的API是没有,各种网页解析而已。 这部分主要用了requests库和beautifulsoup页面解析库,拿来pip安装一下,然后import即可。 由于有些网页必须渲染后才能抓取,所以也引入了requests-html库,第一次使用的时候会下载一个浏览器内核。

抓取功能封成了function,后续可重用,高级的工具出来也方便替换。 有的网页涉及到动态技术需要渲染后才能抓到我们想要的信息,这部分抓取也要慢一些,单独做了封装。

#外部数据抓取引用库import requestsfrom bs4 import BeautifulSoupfrom requests_html import HTMLSession#渲染抓取页面def get_html_page_render(url): try: session=HTMLSession() r = session.get(url) r.html.render() session.close() return r.html.html except: return ""#直接抓取页面def get_html_page(url): try: rtime=0 res="" #重试次数最大为8 while len(res)==0 and rtime11: fout.write(res[0]) for j in range(3,len(res)): fout.write(" "+res[j]) fout.write(" ") fout.flush() iget=iget+1 fout.close return iget

抓取的每一个CODE,一个独立存储的文件,每行是一天的数据,第一列是日期。

大盘指数

a股的主要指数也都可以通过163的接口获得,指数的列表信息可以从天天基金网获取: http://quote.eastmoney.com/center/hszs.html 指数很多,其实关键就看几个就行,比如沪深300,相当于把握大盘。

000001 上证指数,上证综合 sh000001399001 深证成指 sz399001000300 沪深300 sh000300399005 中小板指 sz399005399006 创业板指 sz399006000010 上证180 sh000010000016 上证50 sh000016000009 上证380 sh000009000132 上证100 sh000132000133 上证150 sh000133000003 B股指数 sh000003000012 国债指数 sh000012000905 中证500 sh000905

以上是我抓的几个常用指数,用来看看大盘、决策指数基金应该差不多啦。

待续, 后面还有抓基金的。 在动荡和不可解释的A股市场,没有内幕消息的小玩家先从货币基金和指数基金入手,再成熟点可以选些优质基金,让优秀的基金经理帮咱赚钱呀。

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。