tushare

匿名 (未验证) 提交于 2019-12-03 00:14:01
#-*- coding:utf-8 -*-import requestsimport tushare as tsimport pandas as pdimport datetimeimport pymysqlimport timepymysql.install_as_MySQLdb()from sqlalchemy import create_enginedef macro_index():    '''    SHIBOR利率数据    接口:shibor    描述:shibor利率    限量:单次最大2000,总量不限制,可通过设置开始和结束日期分段获取    积分:用户积累120积分可以调取,具体请参阅积分获取办法    '''    # 获取某一段时间shibor利率数据    shibor_rate = pro.shibor(start_date='20190101', end_date='20191013')    # 获取当天shibor利率    # shibor_rate = pro.shibor(data=now)    # 追加数据到现有表shibor    shibor_rate.to_sql('shibor_data',engine,if_exists='append')def market_data():    '''    沪深港通资金流向    接口:moneyflow_hsgt    描述:获取沪股通、深股通、港股通每日资金流向数据,每次最多返回300条记录,总量不限制。        融资融券交易汇总    接口:margin    描述:获取融资融券每日交易汇总数据    两市交易汇总    描述:获取沪深两市成交总额    '''    # 获取某一段时间北向资金数据    north_fund = pro.moneyflow_hsgt(start_date='20190101', end_date='20191013',fields='trade_date,hgt,sgt,north_money')    # 获取当天北向资金数据    # north_fund = pro.moneyflow_hsgt(trade_date=now,fields='trade_date,hgt,sgt,north_money')    # 追加数据到现有表shibor    north_fund.to_sql('north_fund_data', engine, if_exists='append')    # 获取某一段时间两融数据    margin_fund = pro.margin(start_date='20190101', end_date='20191013',fields='trade_date,exchange_id,rzye,rqye,rzrqye')    # 获取当天两融数据    # margin_fund = pro.margin(trade_date='20191011',fields='trade_date,exchange_id,rzye,rqye,rzrqye')    margin_fund_data.to_sql('margin_fund_data', engine, if_exists='append')def stock_data():    '''    上市公司基本信息    接口:stock_company    描述:获取上市公司基础信息    积分:用户需要至少120积分才可以调取,具体请参阅积分获取办法    股票列表    接口:stock_basic    描述:获取基础信息数据,包括股票代码、名称、上市日期、退市日期等    股东人数    接口:stk_holdernumber    描述:获取上市公司股东户数数据,数据不定期公布    限量:单次最大3000,总量不限制    积分:600积分可调取,基础积分每分钟调取100次,5000积分以上无限制。具体请参阅积分获取办法    概念股列表    接口:concept_detail    描述:获取概念股分类明细数据    积分:用户需要至少300积分才可以调取,具体请参阅积分获取办法    每日指标    接口:daily_basic    更新时间:交易日每日15点~17点之间    描述:获取全部股票每日重要的基本面指标,可用于选股分析、报表展示等。    积分:用户需要至少300积分才可以调取,具体请参阅积分获取办法    前十大流通股东    接口:top10_floatholders    描述:获取上市公司前十大流通股东数据。    股权质押统计数据    接口:pledge_stat    描述:获取股权质押统计数据    限量:单次最大1000    积分:用户需要至少300积分才可以调取,具体请参阅积分获取办法    限售股解禁    接口:share_float    描述:获取限售股解禁    限量:单次最大5000条,总量不限制    积分:120分可调取,每分钟内限制次数,超过5000积分无限制,具体请参阅积分获取办法    '''    company_detail = pro.stock_company(fields='ts_code,province,city,employees,main_business')    company_detail.to_sql('company_detail_data', engine, if_exists='append')    stcok_list = pro.stock_basic(list_status='L', fields='ts_code,name,industry,market,exchange,list_date')    print(df4)    stockholder_info = pro.stk_holdernumber(ts_code='300199.SZ', start_date='20160101', end_date='20181231')    concept_info = pro.concept_detail(id='TS2', fields='ts_code,name')    stock_info = pro.daily_basic(trade_date='20191011', fields='trade_date,ts_code,close,total_share,float_share')    print(df6)    floatholder = pro.top10_floatholders(ts_code='300033.SZ', fields='ts_code,end_date,holder_name,hold_amount')    print(df7)    pledge = pro.pledge_stat(ts_code='300033.SZ',fields='ts_code,end_date,pledge_count,unrest_pledge,rest_pledge,pledge_ratio')    print(df8)    restricted_stock = pro.share_float(ts_code='300033.SZ', fields='ts_code,holder_name,float_date,float_share')    print(df9)if __name__ == '__main__':    ts.set_token('ac16b470869c5d82db5033ae9288f77b282d2b5519507d6d2c72fdd7')    pro = ts.pro_api()    now = datetime.datetime.now().strftime("%Y%m%d")    engine = create_engine('mysql://root:123456@127.0.0.1/stock?charset=utf8')    data()
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!