标签:sam .so list 变量 otn first hang http output
生成时间序列:
dates = pandas.date_range(‘2013-01-01‘,periods = 6)
Pandas读取excel数据:
df=pd.read_excel("mystock.xls")
DF排序:
df=df.sort(‘data‘,ascending=False)
获取单个年月日再组合:
import datetime t = datetime.date(datetime.date.today().year, datetime.date.today().month,datetime.date.today().day) print(t) 输出:2016-09-16 start_day=start_day.strftime("%Y-%m-%d") end_day=end_day.strftime("%Y-%m-%d")
import datetime now = datetime.datetime.now() y = now.year m = now.month d = now.day
http://www.cnblogs.com/wumac/p/5876572.html
import os import pandas as pd stock_code_list = [] for root,dirs,files in os.walk(‘stock data‘): if files: for f in files: if ‘.csv‘ in f: stock_code_list.append(f.split(‘.csv‘)[0]) all_stock = pd.DataFrame() for code in stock_code_list: if code[2]!=‘3‘: continue print(code) stock_data = pd.read_csv(‘stock data/‘+code+‘.csv‘,parse_dates=[1]) stock_data = stock_data[stock_data[‘PE_TTM‘].notnull()]#删除PE_TTM为空的行 #PE_TTM = 总市值/净利润_TTM,这里通过这个公式计算净利润_TTM stock_data[‘净利润‘]=stock_data[‘market_value‘]/stock_data[‘PE_TTM‘] #选取需要的字段,去除其他不需要的字段 stock_data = stock_data[[‘code‘,‘date‘,‘market_value‘,‘净利润‘]] #将该股票的合并 all_stock = all_stock.append(stock_data,ignore_index=True) #基于all_stock表格,通过groupby语句,计算创业板股票每天的平均市盈率 #通过groupby语句计算每天所有股票的市值之各、净利润之和,以及当天交易的股票的数量 output = all_stock.groupby(‘date‘)[[‘market_value‘,‘净利润‘]].sum() output[‘股票数量‘] = all_stock.groupby(‘date‘).size() #平均市盈率=所有股票的市值之和/所有股票的净利润之和 output[‘创业板平均市盈率‘] = output[‘market_value‘]/output[‘净利润‘] #算好的数据输出 output.to_csv(‘创业板平均市盈率.csv‘,encoding=‘gbk‘)
import os import pandas as pd stock_data = pd.read_csv(‘stock data/sh600898.csv‘,parse_dates=[1]) #设定转换周期period_type 转换为周是‘W‘,月‘M‘,季度线‘Q‘,五分钟‘5min‘,12天‘12D‘ period_type = ‘W‘ #将[date]设定为 index inplace是原地修改,不要创建一个新对象 stock_data.set_index(‘date‘,inplace=True) #进行转换,周线的每个变量都等于那一周中最后一个交易日的变量值 period_stock_data = stock_data.resample(period_type,how=‘last‘) #周线的change等于那一周中每日change的连续相乘 period_stock_data[‘change‘] = stock_data[‘change‘].resample(period_type,how=lambda x:(x+1.0).prod()-1.0) #周线的open等于那一周中第一个交易日的open period_stock_data[‘open‘] = stock_data[‘open‘].resample(period_type,how=‘first‘) #周线的high等于那一周中的high的最大值 period_stock_data[‘high‘] = stock_data[‘high‘].resample(period_type,how=‘max‘) #周线的low等于那一周中的low的最大值 period_stock_data[‘low‘] = stock_data[‘low‘].resample(period_type,how=‘min‘) #周线的volume和money等于那一周中volume和money各自的和 period_stock_data[‘volume‘] = stock_data[‘volume‘].resample(period_type,how=‘sum‘) period_stock_data[‘money‘] = stock_data[‘money‘].resample(period_type,how=‘sum‘) #计算周线turnover period_stock_data[‘turnover‘] = period_stock_data[‘volume‘]/ (period_stock_data[‘traded_market_value‘]/period_stock_data[‘close‘]) #股票在有些周一天都没有交易,将这些周去除 period_stock_data = period_stock_data[period_stock_data[‘code‘].notnull()] period_stock_data.reset_index(inplace=True) #导出数据 period_stock_data.to_csv(‘week_stock_data.csv‘,index=False)
标签:sam .so list 变量 otn first hang http output
原文地址:http://www.cnblogs.com/ttrrpp/p/6696881.html