本
文
摘
要
TuShare是一个免费、开源的python财经数据接口包。能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据来源方面极大地减轻了工作 量。沪深股通在买什么股票,是很多投资者参考的一个重要数据,下面我们用python编写一个程序,通过调用Tushare库方便地获取沪深股通十大成交股,并保存为EXCEL文件。
获取数据后的效果如下:
下面程序,用的Tushare的Pro数据,需要填写自己的TOKEN接口代码,获取方式如下(注册、获取 TOKEN码都是免费的,2分钟时间即可完成下述步骤。):
1.点击此链接,免费注册用户。https://tushare.pro/register?reg=420994
2.参考此链接,获取TOKEN代码。https://waditu.com/document/1?doc_id=39
3.把你的TOKEN代码,替换到下面代码中。
import tushare as ts
import pandas as pd
import os
#将你的TOKEN代码替换到下面。
ts.set_token(***********这里输入你的Tushar的接口TOKEN***********)
lm=["交易日期","股票代码","股票名称","收盘价","涨跌幅%","资金排行","市场类型","成交金额(亿)","净买额(亿)","买入额(亿)","卖出额(亿)"]
pro = ts.pro_api()
#设置想获取数据的日期
de=20210203
#获取成交额前十的沪股通股票行情,并规范输出格式。
hg=pro.hsgt_top10(trade_date=de,market_type=1).sort_values(by="rank")
hg.change=round(hg.change,2)
hg.amount=round(hg.amount/100000000,2)
hg.net_amount=round(hg.net_amount/100000000,2)
hg.buy=round(hg.buy/100000000,2)
hg.sell=round(hg.sell/100000000,2)
hg.columns=lm
hg=hg.iloc[:,1:]
hg=hg.set_index("股票代码")
#获取成交额前十的深股通股票行情,并规范输出格式。
sg=pro.hsgt_top10(trade_date=de,market_type=3).sort_values(by="rank")
sg.change=round(sg.change,2)
sg.amount=round(sg.amount/100000000,2)
sg.net_amount=round(sg.net_amount/100000000,2)
sg.buy=round(sg.buy/100000000,2)
sg.sell=round(sg.sell/100000000,2)
sg.columns=lm
sg=sg.iloc[:,1:]
sg=sg.set_index("股票代码")
#将数据保存到EXCEL文件
with pd.ExcelWriter("沪深股通十大成交股.xlsx") as writer:
hg.to_excel(writer, sheet_name=沪股通)
sg.to_excel(writer, sheet_name=深股通)
#定义列宽
worksheet=writer.sheets["沪股通"]
worksheet.set_column("A:L", 15)
worksheet2=writer.sheets["深股通"]
worksheet2.set_column("A:L", 15)
writer.save()
os.startfile("沪深股通十大成交股.xlsx")