在开始之前,各位需要做好以下准备:
电脑一台、下载安装好pycharm社区版
(下载网址:https://www.jetbrains.com/pycharm/download/?section=windows)、下载安装好anaconda最新版(下载网址:https://www.anaconda.com),如果本地网络打不开以上网址,需自备科学上网工具。
anaconda安装好以后,点击开始菜单运行anaconda prompt
接下来要创建一个Conda虚拟环境,并将python的版本指定为3.10(一定要指定3.10的版本,为了以后运行talib库),我们给即将创建的conda环境起名为“gold”。在anaconda prompt界面输入下列代码然后按下回车
conda create -n gold python=3.10
当运行到这里时,输入“y”然后按下回车:
接下来进入到我们的gold环境,在anaconda prompt界面输入下列代码然后回车:
conda activate gold
进入到gold虚拟环境后我们要下载两个包,分别运行下面两行代码:
pip install baostock
pip install akshare
这两个包下载完成后,我们就可以使用baostock和akshare的python接口愉快的拿数据了,在此之前我们需要使用虚拟环境gold来继续创建python项目,让我们打开pycharm:
接下来会报错,直接点确定进入项目即可。左上角找到文件-设置-项目-python解释器-添加解释器-添加本地解释器-conda环境-使用现有环境-gold-确定-应用:
此时整个项目需要的所有环境构造完成,接下来是最简单的敲代码环节,新建一个python文件,然后导入我们前面下载好的两个包(其实是三个包,pandas包用来处理csv文件,下载baostock时自动下载pandas):
import baostock as bs
import pandas as pd
import akshare as ak
接下来先尝试使用baostock的数据接口爬一下分钟线数据,让我们找到baostock官网的API说明文档(网址:http://baostock.com/baostock/index.php/Python_API%E6%96%87%E6%A1%A3),将接口的示例代码复制粘贴下来:
直接运行后,效果如下:
我们可以随意修改里面的参数来获取不同代码、任意期限的股票数据。并将这些数据保存在本地,以分钟线为例:
这里需要注意,baostock爬取的股票复权数据采用的是涨跌幅复权法,这种方式计算的股票复权价与你的股票交易软件计算的结果是不同的。比如平安银行在1991年9月6日这天的前复权开盘价,你的股票交易软件显示的价格为-1.39元,而baostock爬取的数据为0.1818元。baostock爬取的数据是可以用来直接计算收益率的,与wind是一致的。
当然有人希望爬取的数据和股票交易软件一致,这就需要用到akshare。这个接口直接从东方财富或者新浪财经爬取数据,计算收益率时仅后复权数据可用。让我们找到akshare官网的api说明文档(网址:https://www.akshare.xyz/),将接口的示例代码复制粘贴下来:
直接运行后效果如下:
如果想把数据保存在本地,只需要把最后一行代码修改一下即可:
注意:baostock和akshare两个接口爬取的数据保存到本地必须选择.csv后缀,csv文件和excel文件高度相似,但csv文件抓取数据特别方便。
akshare和baostock这两种复权价格的计算方式各有优劣,关于股票复权价格的详细科普放到后面讲解,下期以akshare的接口为例,教大家如何利用循环爬取全市场股票数据,我们下期再见啦~
感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
工具都帮大家整理好了,安装就可直接上手!
三、最新Python学习笔记
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、Python视频合集
观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试宝典