-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathapp.py
81 lines (48 loc) · 2.39 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import streamlit as st
import analysis.analysis_one as analysis_one
import analysis.analysis_multiple as analysis_multiple
import forecasting.forecasting as forecasting
import forecasting.advance_forecasting as advance_forecasting
import pandas as pd
import guide
st.set_page_config(layout="wide")
ticker_list = pd.read_csv("scrapping_ticker/Ticker_list.csv")
st.sidebar.image("assets_/logo.png", caption="Don't Expect Profits Here.",use_column_width=True)
section = st.sidebar.radio(
"**Select Section:**",
options=["📊 In-Depth Analysis","🔮 Future Trends Forecast", "⚙️ Customize LSTM Parameters","📈 Stock Symbols"])
st.sidebar.divider()
ticker= ticker_list['Ticker'].values
ticker_map = {ticker: ticker + '.JK' for ticker in ticker}
display_names = list(ticker_map.keys())
selected_display_name = st.sidebar.selectbox('Select Stock Symbol', options=display_names , index=1)
stock_symbol = ticker_map[selected_display_name]
if section == "📊 In-Depth Analysis" :
tab1, tab2 = st.tabs(["Single Stock Analysis", "Multiple Stock Analysis"])
with tab1 :
analysis_one.Analysis_stock_data(stock_symbol=stock_symbol)
with tab2 :
selected_display_names = st.sidebar.multiselect('Select Stock Symbols', options=display_names , max_selections=4 , default=display_names[:2])
selected_symbols = [ticker_map[name] for name in selected_display_names]
analysis_multiple.multiply_alalysis(selected_symbols)
elif section == "🔮 Future Trends Forecast":
tab1 , tab2 = st.tabs(["Forecast" , "Documentation"])
with tab1 :
forecasting.Forecasting(stock_symbol = stock_symbol)
with tab2 :
guide.Forecast()
elif section == '⚙️ Customize LSTM Parameters':
advance_forecasting.Forecasting(stock=stock_symbol)
elif section == '📈 Stock Symbols' :
st.title(":green[Indonesia Stock]")
search = st.text_input("Search : ")
if st.button("Search"):
if len(ticker_list[ticker_list['Ticker'] == search.upper()]) > 0 :
st.table(ticker_list[ticker_list['Ticker'] == search.upper()])
elif len(ticker_list[ticker_list['Company Name'] == search]) > 0 :
st.table(ticker_list[ticker_list['Company Name'] == search])
else :
st.error("The stock you're looking for is not found in the list.")
st.table(ticker_list)
else :
st.title(":red[select section]")