用tushare保存A+H所有股票的历史交易数据

我全都要
上次介绍了获取个股基本数据和画图的方法
今天来学习一个如何获得所有股票的历史交易数据。
通过tushare可以非常方便的获得A+H所有股票的历史交易数据,主要思路是两步:
第一步,获得A+H所有的股票代码:

pool = pro.stock_basic()

输出是股票信息的dataframe,具体如下(仅展示前5行):
股票信息
第二步,通过遍历pool的股票代码索引ts_code获得每只股票的历史交易数据:

df = pro.daily()

输出效果如下:
输出效果如下
保存到excel:

writer = pd.ExcelWriter('H://quant//'+ i + '.xlsx')
df.to_excel(writer, sheet_name=i + '', index=False)

将代码补全,设置开始时间为一个较早的日期,等待下载完成之后便可以获得成就——“我全都要”。
运行效果如下:
运行效果
看着是不是很爽~
运行效果
我全都要

完整代码如下:

import tushare as ts
import pandas as pd
import time


def maintask():
    pro = ts.pro_api()
    #获取基础信息数据,包括股票代码、名称、上市日期、退市日期等
    pool = pro.stock_basic(exchange = '',
                           list_status = 'L',
                           adj = 'qfq',
                           fields = 'ts_code,symbol,name,area,industry,fullname,list_date, market,exchange,is_hs')
    #print(pool.head())
    print('获得上市股票总数:', len(pool)-1)
    j = 1
    for i in pool.ts_code:
        print('正在获取第%d家,股票代码%s.' % (j, i))
        #接口限制访问200次/分钟,加一点微小的延时防止被ban
        time.sleep(0.301)
        j += 1
        df = pro.daily(ts_code = i,
                       start_date = startdate,
                       end_date = enddate,
                       fields = 'ts_code, trade_date, open, high, low, close, pre_close, change, pct_chg, vol, amount')
        #print(df.head())
        writer = pd.ExcelWriter(i + '.xlsx')
        df.to_excel(writer, sheet_name = i + '', index = False)


if __name__ == '__main__':
    #设置起始日期
    startdate = '19980101'
    enddate = '20190304'
    #主程序
    maintask()
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Tushare上获取5个股票交易数据,可以按照以下步骤进行操作: 1. 首先,需要注册Tushare账号,并在Python中安装Tushare库。 2. 在Python中导入Tushare库,并使用Tushare提供的get_hist_data函数获取历史交易数据。 例如,可以使用以下代码获取股票代码为600036的历史交易数据: ```python import tushare as ts df = ts.get_hist_data('600036') ``` 3. 可以使用Tushare提供的get_stock_basics函数获取所有股票的基本信息。 例如,可以使用以下代码获取所有股票的基本信息: ```python import tushare as ts df = ts.get_stock_basics() ``` 4. 可以使用Tushare提供的get_today_all函数获取当天所有股票的实时交易数据。 例如,可以使用以下代码获取当天所有股票的实时交易数据: ```python import tushare as ts df = ts.get_today_all() ``` 5. 可以使用Tushare提供的get_h_data函数获取特定时间段内的历史交易数据。 例如,可以使用以下代码获取股票代码为600036的2019年1月1日至2020年1月1日之间的历史交易数据: ```python import tushare as ts df = ts.get_h_data('600036', start='2019-01-01', end='2020-01-01') ``` 6. 可以使用Tushare提供的get_tick_data函数获取特定交易日的分笔数据。 例如,可以使用以下代码获取股票代码为600036的2020年1月2日的分笔数据: ```python import tushare as ts df = ts.get_tick_data('600036', date='2020-01-02') ``` 通过以上步骤,可以在Tushare上获取5个股票交易数据。根据需要,可以使用不同的函数和参数获取不同的数据

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值