Abhisesh7 commited on
Commit
15e48a5
·
verified ·
1 Parent(s): d062950

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -6
app.py CHANGED
@@ -1,6 +1,6 @@
1
  import yfinance as yf
2
  import pandas as pd
3
- import numpy as np # Make sure to import numpy
4
  from sklearn.preprocessing import MinMaxScaler
5
  from tensorflow.keras.models import Sequential
6
  from tensorflow.keras.layers import LSTM, Dense
@@ -35,7 +35,7 @@ def train_model(stock_data, window_size=60):
35
  for i in range(window_size, len(stock_data)):
36
  X_train.append(stock_data[i-window_size:i, 0])
37
  y_train.append(stock_data[i, 0])
38
- X_train, y_train = np.array(X_train), np.array(y_train) # Ensure numpy is used here
39
  X_train = X_train.reshape((X_train.shape[0], X_train.shape[1], 1))
40
 
41
  model = create_lstm_model((X_train.shape[1], 1))
@@ -45,13 +45,12 @@ def train_model(stock_data, window_size=60):
45
  # Predict future stock prices
46
  def predict_future_prices(model, scaler, recent_data, days_to_predict=90):
47
  predictions = []
48
- input_data = recent_data[-60:].reshape(1, 60, 1) # Using the last 60 days to predict
49
  for _ in range(days_to_predict):
50
  pred_price = model.predict(input_data)[0, 0]
51
  predictions.append(pred_price)
52
  input_data = np.append(input_data[:, 1:, :], [[pred_price]], axis=1)
53
 
54
- # Inverse transform to get the original prices
55
  predicted_prices = scaler.inverse_transform(np.array(predictions).reshape(-1, 1))
56
  return predicted_prices
57
 
@@ -88,8 +87,8 @@ with app:
88
  gr.Markdown("# Stock Buy/Sell Prediction App")
89
 
90
  ticker = gr.Dropdown(tickers, label="Select Stock Ticker")
91
- start_date = gr.Date(label="Start Date")
92
- end_date = gr.Date(label="End Date")
93
 
94
  predict_button = gr.Button("Predict")
95
 
 
1
  import yfinance as yf
2
  import pandas as pd
3
+ import numpy as np
4
  from sklearn.preprocessing import MinMaxScaler
5
  from tensorflow.keras.models import Sequential
6
  from tensorflow.keras.layers import LSTM, Dense
 
35
  for i in range(window_size, len(stock_data)):
36
  X_train.append(stock_data[i-window_size:i, 0])
37
  y_train.append(stock_data[i, 0])
38
+ X_train, y_train = np.array(X_train), np.array(y_train)
39
  X_train = X_train.reshape((X_train.shape[0], X_train.shape[1], 1))
40
 
41
  model = create_lstm_model((X_train.shape[1], 1))
 
45
  # Predict future stock prices
46
  def predict_future_prices(model, scaler, recent_data, days_to_predict=90):
47
  predictions = []
48
+ input_data = recent_data[-60:].reshape(1, 60, 1)
49
  for _ in range(days_to_predict):
50
  pred_price = model.predict(input_data)[0, 0]
51
  predictions.append(pred_price)
52
  input_data = np.append(input_data[:, 1:, :], [[pred_price]], axis=1)
53
 
 
54
  predicted_prices = scaler.inverse_transform(np.array(predictions).reshape(-1, 1))
55
  return predicted_prices
56
 
 
87
  gr.Markdown("# Stock Buy/Sell Prediction App")
88
 
89
  ticker = gr.Dropdown(tickers, label="Select Stock Ticker")
90
+ start_date = gr.inputs.DatePicker(label="Start Date") # Use DatePicker for selecting dates
91
+ end_date = gr.inputs.DatePicker(label="End Date") # Use DatePicker for selecting dates
92
 
93
  predict_button = gr.Button("Predict")
94