pandas - Cannot initialize python function -
i have (re)wrote back-test function in python using pandas
def backtest(positions,price,initial_capital=10000): #creating protfolio portfolio =positions*price['price'] pos_diff=positions.diff() #creating holidings portfolio['holidings']=(positions*price['price'].sum(axis=1) portfolio['cash']=initial_capital-(pos_diff*price['price']).sum(axis=1).cumsum() #full account equity portfolio['total']=portfolio['cash']+ portfolio['holidings'] portfolio['return']=portfolio['total'].pct_change() return portfolio
where positions , price both dataframe of 1 column , 5 column respectively .
inorder checking error run function alone in python returning error
file "", line 8 portfolio['cash']=initial_capital-(pos_diff*price['price']).sum(axis=1).cumsum() syntaxerror: invalid syntax
missing trailing parenthesis on line before:
portfolio['holidings']=(positions*price['price'].sum(axis=1) ^ need ) here
should be:
portfolio['holidings']=(positions*price['price']).sum(axis=1)
whenever syntax error, @ line before if error , line in question fine , doesn't make sense
Comments
Post a Comment