借助Tushare接口调用的股票数据制作简单的股票交易小程序

import tushare as ts
ts.set_token('*************')
pro = ts.pro_api()

tushare  id:433719

小程序采用pyqt5制作,只是很短时间学习并完成的,为学习过程的制作的比较粗糙的小程序,为初学者水平,注释比较详细,也有点啰嗦,代码新手,学习过程中随手写的,多包涵,仅供参考。

Tushare大数据社区,官网所在地址。

首先,在pycharm中调用tushare函数,set_token中为自己申请的密匙

    def queren1():
        #显示当天买入价格
        #data,shouxufei = start()
        data = ui.lineEdit_10.text()
        codelist = ui.lineEdit_3.text()
        number = ui.lineEdit_5.text()
        df = pro.daily(ts_code=codelist, trade_date=data)
        close = df.iloc[0,5]
        k = pro.stock_basic(ts_code=codelist,               
        fields='ts_code,name,area,industry,list_date')
        name = k.iloc[0, 1]
        ui.lineEdit_4.setText(str(close))
        ui.lineEdit_11.setText(str(name))

以上代码为显示当天的买入价格,pro.daily可调用指定股票在这一天的一些基本数据,此外本函数也可调用一些成交量,涨跌额等一些数据,详细可以查看Tushare大数据社区,其中包含更多的功能,本程序采用的是股票这一天的收盘价的数据。

小程序提供了买入模块和卖出模块,代码如下

    def buy():
        codelist = ui.lineEdit_3.text()
        number = ui.lineEdit_5.text()
        buyprice = ui.lineEdit_4.text()
        shouxufei = ui.lineEdit_9.text()
        endprice =float(buyprice)*float(number)
        k = pro.stock_basic(ts_code=codelist, fields='ts_code,name,area,industry,list_date')
        name = k.iloc[0,1]
        for i in range(0,30):
            if ui.tableWidget.item(i,1) == None:
                #股票名称
                ui.tableWidget.setItem(i,0,QTableWidgetItem(str(name)))
                #股票代码
                ui.tableWidget.setItem(i,1, QTableWidgetItem(codelist))
                #持仓数量
                ui.tableWidget.setItem(i,2,QTableWidgetItem(number))
                #交易价格
                ui.tableWidget.setItem(i,3, QTableWidgetItem(buyprice))
                #总份额
                ui.tableWidget.setItem(i,7, QTableWidgetItem(str(endprice)))
                #手续费
                ui.tableWidget.setItem(i,8,QTableWidgetItem(str(float(buyprice)*float(number)*float(shouxufei)*0.01)))
                break
            else:
                if codelist == ui.tableWidget.item(i,1).text():
                    # 持仓数量
                    backnumber = ui.tableWidget.item(i,2).text()
                    allnumber = float(number)+float(backnumber)
                    ui.tableWidget.setItem(i,2,QTableWidgetItem(str(allnumber)))
                    # 交易价格
                    backprice = ui.tableWidget.item(i,3).text()
                    allprice = (float(backprice)*float(backnumber)+float(number)*float(buyprice))/(float(backnumber)+float(number))
                    ui.tableWidget.setItem(i,3,QTableWidgetItem(str(allprice)))
                    # 总份额
                    backendprice = ui.tableWidget.item(i,7).text()
                    allendprice = float(backendprice)+float(number)*float(buyprice)
                    ui.tableWidget.setItem(i,7,QTableWidgetItem(str(allendprice)))
                    # 手续费
                    backshouxufei = ui.tableWidget.item(i,8).text()
           
  • 27
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值