tushare获取 保存_如何定时从Tushare获取过去某一天到现在的A股历史数据,并保存在本地~...

老规矩,我先上截图,再贴代码~

对于做量化交易或者短线的朋友,肯定需要每天在收盘后固定的时间获取目前A股的历史交易数据,用于模型的分析回测,因此,,下面小编将给大家展示我目前的方法~

我的数据是来自于Tushare,我非常感谢米哥的帮助~

下面我讲一步一步的贴出我的代码,并做解释~

(1)导入相关模块,当然Tushare模块是必不可少的,具体的安装方法见官网

(2)配置数据存储的路径,获得主要的路径

这个步骤的主要目的是获得程序运行的路径,会结合后面数据保存使用~

(3)设置Tushare参数,并获得目前上市的股票清单

看看stock_list获得的股票清单,哈哈哈下面将开始获得目前所有的上市历史股票数据数据

(4) 获取当前时间,开始对所有数据进行保存~

当然要实现定时获取,这里你只需要使用一个循环+一个time.sleep()就可以轻松解决,咋样,从Tusahre获取数据就是这样简单~

下面看看程序的运行效果,以及我数据保存效果~保存数据效果

原始代码:

import tushare as ts

import os

import pandas as pd

import time

import datetime

## 配置路径

path_main=os.path.abspath(os.path.dirname(os.getcwd()))

path_main_1=os.path.abspath(os.path.join(os.getcwd(), "../.."))

# tushare 设置

ts.set_token('ec6159d9aXXXXXXXXXXXXXXXXXXXXXXXXX')

pro = ts.pro_api()

### 获取更新数据

# 获取目前上市的股票清单

data = pro.stock_basic(exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date')

stock_list=data['ts_code']

# 获取日线级别数据

# 获取今天时间

now_time = pd.to_datetime(datetime.datetime.now())

end_date=str(now_time)[0:4]+str(now_time)[5:7]+str(now_time)[8:10]

# 设置开始时间

start_date='20180501'

for code_name in stock_list[1:5]:

# 注意采用try函数,避免网络原因而中断程序

try:

df = pro.daily(ts_code=code_name, start_date=start_date, end_date=end_date,fields='ts_code,trade_date,open,high,low,close,vol,amount')

# 设置数据保存路径

file_path =path_main_1+'\\data_output\\DAY_DATA\\'+code_name[0:6]+'.csv'

# 数据保存到本地

df.to_csv(file_path,index=False)

# 提示数据获取成功

tips=code_name+'数据获取成功,并保存~'

print(tips)

#这里设置一个短暂的时间,是因为我的贡献不够,我获取数据是有流量限制的,当然你贡献够这个完全不必要

time.sleep(0.1)

except:

print(code_name+'获取失败~')

time.sleep(20)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值