I'm trying to run futures through my algo but not quite sure how to do it I guess. I keep getting ... TypeError: unhashable type: 'list'
USER ALGORITHM:135, in handle_data
current_position = context.portfolio.positions[context.future].amount
how do I fix this?? Thanks everyone!!!!
below is some of the code.....................................................
# Rates
'rates': {
'us_2y': continuous_future('TU'),
'us_5y': continuous_future('FV'),
'us_10y': continuous_future('TY'),
'us_30y': continuous_future('US'),
'deliverable_interest_rate_swap_5y': continuous_future('FI'),
'deliverable_interest_rate_swap_10y': continuous_future('TN'),
'interest_rate_swap_5y': continuous_future('FS'),
'interest_rate_swap_10y': continuous_future('TS'),
'municipal_bonds': continuous_future('MB'),
'utra_tbond': continuous_future('UB'),
'tbills': continuous_future('TB'),
'fed30day': continuous_future('FF'),
'eur': continuous_future('ED'),
'eurodollar_nyse_liffe': continuous_future('EL'),
},
}
futures = []
context.future = futures
def handle_data(context, data):
prices_custom_high = data.history(context.future, 'high', 30, '1d').iloc[-2] #.resample('3T').last()
prices_custom_low = data.history(context.future, 'low', 30, '1d').iloc[-2] #.resample('3T').last()
prices_custom_close = data.history(context.future, 'close', 30, '1d').iloc[-2] #.resample('3T').last()
yesterdays_high = data.history(context.future,'high', 20, '1d').iloc[-4]
todays_high = data.current(context.future,'high')
yesterdays_low = data.history(context.future,'low',20,'1d').iloc[-4]
todays_low = data.current(context.future,'low')
current_price = data.current(context.future,'price')
current_position = context.portfolio.positions[security].amount
cash = context.portfolio.cash
for context.future in context.portfolio.positions:
price = data.current(security, 'price')
current_position = context.portfolio.positions[context.future].amount