2020年8月17日月曜日

mplfinanceのチャートにマーカーを追加する

mplfinanceのチャートにマーカーを追加するには、plotメソッドでaddplot引数を使用します。
addplot引数には配列でmake_addplotメソッドで作成した辞書データを渡します。
make_addplotメソッドに以下の引数を渡します。
・1番目の引数 : マーカーを表示するためのデータ。df["列名"]で渡すことができます。
・type : "scatter"を指定します。
・color : マーカーの色
・markersize : マーカーのサイズ
・marker : マーカーのパターン。使用できるパターンはhttps://matplotlib.org/3.2.2/api/markers_api.htmlを参照してください。

サンプルコード

下記サンプルをノートブックに貼り付けて、実行します。
from datetime import datetime
import pandas as pd
import mplfinance as mpf

fx_data = [
    [datetime(2020, 7, 8), 107.475, 107.711, 107.202, 107.253, None, None, None],
    [datetime(2020, 7, 9), 107.231, 107.398, 107.097, 107.201, 107.201, None, None],
    [datetime(2020, 7, 10), 107.169, 107.264, 106.639, 106.93, None, None, None],
    [datetime(2020, 7, 13), 106.861, 107.319, 106.787, 107.283, None, None, None],
    [datetime(2020, 7, 14), 107.227, 107.427, 107.119, 107.236, 107.236, None, None],
    [datetime(2020, 7, 15), 107.205, 107.309, 106.666, 106.939, None, None, None],
    [datetime(2020, 7, 16), 106.895, 107.401, 106.833, 107.272, None, None, None],
    [datetime(2020, 7, 17), 107.250, 107.360, 106.938, 106.986, None, None, None],
    [datetime(2020, 7, 20), 107.011, 107.537, 106.970, 107.279, None, None, None],
    [datetime(2020, 7, 21), 107.193, 107.367, 106.681, 106.803, None, None, None],
    [datetime(2020, 7, 22), 106.789, 107.288, 106.705, 107.153, None, None, None],
    [datetime(2020, 7, 23), 107.124, 107.231, 106.711, 106.865, None, 107.231, None],
    [datetime(2020, 7, 24), 106.826, 106.872, 105.681, 106.052, None, None, 105.681]
]

df = pd.DataFrame(fx_data, columns=['date', 'open', 'high', 'low', 'close', 'signal1', 'signal2', 'signal3'])
df = df.set_index("date")

series = [
    mpf.make_addplot(df["signal1"],type='scatter',markersize=200,marker='o',color='#D93D4A'),
    mpf.make_addplot(df["signal2"],type='scatter',markersize=200,marker='v',color='orange'),
    mpf.make_addplot(df["signal3"],type='scatter',markersize=200,marker='*',color='#049DBF')
]
mpf.plot(df,type='candle', datetime_format='%Y/%m/%d', addplot=series)

・実行結果

関連情報

・mplfinanceのインストール方法は以下の記事を参照してください。
JupyterLabにmplfinance、pandas、matplotlibをインストールして、ロウソク足チャートを表示する

・mplfinanceのgithubリポジトリ
https://github.com/matplotlib/mplfinance
Ubuntu 20.04にJupyter Labをインストールする(pipenv版)

Raspberry Pi(Raspbian Buster)にJupyter Labをインストールする

2 件のコメント: