I have the below code and I need to rewrite it so that it doesnt use mavg...Of course, just substituting mavg with rolling_mean doesn't work (it would have been too easy). I need to apparently substitute data[context.security] with data.current but then data.current doesnt have a rolling_mean().....Can anyone tell me how to rewrite the below so that it works? As a beginner, I find quantopian remarkably difficult to use
def initialize(context):
context.security = symbol('SPY')
def handle_data(context, data):
MA1 = data[context.security].mavg(50)
MA2 = data[context.security].mavg(200)
current_price = data[context.security].price
current_positions = context.portfolio.positions[symbol('SPY')].amount
cash = context.portfolio.cash
if (MA1 > MA2) and current_positions == 0:
number_of_shares = int(cash/current_price)
order(context.security, number_of_shares)
log.info("Buying shares")
elif (MA1 < MA2) and current_positions != 0:
order_target(context.security, 0)
log.info("Selling shares")
record(MA1 = MA1, MA2 = MA2, Price= current_price)