Mplfinance adalah adalah salah satu library dari matplotlib, untuk mempermudah visualisasi data finansial dengan Python. Kita bisa dengan mudah membuat berbagai macam grafik yang diperlukan untuk analisa data finansial atau investasi, seperti candlestick, moving average, renko chart, volume, dan sebagainya, tanpa perlu banyak melakukan coding.
Untuk menjalankan contoh-contoh dibawah, kita membutuhkan beberapa library Python pendukung yaitu yFinance dan mplfinance.
Grafik Sederhana
Untuk data finansial yang akan kita plot grafiknya, menggunakan data dari library yFinance. Data input ini bisa menggunakan apa saja, dengan asalkan dengan format open high low close, tapi untuk mempermudah pengambilan data, dipakai yFinance, yang akan mengambil data harga saham BBCA, dari Yahoo Finance.
data = yf.download("BBCA.JK",start="2021-08-01", end="2021-09-1")
Format keluaran data yFinance ini, akan seperti berikut :
Open High Low Close Adj Close Volume
Date
2021-08-02 30300.0 30325.0 29525.0 29800.0 29800.0 23996300
2021-08-03 30125.0 30900.0 29925.0 30725.0 30725.0 22014300
2021-08-04 30725.0 30750.0 30300.0 30600.0 30600.0 8222400
2021-08-05 30850.0 31550.0 30700.0 31500.0 31500.0 18753600
2021-08-06 31800.0 31800.0 30675.0 30800.0 30800.0 13457000
2021-08-09 30675.0 31000.0 30525.0 31000.0 31000.0 10571700
2021-08-10 31250.0 31500.0 30575.0 31500.0 31500.0 12089200
2021-08-12 30600.0 31600.0 30600.0 31500.0 31500.0 23665100
2021-08-13 31750.0 32175.0 31625.0 32050.0 32050.0 17385800
2021-08-16 32100.0 32100.0 31525.0 32100.0 32100.0 13856400
2021-08-18 32600.0 33800.0 32300.0 33000.0 33000.0 37270900
2021-08-19 33000.0 33000.0 32650.0 33000.0 33000.0 20185200
2021-08-20 33000.0 33000.0 32550.0 33000.0 33000.0 24032700
2021-08-23 32575.0 32950.0 32575.0 32950.0 32950.0 13650600
2021-08-24 32850.0 33000.0 32500.0 33000.0 33000.0 11912300
2021-08-25 33000.0 33025.0 32925.0 33000.0 33000.0 16150300
2021-08-26 32800.0 32900.0 32350.0 32800.0 32800.0 14867400
2021-08-27 32450.0 32650.0 32450.0 32550.0 32550.0 14314500
2021-08-30 32650.0 32900.0 32600.0 32825.0 32825.0 14912900
2021-08-31 32600.0 32850.0 32575.0 32750.0 32750.0 23074700
Selanjutnya kita akan coba ploting data :
import yfinance as yf
import mplfinance as mp
data = yf.download("BBCA.JK",start="2021-08-01", end="2021-09-1")
mp.plot(data)
Secara default, tipe grafik yang dihasilkan adalah OHLC. Jenis lain dapat ditentukan dengan argument type
, beberapa yang tersedia, type='candle'
, type='line'
, type='renko'
, atau type='pnf'
mp.plot(data,type='candle')
Indikator Moving Average
Untuk visualisasi lebih lanjut, mplfinance juga dapat menampilkan grafik Moving Average (MA), dengan keyword mav
mp.plot(data,type='candle',mav=3)
Kita juga bisa menampilkan beberapa MA sekaligus, dengan menggunakan list pada argument mav
mp.plot(data,type='candle',mav=(3,4,5))
Indikator Volume
Kita juga bisa menampilkan volume transaksi, dengan menggunakan keyword volume
mp.plot(data,type='candle',volume=True)
Grafik dengan indikator lengkap
Untuk memperjelas, kita akan coba visualisasikan data saham BBCA selama satu tahun lengkap dengan indikator volume dan MA 5, 20, 50
import yfinance as yf
import mplfinance as mp
data = yf.download("BBCA.JK",start="2020-08-01", end="2021-09-1")
mp.plot(data,type='candle',mav=(5,10,20),volume=True)
Penutup
Mplfinance sangat mempermudah untuk membuat visualisasi data-data finansial, dalam hal ini adalah data saham.
Sebenarnya masih banyak fitur mplfinance yang belum dibahas, untuk mempelajari lebih lengkap, dapat di pelajari di halaman Github mplfinance.
- mplfinance : https://github.com/matplotlib/mplfinance
- yFinance : https://pypi.org/project/yfinance/
Untuk kode dalam halaman ini bisa di lihat di github :
Leave a Reply Cancel reply