Skip to content

Commit f8d7bd1

Browse files
style: format code with autopep8
Format code with autopep8 This commit fixes the style issues introduced in faf42a4 according to the output from Autopep8. Details: None
1 parent fd2d8fe commit f8d7bd1

File tree

1 file changed

+19
-10
lines changed

1 file changed

+19
-10
lines changed

Algorithmic Trading Simulation/algorithmic_trading_simulation.py

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,25 @@
1616
df.set_index('Date', inplace=True)
1717

1818
# Example trading strategy
19+
20+
1921
def simple_moving_average_strategy(data, short_window, long_window):
2022
signals = pd.DataFrame(index=data.index)
2123
signals['Signal'] = 0.0
22-
23-
signals['Short_MA'] = data['Close'].rolling(window=short_window, min_periods=1, center=False).mean()
24-
signals['Long_MA'] = data['Close'].rolling(window=long_window, min_periods=1, center=False).mean()
25-
26-
signals['Signal'][short_window:] = np.where(signals['Short_MA'][short_window:] > signals['Long_MA'][short_window:], 1.0, 0.0)
27-
24+
25+
signals['Short_MA'] = data['Close'].rolling(
26+
window=short_window, min_periods=1, center=False).mean()
27+
signals['Long_MA'] = data['Close'].rolling(
28+
window=long_window, min_periods=1, center=False).mean()
29+
30+
signals['Signal'][short_window:] = np.where(
31+
signals['Short_MA'][short_window:] > signals['Long_MA'][short_window:], 1.0, 0.0)
32+
2833
signals['Positions'] = signals['Signal'].diff()
29-
34+
3035
return signals
3136

37+
3238
# Define strategy parameters
3339
short_window = 10
3440
long_window = 50
@@ -45,8 +51,10 @@ def simple_moving_average_strategy(data, short_window, long_window):
4551
portfolio_value = []
4652
for index, row in signals.iterrows():
4753
if row['Positions'] == 1:
48-
max_position_size = (risk_per_trade * initial_portfolio_value) / (row['Close'] - row['Low'])
49-
position = min(max_position_size, initial_portfolio_value / row['Close'])
54+
max_position_size = (
55+
risk_per_trade * initial_portfolio_value) / (row['Close'] - row['Low'])
56+
position = min(max_position_size,
57+
initial_portfolio_value / row['Close'])
5058
initial_portfolio_value -= position * row['Close']
5159
elif row['Positions'] == -1:
5260
initial_portfolio_value += position * row['Close']
@@ -66,7 +74,8 @@ def simple_moving_average_strategy(data, short_window, long_window):
6674
plt.title('Price Data and Moving Averages')
6775

6876
plt.subplot(2, 1, 2)
69-
plt.plot(signals.index, signals['PortfolioValue'], label='Portfolio Value', linestyle='--', color='green')
77+
plt.plot(signals.index, signals['PortfolioValue'],
78+
label='Portfolio Value', linestyle='--', color='green')
7079
plt.legend()
7180
plt.title('Portfolio Value')
7281

0 commit comments

Comments
 (0)