Geek7 commited on
Commit
ee286a0
·
verified ·
1 Parent(s): b073561

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +0 -79
app.py CHANGED
@@ -49,82 +49,3 @@ if __name__ == "__main__":
49
 
50
 
51
 
52
-
53
- # Hard-coded API key for demonstration purposes
54
- API_KEY = "QR8F9B7T6R2SWTAT"
55
-
56
- def fetch_alpha_vantage_data(api_key, symbol):
57
-
58
- url = f'https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol={symbol}&interval=5min&apikey={api_key}'
59
- response = requests.get(url)
60
- alpha_vantage_data = response.json()
61
- return alpha_vantage_data
62
-
63
- def calculate_indicators(data):
64
- # Convert all columns to numeric
65
- data = data.apply(pd.to_numeric, errors='coerce')
66
-
67
- # Example: Simple condition for doji and inside
68
- data['Doji'] = abs(data['Close'] - data['Open']) <= 0.01 * (data['High'] - data['Low'])
69
- data['Inside'] = (data['High'] < data['High'].shift(1)) & (data['Low'] > data['Low'].shift(1))
70
- return data
71
-
72
- def display_signals(signal_type, signals):
73
- st.subheader(f"{signal_type} Signals:")
74
- st.write(signals)
75
-
76
- def main():
77
- st.title("Stock Trend Predictor")
78
-
79
- # Input for stock symbol
80
- symbol = st.text_input("Enter stock symbol (e.g., AAPL):", "AAPL")
81
-
82
- # Fetch Alpha Vantage data
83
- alpha_vantage_data = fetch_alpha_vantage_data(API_KEY, symbol)
84
-
85
- # Extract relevant data from Alpha Vantage response
86
- alpha_vantage_time_series = alpha_vantage_data.get('Time Series (5min)', {})
87
- df = pd.DataFrame(alpha_vantage_time_series).T
88
- df.index = pd.to_datetime(df.index)
89
- df = df.dropna(axis=0)
90
-
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
- # Calculate indicators
95
- df = calculate_indicators(df)
96
-
97
- # Display stock trading signals
98
- strategic_signals = StrategicSignals(symbol=symbol)
99
-
100
- # Display loading message during processing
101
- with st.spinner("Predicting signals using Strategic Indicators..."):
102
- # Display signals
103
- st.subheader(":orange[Strategic Indicators Trend Prediction]")
104
- display_signals("Bollinger Bands", strategic_signals.get_bollinger_bands_signals())
105
- display_signals("Breakout", strategic_signals.get_breakout_signals())
106
- display_signals("Crossover", strategic_signals.get_crossover_signals())
107
- display_signals("MACD", strategic_signals.get_macd_signals())
108
- display_signals("RSI", strategic_signals.get_rsi_signals())
109
-
110
- # Create predictor
111
- my_market_predictor = Pandas_Market_Predictor(df)
112
-
113
- # Predict Trend
114
- indicators = ["Doji", "Inside"]
115
-
116
- # Display loading message during prediction
117
- with st.spinner("Predicting trend using AI ...."):
118
- # Predict trend
119
- trend = my_market_predictor.Trend_Detection(indicators, 10)
120
-
121
- # Display results
122
- st.subheader(":orange[AI Trend Prediction]")
123
- st.write("Buy Trend :", trend['BUY'])
124
- st.write("Sell Trend :", trend['SELL'])
125
-
126
- # Delete the DataFrame to release memory
127
- del df
128
-
129
- if __name__ == "__main__":
130
- main()
 
49
 
50
 
51