1. 代码目的
设定一定的时间段,滚动下载数据。
例如,当前时间为2019-11-19,当日未收盘,若设置数据期间为180天,则保存2019-5-23至2019-11-18的数据
明日为2019-11-20,当日未收盘,则自动删除2019-5-23数据,加入2019-11-19的数据。
便于之后的量化分析
滚动的目的:避免数据文件过大
2. 前期准备
首先安装python (或者anaconda),但要注意最好不要同时安装python和anacoda,因为anacoda里面包含纯python,容易起冲突。
anacoda网址:https://www.anaconda.com/
若选择纯python, 则需要
pip install datetime
pip install pandas
pip install numpy
pip install baostock
若选择anacoda
需要设置环境变量
111111.png
然后只需要
pip install baostock
安装pycharm或者anacoda自带的spyder
3. 为什么选择baostock
Tushare、Baostock、joinquant等均可获得股票日数据
Wind、CSMAR也可以获得(花钱)
但是Tusharepro需要积分、joinquant只有一年试用期
因此本文选择Baostock,无需注册。
http://baostock.com/
4. 代码
import baostock as bs
import pandas as pd
import numpy as np
import datetime
#### 登陆系统 ####
lg = bs.login()
########定义变量#######
now_time=datetime.datetime.now().strftime('%Y-%m-%d')
now_time=datetime.datetime.strptime(now_time,'%Y-%m-%d')
year=int(now_time.year)
print('请输入地址')
global file_place
file_place='D:\\'
fl = 'Quanti