【Python】トレードの損益分岐点と勝率のグラフ描画

Python

トレード期待値は勝率と平均の利益、損失がわかれば簡単に式で表せます。この式で期待値が+になるようにトレードの戦略を立てるのが基本となります。

期待値=勝率*平均利益 – 負率*平均損失

期待値≧0となるラインをグラフにしています。RRレシオは1以上が好ましく最低でも0.5はなければトレードしない方がいいのでそのラインを破線で表示しています。

import numpy as np
import matplotlib.pyplot as plt

x_min=0.1
x_max=0.9

win_rate = np.linspace(x_min, x_max, 100)
RR= 1/win_rate-1

plt.figure()

#グラフタイトル
plt.title('RR vs win_rate')

#グラフの軸
plt.xlabel('win_rate')
plt.ylabel('RR')

#塗りつぶし
plt.fill_between(win_rate,PF,10,facecolor='g',alpha=0.1)

#範囲指定
plt.xlim(x_min, x_max)
plt.ylim(0,6)

#破線表示
plt.hlines(1, x_min,x_max, linestyles="dashed",color='gray') 

#破線表示
plt.hlines(0.5, x_min,x_max, linestyles="dashed",color='red') 

#文字表示
plt.text(0.4, 4, 'Preferable area',fontsize='20',color='black',fontweight='bold')

#grid設定
plt.grid()

#グラフ表示
plt.plot(win_rate, RR,color='black')
plt.show()

エクセルでグラフ書くより簡単に、塗り潰しもできるのでいいですね。Pythonの基本が一通りわかるオライリーのPython入門がおすすめです。少し高いですが一通り使い方を網羅しています。

FXは資金管理面が最も重要で資金管理のみに特化した本がおすすめです。

コメント

タイトルとURLをコピーしました