tushare使用

个人ID:428543

我以前还是小白的时候,就幻想着自己能够在股市大杀四方,每天动动手指头就日进斗金,后来入坑,又因为终究不是主业,不能天天时时刻刻关注着,大多数都是十天半月才看一眼,有一次买入天津港,过了半年发生天津港爆炸案的新闻,才想起我自己的股票,结局自然不忍直视。俺寻思,能不能有个自动交易的机器人代替我,每天关注股票的数据,按照我的交易策略进行交易不就行了~这就需要有人为我提供股票的数据,于是找到了tushare。

我主要用tushare进行沪深股票市场的探索。首先主要来介绍一下tushare的沪深股票数据接口是Tushare最传统最有历史的数据服务项目,从一开始就为广大的投资者,尤其是量化投资者提供了稳定、便捷的接口Tushare Pro版在继承了旧版API的便捷易用性的同时又加强了数据的广度和深度。最为关键的是,数据来源和采集方式也发生了根本的变化,除了公开渠道的数据源,最关键性的变化是Tushare构建起来了自有的数据存储和数据治理体系,同时依托平台化的维护和管理方式,让数据更稳定可靠,而且服务能力也能得到质的的变化。

下面是获取全天龙虎榜数据的代码,并存入数据库,尤其推荐使用to_sql方法,不需要在数据库中建表就可以直接使用,比我最开始的时候方便多啦~

import tushare as ts
import pymysql
import tqdm
import time
from tqdm import tqdm, trange
from sqlalchemy import create_engine

# 龙虎榜初始化数据,入参为交易时间,当天
def initConnPara(inTradeDate):
    # 设置tushare pro的token并获取连接
    ts.set_token('你的token')
    pro = ts.pro_api()
    getLongHuDaily(pro, inTradeDate)
    getLongHuDetails(pro, inTradeDate)
 

# 通过日期取历史某一天的龙虎榜股票
def getLongHuDaily(pro, inTradeDate):
    df = pro.top_list(trade_date=inTradeDate)
    print(df)
    engine_ts = create_engine(
        "mysql+pymysql://{}:{}@{}/{}?charset={}".format('yourname', 'yourpwd', 'yourip:yourport', 'sharesfight', 'utf8')) 
    res = df.to_sql('top_list', engine_ts, index=False, if_exists='append', chunksize=5000)

# 通过日期取历史某一天的龙虎榜股票
def getLongHuDetails(pro, inTradeDate):
    df = pro.top_inst(trade_date=inTradeDate)
    print(df)
   engine_ts = create_engine( "mysql+pymysql://{}:{}@{}/{}?charset={}".format('yourname', 'yourpwd', 'yourip:yourport', 'sharesfight', 'utf8'))  
    res = df.to_sql('top_list_details', engine_ts, index=False, if_exists='append', chunksize=5000)

然后就可以直接在你的数据库中对今天龙湖榜的数据进行处理啦~

### Tushare 使用指南 Tushare 是一个免费、开源的金融数据接口工具,提供了丰富的股票市场数据。以下是关于如何使用 Tushare 的详细介绍。 #### 安装 Tushare 要开始使用 Tushare,首先需要安装它。可以使用 pip 工具来完成安装: ```bash pip install tushare ``` #### 配置 API 密钥 为了访问 Tushare 提供的数据服务,用户需要先注册账户并获取个人专属的 API 密钥[^1]。通过以下代码设置密钥: ```python import tushare as ts ts.set_token('your_api_token') pro = ts.pro_api() ``` 注意:`your_api_token` 应替换为你自己的实际密钥字符串。 #### 获取所有上市公司的基本信息 初始化完成后,可以通过调用 `stock_basic` 接口获取当前市场上所有股票的基础信息列表: ```python data = pro.stock_basic(exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date') print(data.head()) ``` 此函数返回的结果是一个 Pandas DataFrame 对象,其中包含了每只股票的关键字段,例如代码 (`ts_code`) 和名称 (`name`) 等。 #### 查询历史行情数据 如果想进一步分析某只特定股票的历史价格表现,则可利用如下方法提取日线级别K线图数据: ```python df = pro.daily(ts_code='000001.SZ', start_date='20230101', end_date='20231231') print(df) ``` 这里我们指定了目标证券编号以及时间范围参数[start_date,end_date] 来限定所需时间段内的记录集合[^1]。 #### 数据可视化展示 对于所获得的时间序列型数值资料而言,借助 Matplotlib 或 Seaborn 这样的绘图库能够直观呈现趋势变化情况。比如绘制收盘价折线图的例子: ```python import matplotlib.pyplot as plt plt.figure(figsize=(14,7)) plt.plot(df['trade_date'], df['close']) plt.title('Stock Price Trend') plt.xlabel('Date') plt.ylabel('Close Price') plt.show() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值