Cara membuat grafik candlestick menggunakan matplotlib dengan python


Grafik candlestick adalah jenis grafik keuangan yang menampilkan pergerakan harga sekuritas dari waktu ke waktu.

Contoh berikut menunjukkan cara membuat grafik candlestick menggunakan pustaka visualisasi Matplotlib dengan Python.

Contoh: Membuat Grafik Candlestick dengan Python

Katakanlah kita memiliki pandas DataFrame berikut yang menunjukkan harga pembukaan, penutupan, tertinggi dan terendah dari suatu saham tertentu selama periode 8 hari:

 import pandas as pd

#createDataFrame
prices = pd. DataFrame ({' open ': [25, 22, 21, 19, 23, 21, 25, 29],
                       ' close ': [24, 20, 17, 23, 22, 25, 29, 31],
                       ' high ': [28, 27, 29, 25, 24, 26, 31, 37],
                       ' low ': [22, 16, 14, 17, 19, 18, 22, 26]},
                       index=pd. date_range (" 2021-01-01 ", periods=8, freq=" d "))

#display DataFrame
print (prices)

            open close high low
2021-01-01 25 24 28 22
2021-01-02 22 20 27 16
2021-01-03 21 17 29 14
2021-01-04 19 23 25 17
2021-01-05 23 22 24 19
2021-01-06 21 25 26 18
2021-01-07 25 29 31 22
2021-01-08 29 31 37 26

Kita dapat menggunakan kode berikut untuk membuat grafik candlestick untuk memvisualisasikan pergerakan harga saham ini selama periode 8 hari ini:

 import matplotlib. pyplot as plt

#create figure
plt. figure ()

#define width of candlestick elements
width = .4
width2 = .05

#define up and down prices
up = prices[prices. close >=prices. open ]
down = prices[prices. close <prices. open ]

#define colors to use
col1 = ' green '
col2 = ' red '

#plot up prices
plt. bar (up. index , up. close -up. open , width, bottom=up. open , color=col1)
plt. bar (up. index ,up. high -up. close ,width2,bottom=up. close ,color=col1)
plt. bar (up. index , up. low -up. open , width2, bottom=up. open , color=col1)

#plot down prices
plt. bar (down. index , down. close -down. open , width, bottom=down. open , color=col2)
plt. bar (down. index , down. high -down. open , width2, bottom=down. open , color=col2)
plt. bar (down. index ,down. low -down. close ,width2,bottom=down. close ,color=col2)

#rotate x-axis tick labels
plt. xticks (rotation= 45 , ha=' right ')

#display candlestick chart
plt. show () 

Grafik kandil menggunakan matplotlib dengan Python

Setiap kandil mewakili perubahan harga sekuritas pada hari tertentu. Warna kandil memberi tahu kita apakah harga ditutup lebih tinggi (hijau) atau lebih rendah (merah) dibandingkan hari sebelumnya.

Jangan ragu untuk mengubah lebar kandil dan warna yang digunakan untuk membuat grafik tampak sesuai keinginan Anda.

Misalnya, kita dapat membuat lilin lebih tipis lagi dan menggunakan warna berbeda untuk mewakili hari “tinggi” dan “rendah”:

 import matplotlib. pyplot as plt

#create figure
plt. figure ()

#define width of candlestick elements
width = .2
width2 = .02

#define up and down prices
up = prices[prices. close >=prices. open ]
down = prices[prices. close <prices. open ]

#define colors to use
col1 = ' black '
col2 = ' steelblue '

#plot up prices
plt. bar (up. index , up. close -up. open , width, bottom=up. open , color=col1)
plt. bar (up. index ,up. high -up. close ,width2,bottom=up. close ,color=col1)
plt. bar (up. index , up. low -up. open , width2, bottom=up. open , color=col1)

#plot down prices
plt. bar (down. index , down. close -down. open , width, bottom=down. open , color=col2)
plt. bar (down. index , down. high -down. open , width2, bottom=down. open , color=col2)
plt. bar (down. index ,down. low -down. close ,width2,bottom=down. close ,color=col2)

#rotate x-axis tick labels
plt. xticks (rotation= 45 , ha=' right ')

#display candlestick chart
plt. show () 

Sumber daya tambahan

Tutorial berikut menjelaskan cara membuat grafik umum lainnya dengan Python:

Cara membuat beberapa plot Matplotlib pada satu gambar
Cara memplot histogram dari daftar data dengan Python
Cara Membuat Plot Kotak berdasarkan Grup dengan Python

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *