Update app.py
Browse files
app.py
CHANGED
@@ -2,6 +2,7 @@ import streamlit as st
|
|
2 |
import requests
|
3 |
from Pandas_Market_Predictor import Pandas_Market_Predictor
|
4 |
import pandas as pd
|
|
|
5 |
|
6 |
# Hard-coded API key for demonstration purposes
|
7 |
API_KEY = "QR8F9B7T6R2SWTAT"
|
@@ -21,6 +22,11 @@ def calculate_indicators(data):
|
|
21 |
data['Inside'] = (data['high'] < data['high'].shift(1)) & (data['low'] > data['low'].shift(1))
|
22 |
return data
|
23 |
|
|
|
|
|
|
|
|
|
|
|
24 |
def main():
|
25 |
st.title("Stock Trend Predictor")
|
26 |
|
@@ -39,11 +45,14 @@ def main():
|
|
39 |
# Rename columns
|
40 |
df = df.rename(columns={'1. open': 'open', '2. high': 'high', '3. low': 'low', '4. close': 'Close', '5. volume': 'volume'})
|
41 |
|
42 |
-
#
|
43 |
-
|
|
|
|
|
|
|
44 |
|
45 |
# Create predictor
|
46 |
-
my_market_predictor = Pandas_Market_Predictor(
|
47 |
|
48 |
# Predict Trend
|
49 |
indicators = ["Doji", "Inside"]
|
|
|
2 |
import requests
|
3 |
from Pandas_Market_Predictor import Pandas_Market_Predictor
|
4 |
import pandas as pd
|
5 |
+
from sklearn.decomposition import PCA
|
6 |
|
7 |
# Hard-coded API key for demonstration purposes
|
8 |
API_KEY = "QR8F9B7T6R2SWTAT"
|
|
|
22 |
data['Inside'] = (data['high'] < data['high'].shift(1)) & (data['low'] > data['low'].shift(1))
|
23 |
return data
|
24 |
|
25 |
+
def apply_pca(data, n_components=5):
|
26 |
+
pca = PCA(n_components=n_components)
|
27 |
+
reduced_data = pca.fit_transform(data)
|
28 |
+
return pd.DataFrame(reduced_data, index=data.index)
|
29 |
+
|
30 |
def main():
|
31 |
st.title("Stock Trend Predictor")
|
32 |
|
|
|
45 |
# Rename columns
|
46 |
df = df.rename(columns={'1. open': 'open', '2. high': 'high', '3. low': 'low', '4. close': 'Close', '5. volume': 'volume'})
|
47 |
|
48 |
+
# Apply PCA for dimensionality reduction
|
49 |
+
df_reduced = apply_pca(df)
|
50 |
+
|
51 |
+
# Calculate indicators on reduced data
|
52 |
+
df_reduced = calculate_indicators(df_reduced)
|
53 |
|
54 |
# Create predictor
|
55 |
+
my_market_predictor = Pandas_Market_Predictor(df_reduced)
|
56 |
|
57 |
# Predict Trend
|
58 |
indicators = ["Doji", "Inside"]
|