`import streamlit as st
from datetime import date
import yfinance as yf
from prophet import Prophet
from prophet.plot import plot_plotly
from plotly import graph_objs as go
START = "2014-01-01"
TODAY = date.today().strftime("%Y-%m-%d")
st.title("Stock Prediction App")
stock = (
"AAPL", "GOOG", "MSFT", "GME", "AMZN", "TSLA", "FB", "NFLX", "NVDA", "AMD",
"INTC", "IBM", "ORCL", "SAP", "CRM", "ADBE", "HPQ", "TWTR", "SNAP", "SQ",
"PYPL", "EBAY", "BABA", "JD", "V", "MA", "AXP", "DIS", "PEP", "KO", "MCD",
"WMT", "TGT", "COST", "PFE", "MRK", "JNJ", "GSK", "NKE", "ADDYY", "TM", "F",
"GM", "FCAU", "BA", "GE", "CAT", "DE", "MMM", "UTX", "LMT", "RTX", "NOC",
"GD", "BAC", "C", "WFC", "JPM", "GS", "MS", "AIG", "ALL", "PGR", "TRV",
"CVX", "XOM", "BP", "RDS.A", "TOT", "COP", "PSX", "SLB", "HAL", "EOG",
"DVN", "APA", "BKR", "PXD", "CTXS", "SYMC", "XRX", "GLW", "APH", "ROP",
"TYC", "HON", "DHR", "TXT", "PHG", "SI", "ERIC", "NOK", "VOD", "T", "VZ",
"TMUS", "S", "FTR", "LRCX", "KLAC", "ASML", "TXN", "QCOM", "ZM", "UBER",
"LYFT", "SPOT", "BIIB", "CELG", "REGN", "VRTX", "ALXN", "ILMN", "GILD",
"AMGN", "SBUX", "BBY", "LOW", "HD", "NEM", "NEE", "DUK", "SO", "PPL", "AEE",
"EXC", "PCG", "SRE", "DTE", "PEG", "ETR", "WEC", "ES", "XEL", "FE", "D",
"CNP", "CMS", "AEP", "AWK", "CERN", "CPRT", "DLTR", "EA", "EBIX", "ECL",
"EDU", "FAST", "FISV", "FLIR", "GPN", "IDXX", "IART", "ISRG", "IT", "JKHY",
"JBLU", "JBHT", "JCI", "KLAC", "LH", "LRCX", "MCHP", "MDLZ", "MELI", "MNST",
"MPWR", "MSFT", "MTCH", "MU", "MXIM", "NCLH", "NFLX", "NLOK", "NTRS", "NVR",
"ODFL", "ORLY", "PAYX", "PCAR", "PCTY", "PEP", "PTC", "PXD", "PYPL", "QCOM",
"QRVO", "REGN", "ROST", "SBAC", "SBUX", "SIVB", "SKYW", "SNPS", "SPLK",
"SRCL", "SSNC", "STX", "SWKS", "SYNH", "TCOM", "TSCO", "TSLA", "TTWO",
"TXN", "UAL", "ULTA", "VRSK", "VRSN", "VRTX", "WBA", "WDAY", "WDC", "WLTW",
"WM", "WYNN", "XEL", "XLNX", "XRAY", "ZION", "ZM", "ATVI", "ADP", "CSCO",
"CSX", "CTAS", "CTSH", "CTXS", "EXPD", "FAST", "FISV", "HAS", "HSIC", "INCY",
"INTU", "ISRG", "JBHT", "LRCX", "MAR", "MCHP", "MDLZ", "MELI", "MNST", "MRNA",
"MRVL", "MSFT", "MTCH", "MU", "MXIM", "NTAP", "NVDA", "ODFL", "OKTA", "ORLY",
"PANW", "PAYX", "PCAR", "PDD", "PEP", "PTON", "PYPL", "QCOM", "REGN", "ROST",
"SBUX", "SGEN", "SIRI", "SNPS", "SPLK", "SWKS", "TCOM", "TSLA", "TTWO",
"TXN", "UAL", "ULTA", "VRSK", "VRSN", "VRTX", "WBA", "WDAY", "XEL", "XLNX",
"ZM"
)
selected_stock = st.selectbox("Select dataset for prediction", stock)
n_years = st.slider("Years of Prediction", 1, 4)
period = n_years * 365
@st.cache_data
def load_data(ticker):
data = yf.download(ticker, START, TODAY)
data.reset_index(inplace=True)
return data
data_load_state = st.text("Load Data...")
data = load_data(selected_stock)
data_load_state.text("Loading Data... done!")
st.subheader('Raw Data')
st.write(data.tail())`
I am creating a basic website which predicts stocks movements based of previous data, however, when trying to retrieve the data from the Yahoo Finance API, it returns an empty value, what should I do? When I actually run the website, the select bar works fine but the table below is empty due to data value being empty.
New contributor
arnav suman is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.