更多: 股票数据分析Python+Tushare使用系列(一)(二)(三)等等
本文目标: 通过tushare开源接口开发股票相关功能, 据此学习Python入门功能
一 : tushare官网 , 环境配置, 简单使用
(1)简介:
Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。考虑到Python pandas包在金融量化分析中体现出的优势,Tushare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化。当然,如果您习惯了用Excel或者关系型数据库做分析,您也可以通过Tushare的数据存储功能,将数据全部保存到本地后进行分析。
(2)使用对象:
量化投资分析师(Quant)
对金融市场进行大数据分析的企业和个人
开发以证券为基础的金融类产品和解决方案的公司
正在学习利用python进行数据分析的人
(3)环境配置,安装
A : 安装Anaconda (包含Python环境,Conda,numpy,pandas 等大量依赖包) :
下载地址1:Anaconda 下载1
下载地址2(国内推荐): 清华大学开源镜像 Anaconda 下载
选择包 : 分别对应有Mac , windows, linux 包, 根据设备选择,
比如我的是Mac : Anaconda3-5.2.0-MacOSX-x86_64-1.pkg
B : 安装tushare环境 :
访问https://pypi.python.org/pypi/Tushare/了解相关安装,升级,更新等语句:
当上面Python环境安装成功后,就可以执行下面安装了,打开终端 :
pip install tushare
结果:
localhost:tushare niexiaobo$ pip install tushare
Collecting tushare
Downloading https://files.pythonhosted.org/packages/ba/99/579b7bb8b1633e3a6beeb424fe1c496be4b699eef1d9979d30abc6303e30/tushare-1.2.0.tar.gz (153kB)
100% |████████████████████████████████| 163kB 974kB/s
Building wheels for collected packages: tushare
Running setup.py bdist_wheel for tushare ... done
Stored in directory: /Users/niexiaobo/Library/Caches/pip/wheels/78/a2/07/6808ae63f87882c5ece17685b1817ac954f26e1589d8122028
Successfully built tushare
distributed 1.21.8 requires msgpack, which is not installed.
Installing collected packages: tushare
Successfully installed tushare-1.2.0
安装成功但是有个报错:distributed 1.21.8 requires msgpack, which is not installed.
意思是需要安装msgpack:
sudo pip install msgpack
输入开机密码回车安装.
(4)tushare简单使用(终端使用)
当上面tushare安装成功后,可以进行使用了, 官方提供查看版本,我们试试吧.
a : 打开终端, 输入pyhton直接回车启动环境
b : conda命令查看版本
conda --version
c : 查看tushare当前版本:
import tushare
print(tushare.version)
localhost:tushare niexiaobo$ conda --version
conda 4.5.4
localhost:tushare niexiaobo$ python
Python 3.6.5 |Anaconda, Inc.| (default, Apr 26 2018, 08:42:37)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tushare
>>> print(tushare.__version__)
1.2.0
>>>
d : 获取某几天的数据
>>> import tushare as ts
>>> ts.get_hist_data('600848',start='2018-01-05',end='2018-01-09')
open high close low volume price_change p_change ma5 ma10 ma20 v_ma5 v_ma10 v_ma20
date
2018-01-09 24.60 24.78 23.96 23.82 82175.82 -0.76 -3.07 24.208 23.237 23.213 120159.21 84689.28 69688.92
2018-01-08 24.12 24.95 24.71 24.01 109535.76 0.20 0.82 23.900 22.992 23.153 112259.60 85078.67 67644.48
2018-01-05 24.00 25.40 24.51 23.70 204266.23 -0.56 -2.23 23.420 22.820 23.048 97543.60 76964.50 64853.80
e : 获取000581实时数据:
>>> df = ts.get_realtime_quotes('000581')
>>> df[['code','name','price','bid','ask','volume','amount','time']]
code name price bid ask volume amount time
0 000581 威孚高科 22.850 22.850 22.860 4546056 103467420.560 14:03:54
(5)tushare开发工具->PyCharm
logo如下:
创建项目: 下面选择Python方式是创建一个新的目录管理第三方源, 后面可能需要手动导入需要的包
(所以需要使用tushare的看后面)
创建后就会自动生成项目,并导入初始化环境, 然后就可以创建代码了:
点击stockpro -> new - >Python files -> 创建一个test.py文件:
import tushare as ts
ts.get_hist_data('600848',start='2018-01-05',end='2018-01-09')
运行报错,缺少很多包:
ModuleNotFoundError: No module named 'lxml'
...
=>更改前面创建项目时的选择:
选择系统以及安装的目录就好了,这样在site-pageages里就链接到所以安装的包源 :
创建后经过一两分钟初始化,再创建test文件测试一下,没有报错.
/anaconda3/bin/python /Users/niexiaobo/Documents/PythonFile/stockTuSharePro/test.py
Process finished with exit code 0
,但是什么都没显示(我在终端显示打印信息了)
修改:把ts.get_hist_data用print主动打印出来
import tushare as ts
print(ts.get_hist_data('600848', start='2018-01-05', end='2018-01-09'))
点击运行按钮:
/anaconda3/bin/python /Users/niexiaobo/Documents/PythonFile/stockTuSharePro/test.py
open high close ... v_ma5 v_ma10 v_ma20
date ...
2018-01-09 24.60 24.78 23.96 ... 120159.21 84689.28 69688.92
2018-01-08 24.12 24.95 24.71 ... 112259.60 85078.67 67644.48
2018-01-05 24.00 25.40 24.51 ... 97543.60 76964.50 64853.80
[3 rows x 13 columns]
Process finished with exit code 0
成功!