import streamlit as st import yfinance as yf import pandas as pd import matplotlib.pyplot as plt # Fungsi untuk mengunduh data saham def get_stock_data(tickers, start, end): data = yf.download(tickers, start=start, end=end) if data.empty: st.error("Data saham tidak ditemukan. Periksa ticker atau tanggal.") return None elif 'Adj Close' in data.columns: return data['Adj Close'] elif 'Close' in data.columns: return data['Close'] else: st.error("Kolom 'Adj Close' atau 'Close' tidak ditemukan.") return None # Streamlit UI st.title("Analisis Portofolio Saham") tickers_list = st.text_input("Masukkan ticker saham (contoh: BBCA.JK, TLKM.JK)", "BBCA.JK, TLKM.JK").split(",") start_date = st.date_input("Pilih tanggal mulai", pd.to_datetime("2020-01-01")) end_date = st.date_input("Pilih tanggal akhir", pd.to_datetime("2020-12-31")) if st.button("Dapatkan Data"): data = get_stock_data(tickers_list, start_date, end_date) if data is not None: st.write("Data Saham:") st.write(data.tail()) # Plot harga saham st.line_chart(data)