Sep-26-2018, 07:26 AM
def backtest(inCapital): rCapital = inCapital qty1 = 0 hp = 0 cap=0 preAdjClose = 0 tempAdjClose = 0 columns = ['Date'] #, 'AdjClose', 'POS', 'SMA' ,'LMA'] df = pdd.DataFrame(columns=columns) for i in range(len(data)): if hp == 0: if data['short_moving_emavg'][i] > data['long_moving_emavg'][i]: hp = 1 tempAdjClose = preAdjClose preAdjClose = data['Adj Close'][i] pd = data['Adj Close'][i] - preAdjClose qty=100 pnl = qty * pd rCapital = rCapital + pnl print(data['Date'][i] +' | '+ str(data['Adj Close'][i]) +' | '+ str(tempAdjClose) +' | '+ str(hp) +' | '+ str(data['short_moving_emavg'][i]) +' | '+ str(data['long_moving_emavg'][i])+' | '+ str(pd)+' | '+ str(qty) +' | '+ str(pnl) +' | '+str(rCapital) ) continue
Output:1998-01-02 | 0.5143449999999999 | 0 | 1 | 0.4658776299999999 | 0.4653830649999999 | 0.0 | 100 | 0.0 | 100.0
I want to convert this output into dataframe. I tried appending elements but did not work