Geek7 commited on
Commit
3c1e863
·
verified ·
1 Parent(s): 8a58ea4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -5
app.py CHANGED
@@ -43,13 +43,20 @@ def main():
43
  if __name__ == "__main__":
44
  main()
45
 
 
46
  # Hard-coded API key for demonstration purposes
47
  API_KEY = "QR8F9B7T6R2SWTAT"
48
 
49
- def fetch_alpha_vantage_data(api_key, symbol):
50
  url = f'https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol={symbol}&interval=5min&apikey={api_key}'
51
  response = requests.get(url)
52
  alpha_vantage_data = response.json()
 
 
 
 
 
 
53
  return alpha_vantage_data
54
 
55
  def calculate_indicators(data):
@@ -66,13 +73,14 @@ def display_signals(signal_type, signals):
66
  st.write(signals)
67
 
68
  def main():
69
- st.title("Strategical Trend Predictor")
70
 
71
  # Input for stock symbol
72
  symbol = st.text_input("Enter stock symbol (e.g., AAPL):", "AAPL")
73
 
74
  # Fetch Alpha Vantage data
75
- alpha_vantage_data = fetch_alpha_vantage_data(API_KEY, symbol)
 
76
 
77
  # Extract relevant data from Alpha Vantage response
78
  alpha_vantage_time_series = alpha_vantage_data.get('Time Series (5min)', {})
@@ -83,18 +91,33 @@ def main():
83
  # Rename columns
84
  df = df.rename(columns={'1. open': 'Open', '2. high': 'High', '3. low': 'Low', '4. close': 'Close', '5. volume': 'Volume'})
85
 
 
 
 
 
 
86
  # Calculate indicators
87
  df = calculate_indicators(df)
88
 
89
  # Display stock trading signals
90
  strategic_signals = StrategicSignals(symbol=symbol)
91
 
 
 
 
 
 
92
  display_signals("Bollinger Bands", strategic_signals.get_bollinger_bands_signals())
93
  display_signals("Breakout", strategic_signals.get_breakout_signals())
94
  display_signals("Crossover", strategic_signals.get_crossover_signals())
95
  display_signals("MACD", strategic_signals.get_macd_signals())
96
  display_signals("RSI", strategic_signals.get_rsi_signals())
97
 
 
 
 
 
 
98
  # Create predictor
99
  my_market_predictor = Pandas_Market_Predictor(df)
100
 
@@ -102,13 +125,16 @@ def main():
102
  indicators = ["Doji", "Inside"]
103
  trend = my_market_predictor.Trend_Detection(indicators, 10)
104
 
105
- st.title("AI Stock Trend Predictor")
106
-
107
  # Display trend predictions
108
  st.subheader("Predicted Trend:")
109
  st.write("Buy Trend :", trend['BUY'])
110
  st.write("Sell Trend :", trend['SELL'])
111
 
 
 
 
 
 
112
  # Delete the DataFrame to release memory
113
  del df
114
 
 
43
  if __name__ == "__main__":
44
  main()
45
 
46
+
47
  # Hard-coded API key for demonstration purposes
48
  API_KEY = "QR8F9B7T6R2SWTAT"
49
 
50
+ def fetch_alpha_vantage_data(api_key, symbol, progress_bar):
51
  url = f'https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol={symbol}&interval=5min&apikey={api_key}'
52
  response = requests.get(url)
53
  alpha_vantage_data = response.json()
54
+
55
+ # Simulate progress with a fake sleep
56
+ for percent_complete in range(0, 101, 10):
57
+ progress_bar.progress(percent_complete)
58
+ st.experimental_rerun()
59
+
60
  return alpha_vantage_data
61
 
62
  def calculate_indicators(data):
 
73
  st.write(signals)
74
 
75
  def main():
76
+ st.title("AI Stock Trend Predictor")
77
 
78
  # Input for stock symbol
79
  symbol = st.text_input("Enter stock symbol (e.g., AAPL):", "AAPL")
80
 
81
  # Fetch Alpha Vantage data
82
+ progress_bar_fetch_data = st.progress(0)
83
+ alpha_vantage_data = fetch_alpha_vantage_data(API_KEY, symbol, progress_bar_fetch_data)
84
 
85
  # Extract relevant data from Alpha Vantage response
86
  alpha_vantage_time_series = alpha_vantage_data.get('Time Series (5min)', {})
 
91
  # Rename columns
92
  df = df.rename(columns={'1. open': 'Open', '2. high': 'High', '3. low': 'Low', '4. close': 'Close', '5. volume': 'Volume'})
93
 
94
+ # Simulate progress with a fake sleep
95
+ for percent_complete in range(0, 101, 10):
96
+ progress_bar_process_data = st.progress(percent_complete)
97
+ st.experimental_rerun()
98
+
99
  # Calculate indicators
100
  df = calculate_indicators(df)
101
 
102
  # Display stock trading signals
103
  strategic_signals = StrategicSignals(symbol=symbol)
104
 
105
+ # Simulate progress with a fake sleep
106
+ for percent_complete in range(0, 101, 10):
107
+ progress_bar_display_signals = st.progress(percent_complete)
108
+ st.experimental_rerun()
109
+
110
  display_signals("Bollinger Bands", strategic_signals.get_bollinger_bands_signals())
111
  display_signals("Breakout", strategic_signals.get_breakout_signals())
112
  display_signals("Crossover", strategic_signals.get_crossover_signals())
113
  display_signals("MACD", strategic_signals.get_macd_signals())
114
  display_signals("RSI", strategic_signals.get_rsi_signals())
115
 
116
+ # Simulate progress with a fake sleep
117
+ for percent_complete in range(0, 101, 10):
118
+ progress_bar_predict_trend = st.progress(percent_complete)
119
+ st.experimental_rerun()
120
+
121
  # Create predictor
122
  my_market_predictor = Pandas_Market_Predictor(df)
123
 
 
125
  indicators = ["Doji", "Inside"]
126
  trend = my_market_predictor.Trend_Detection(indicators, 10)
127
 
 
 
128
  # Display trend predictions
129
  st.subheader("Predicted Trend:")
130
  st.write("Buy Trend :", trend['BUY'])
131
  st.write("Sell Trend :", trend['SELL'])
132
 
133
+ # Simulate progress with a fake sleep
134
+ for percent_complete in range(0, 101, 10):
135
+ progress_bar_complete = st.progress(percent_complete)
136
+ st.experimental_rerun()
137
+
138
  # Delete the DataFrame to release memory
139
  del df
140