Add the differences between the backtest and trade spread opening prices to the report
This commit is contained in:
parent
57b446924e
commit
19987f1114
@ -12,6 +12,9 @@ trade_data = trades(trade_date)
|
||||
strategy = trade_data['Strategy'].iloc[0]
|
||||
|
||||
traded_entry_times = set()
|
||||
trade_open_prices = {}
|
||||
backtest_open_prices = {}
|
||||
|
||||
for _, trade in trade_data.iterrows():
|
||||
entry_time = str(trade["Entry Time"])[-8:]
|
||||
print(f'Entry Time: {entry_time}')
|
||||
@ -19,10 +22,12 @@ for _, trade in trade_data.iterrows():
|
||||
|
||||
spreads = trade['Spreads']
|
||||
for spread in spreads:
|
||||
legs = spread['Legs']
|
||||
open_price = spread['Open']
|
||||
spread_type = 'CALL' if spread['Legs'][0]['Type'] == 'CALL' else 'PUT'
|
||||
trade_open_prices[(entry_time, spread_type)] = open_price
|
||||
|
||||
# Assuming the first leg is always short and the second is long.
|
||||
legs = spread['Legs']
|
||||
short_leg = legs[0]
|
||||
long_leg = legs[1]
|
||||
|
||||
@ -39,9 +44,11 @@ for _, backtest in backtest_data.iterrows():
|
||||
|
||||
spreads = backtest['Spreads']
|
||||
for spread in spreads:
|
||||
legs = spread['Legs']
|
||||
open_price = spread['Open']
|
||||
spread_type = 'CALL' if spread['Legs'][0]['Type'] == 'CALL' else 'PUT'
|
||||
backtest_open_prices[(entry_time, spread_type)] = open_price
|
||||
|
||||
legs = spread['Legs']
|
||||
short_leg = legs[0]
|
||||
long_leg = legs[1]
|
||||
|
||||
@ -50,3 +57,14 @@ for _, backtest in backtest_data.iterrows():
|
||||
print(f' Backtest Opening Price: {open_price}')
|
||||
|
||||
print(f'Backtest Profit: {backtest_profit(trade_date)}')
|
||||
|
||||
price_differences = []
|
||||
|
||||
for (entry_time, spread_type), backtest_open_price in backtest_open_prices.items():
|
||||
trade_open_price = trade_open_prices[(entry_time, spread_type)]
|
||||
price_difference = backtest_open_price - trade_open_price
|
||||
price_differences.append(price_difference)
|
||||
print(f'{entry_time} {spread_type} Spread Difference: {round(price_difference, 2)}')
|
||||
|
||||
average_price_difference = sum(price_differences) / len(price_differences)
|
||||
print(f'Average Spread Difference: {round(average_price_difference, 2)}')
|
Loading…
Reference in New Issue
Block a user