量化:tushare获取数据,构建自己的数据库(一)

本文介绍了如何通过Tushare数据接口获取股票日线行情和指标,将数据整理为DataFrame格式,便于分析和可视化,以构建针对特定行业上市公司的量化研究数据库。
摘要由CSDN通过智能技术生成

简介

       数据是研究量化的基础,基于tushare数据进行量化学习与研究更适合新手,通过网页爬取的数据,后续处理时个人觉得有点麻烦,而tushare返回的绝大部分的数据格式都是DataFrame类型,非常便于新手用pandas/NumPy/Matplotlib进行数据分析和可视化。

       我选取的数据:包含tushare的数据接口中的行情数据(日线行情、每日指标)合并后构建出自己的数据库。

代码

#导入基本库和数据接口
import pandas as pd
import tushare as ts
pro = ts.pro_api()

#定义获取数据函数,时间和指标可以根据需求更改
def get_data(code):
    df1 = pro.daily(ts_code=code, start_date='20101012', end_date='20240325', fields='ts_code,trade_date,open,high,low,close,pre_close,change,pct_chg,vol,amount,')
    df1 = df1.sort_values('trade_date')
    df2 = pro.daily_basic(ts_code=code, start_date='20101012', end_date='20240325', fields='ts_code,trade_date,close,turnover_rate,turnover_rate_f,volume_ratio,pe,pe_ttm,pb,ps,ps_ttm,dv_ratio,dv_ttm,total_share,float_share,free_share,total_mv,circ_mv')
    df2 = df2.sort_values('trade_date')
    # 合并df1和df2
    merged_df = pd.merge(df1, df2, how='outer')
    # 删除2中与df1重复的列
    merged_df = merged_df.loc[:, ~merged_df.columns.duplicated()]
    # 存储为CSV文件,路径可以根据自己更改
    merged_df.to_csv(f'{code}.csv', index=False)

# 获取code_list的数据并存储(以部分数据为例)
code_list=['600055.SH','600062.SH','600069.SH','600079.SH']
for code in code_list:
    get_data(code)
#最终输出输出csv文件到特定位置

构建的数据库

数据的csv文件

我的数据库是基于申万一级指数,筛选的特定7个成长期行业,提取申万二级指数中7行业的公司,以这些上市公司为标的来进行量化研究,欲知后事,咱下回分解。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值