问答交流

滚动回测报错- 我解决了 ^_^

由anthony_wan创建,最终由anthony_wan 被浏览 18 用户

问题

^_^

def merge_datasources(input_1):

    #原版是这个
    #df_list = df[0].read_df().set_index('date').ix[ds[1]:].reset_index for ds in input_1]

    #因为DataFrame 的datetime索引没办法用.ix切片

    for ds in input_1:
        df_ = ds[0].read_df()
        d = ds[1]
        print(d)
        #df_ = df_.set_index('date')
        df_list = df_.loc[df_['date'] >= f'{d}']
        df_list = df_list.reset_index()
        
    df = pd.concat([df_list])
    instrument_data = {
        'start_date': df['date'].min().strftime('%Y-%m-%d'),
        'end_date': df['date'].max().strftime('%Y-%m-%d'),
        'instruments': list(set(df['instrument'])),
    }
    return Outputs(data=DataSource.write_df(df), instrument_data=DataSource.write_pickle(instrument_data))

解答

已解决

标签

Python
评论
  • 👍👍👍
{link}