Apakah Anda ingin mengambil data pasar saham menggunakan Python? Anda berada di tempat yang tepat. Pada artikel ini, Anda akan mempelajari cara mendapatkan data pasar saham menggunakan Python. Anda selanjutnya dapat menggunakan data untuk menganalisis, memvisualisasikan, dan mendapatkan wawasan darinya.
Anda akan menggunakan yfinance Pustaka Python untuk mendapatkan data harga pasar saham terkini dan historis dari Yahoo Finance.
Menginstal Perpustakaan yang Diperlukan
Keuangan Yahoo adalah salah satu platform yang banyak digunakan yang menyediakan data pasar saham. Anda dapat dengan mudah mengunduh kumpulan data dari situs web mereka, tetapi jika Anda ingin mengaksesnya langsung dari program Python, Anda dapat menggunakan yfinance perpustakaan. Untuk menginstal yfinance menggunakan pip, Anda perlu menjalankan perintah berikut pada prompt perintah:
pip Install yfinance
Pustaka Python yfinance bebas digunakan dan tidak memerlukan kunci API.
Kode yang digunakan dalam proyek ini tersedia di a repositori GitHub dan gratis untuk Anda gunakan di bawah lisensi MIT.
Dapatkan Data Harga Saham Saat Ini
Anda harus memiliki ticker saham yang ingin Anda ekstrak datanya. Dalam contoh berikut, kita akan menemukan harga pasar dan harga penutupan sebelumnya untuk GOOGL.
impor yfinance sebagai yf
ticker = yf. Jantung('GOOGL').info
harga_pasar = ticker['regularMarketHarga']
harga_tutup_sebelumnya = ticker['regularMarketPreviousTutup']
mencetak('Ticker: GOOGL')
mencetak('Harga pasar:', harga pasar)
mencetak('Harga Tutup Sebelumnya:', harga_tutup_sebelumnya)
Ini menghasilkan output berikut:
Contoh ini menggunakan regularMarketHarga Dan regularMarketPreviousTutup property untuk mendapatkan data yang dibutuhkan. Pustaka yfinance menyediakan banyak properti lain yang dapat Anda jelajahi. Ini termasuk zip, sektor, fullTimeEmployees, longBusinessSummary, kota, telepon, negara bagian, dan negara. Anda bisa mendapatkan daftar lengkap properti yang tersedia menggunakan kode ini:
impor yfinance sebagai yf
ticker = yf. Jantung('GOOGL').info
mencetak(ticker.keys())
Dapatkan Data Harga Saham Historis
Anda bisa mendapatkan semua data harga historis dengan memberikan tanggal mulai, tanggal akhir, dan ticker.
# Mengimpor paket yfinance
impor yfinance sebagai yf# Tetapkan tanggal mulai dan berakhir
tanggal_mulai = '2020-01-01'
tanggal_akhir = '2022-01-01'# Atur ticker
ticker = 'GOOGL'# Dapatkan datanya
data = yf.download (ticker, tanggal_mulai, tanggal_akhir)
# Cetak 5 baris terakhir
mencetak(data.ekor())
Ini menghasilkan output berikut:
Kode di atas akan mengambil data harga saham dari 01-01-2020 hingga 01-01-2022.
Jika Anda ingin menarik data beberapa ticker sekaligus, Anda dapat melakukannya dengan menyediakan ticker dalam bentuk string yang dipisahkan spasi.
impor yfinance sebagai yf
tanggal_mulai = '2020-01-01'
tanggal_akhir = '2022-01-01'
# Tambahkan beberapa ticker yang dipisahkan ruang di sini
ticker = 'TSLA MSFT GOOGL'
data = yf.download (ticker, tanggal_mulai, tanggal_akhir)
mencetak(data.ekor())
Mengubah Data untuk Analisis
Pada kumpulan data di atas, Tanggal adalah indeks dari kumpulan data dan bukan kolom. Untuk melakukan analisis data apa pun pada data ini, Anda perlu mengonversi indeks ini menjadi kolom. Di bawah ini adalah bagaimana Anda dapat melakukannya:
impor yfinance sebagai yf
tanggal_mulai = '2020-01-01'
tanggal_akhir = '2022-01-01'
ticker = 'GOOGL'
data = yf.download (ticker, tanggal_mulai, tanggal_akhir)
data["Tanggal"] = data.indeksdata = data[["Tanggal", "Membuka", "Tinggi",
"Rendah", "Menutup", "Adj Tutup", "Volume"]]
data.reset_index(menjatuhkan=BENAR, di tempat =BENAR)
mencetak(data.head())
Ini menghasilkan output berikut:
Data yang diubah ini sama dengan data yang akan Anda unduh dari Yahoo Finance.
Menyimpan Data yang Diterima dalam File CSV
Kamu bisa ekspor objek DataFrame ke file CSV menggunakan to_csv() metode. Karena data di atas sudah dalam bentuk DataFrame pandas, Anda dapat mengekspor data ke dalam file CSV menggunakan kode berikut:
impor yfinance sebagai yf
tanggal_mulai = '2020-01-01'
tanggal_akhir = '2022-01-01'
ticker = 'GOOGL'
data = yf.download (ticker, tanggal_mulai, tanggal_akhir)
mencetak(data.ekor())
# Ekspor data ke file CSV
data.to_csv("GOOGL.csv")
Pandas adalah pustaka Python analisis data yang banyak digunakan. Jika Anda tidak terlalu nyaman dengan perpustakaan ini, Anda harus memulainya operasi dasar menggunakan Panda.
Visualisasikan Data
Pustaka Python yfinance adalah salah satu pustaka paling nyaman untuk menyiapkan, mengambil data, dan melakukan tugas analisis data. Anda dapat menggunakan data ini untuk memvisualisasikan hasil dan menangkap wawasan menggunakan pustaka seperti Matplotlib, Seaborn, atau Bokeh.
Anda bahkan dapat menampilkan visualisasi ini langsung di halaman web menggunakan PyScript.