酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

#今有部分股票交易数据表“trd_data”,字段名称为: # stkcd 、trddt、开盘价、最高价、最低价、收盘价、交易量、交易金额 # 读取股票代码601668,2017-01-01至2018-01-01的交易数据, # 计算macd指标,公式参考书本 # 返回计算结果,结果用一个数据框macd表示。 #注意:读取的交易数据表,需按照日期的升序进行排序 def return_values(): #1.读取数据 import pandas as pd data=pd.read_excel('trd_data.xlsx') d=data[data.iloc[:,0].values==601668] d=d[d.iloc[:,1].values>='2017-01-01'] d=d[d.iloc[:,1].values<='2018-01-01'] d.index=range(len(d)) #d即为待计算的数据框,索引重新排序 #2.指数平滑异同平均线macd计算 #3.合并数据

#导入需要的库 import pandas as pd from datetime import datetime #读取数据 data = pd.read_excel('trd_data.xlsx') #筛选需要的股票代码和日期的数据 filtered_data = data[(data['stkcd'] == 601668) & (data['trddt'] >= datetime(2017, 1, 1)) & (data['trddt'] <= datetime(2018, 1, 1))] #按照日期升序排序 filtered_data = filtered_data.sort_values('trddt') #计算macd指标 ema12 = filtered_data['收盘价'].ewm(span=12).mean() ema26 = filtered_data['收盘价'].ewm(span=26).mean() macd = ema12 - ema26 #将计算结果存入数据框 macd = filtered_data[['stkcd', 'trddt']].copy() macd['macd'] = macd #返回计算结果 return macd [2024-12-10 09:29:33 | AI写代码神器 | 409点数解答]

相关提问