代码拉取完成,页面将自动刷新
同步操作将从 rzxxysy/stock 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
# -*-coding=utf-8-*-
__author__ = 'Rocky'
'''
http://30daydo.com
Contact: weigesysu@qq.com
'''
'''
记录每天的盈亏情况 完成度100%
'''
import pandas as pd
import os
import tushare as ts
import datetime
def getCodeFromExcel(filename):
#从excel表中获取代码, 并且补充前面几位000
#获取股票数目
df=pd.read_excel(filename)
code_list = df['证券代码'].values
quantity_list=df['股票余额'].values
code=[]
quantity=[]
for i in range(len(code_list)):
code.append(str(code_list[i]).zfill(6))
#后面学会了map函数,可以直接搞定
quantity.append(quantity_list[i])
return code,quantity
def calc(code):
settlement = df[df['code']==code]['settlement'].values
percentage = df[df['code']==code]['changepercent'].values
trade = df[df['code']==code]['trade'].values
#print(percentage)
#settlement=df[df['code'==code]]['settlement'].values
#percentage=df[df['code'==code].index]['changepercent'].values
#返回四舍五入的结果
return settlement,percentage,trade
def today_win_lost(filename_path):
filename=os.path.join(filename_path,'ownstock.xls')
code,quantity=getCodeFromExcel(filename)
result=[]
percentage_list=[]
trade_list=[]
for i in range(len(code)):
settlement,percentage,trade=calc(code[i])
print("settlement", settlement)
print("percent", percentage)
print("trade", trade)
profit=round(settlement[0]*percentage[0]*quantity[i]*0.01,1)
result.append(profit)
percentage_list.append(percentage[0])
trade_list.append(trade[0])
return result,code,percentage_list,trade_list
def join_dataframe(filename,today):
current_profile=today+'当天贡献'
result,code,percentage_list,trade_list=today_win_lost()
s1=pd.DataFrame({current_profile:result})
#s2=pd.DataFrame({'当天涨幅':percentage_list})
#s3=pd.DataFrame({'当天价钱':trade_list})
#print(s)
df=pd.read_excel(filename)
#del df['交易市场']
#del df['股东帐户']
#del df['盈亏比(%)']
#del df['在途数量']
#del df['当天贡献']
#del df['']
#del df['']
df['证券代码']=code
#print(code)
df['市价']=trade_list
df['当天涨幅']=percentage_list
#可以这样直接替换某一列的值
#df=df.join(s2,how='right')
df=df.join(s1,how='right')
#df=df.join(s3,how='right')
return df
def main(today):
path=os.path.join(os.path.dirname(__file__),'data')
filename=os.path.join(path,'each_day_profile.xls')
org_filename=os.path.join(path,'2016-09-30_all_.xls')
#df_filename=os.path.join(path,'each_day_profile.xls')
#df=pd.read_excel(org_filename)
df=ts.get_today_all()
new_df=join_dataframe(filename,today)
save_name=os.path.join(path,"each_day_profile.xls")
#这样会不会把原来的覆盖掉?
new_df.to_excel(save_name)
if __name__ == "__main__":
today=datetime.datetime.now().strftime("%Y-%m-%d")
if not ts.is_holiday(today):
main(today)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。