グラフ化 | ランダムウォークへの挑戦⑤2026/7/5

先日ボーナスが入りました。
最近は物欲がないので特にボーナスが出たからと言って買いたいものがないのですが、
パソコンの作業効率向上のためにモニターをもう一台買おうか悩んでいます。

前回は「零号機」(私の試作)の基本的な分析プログラムをPythonで作りました。

今回はPythonの分析ツールを1つ追加し、グラフ化まで進めたいと思います。

コード追記

WSLでubuntuに入った後、「ea-analysis」フォルダにグラフ作成用ライブラリmatplotlibを追加します。

cd /mnt/c/Users/***/ea-analysis
uv add matplotlib
nano analyze.py

前回作成したPythonコード「analyze.py」の最下行に以下を追記します。

import matplotlib.pyplot as plt

monthly_profit = trades.groupby("年月")["損益"].sum()

plt.figure(figsize=(14, 6))
plt.bar(monthly_profit.index, monthly_profit.values)
plt.title("Monthly Profit")
plt.xlabel("Month")
plt.ylabel("Profit")
plt.xticks(rotation=90)
plt.tight_layout()
plt.savefig("monthly_profit.png")

print("月別損益グラフを monthly_profit.png として保存しました。")

trades.groupby(“年月”)[“損益”].sum()

は、”年月”でグループ分けした後に[“損益”]の数字を合計するという意味です。

plt.xticks(rotation=90)

は横文字を90°回転するという意味です。

実行結果は以下のとおりです。

分析

外れ値(異常に大きい月)があります。目立つのは

  • 約+28,000
  • 約-18,000
  • 約-13,000
  • 約+18,000

このような月です。ここはぜひ原因を調べたいと思います。
原因が例えば以下のような場合、システム改善のヒントになると思います。

  • 相場がトレンドだった
  • レンジだった
  • ボラティリティが高かった
  • 通貨ペアが偏った

今回はここまで。
月単位の成績は把握できたので、次回は『どの時間帯で勝ち、どの時間帯で負けているのか』を分析し、EA改善につながるヒントを探していきたいと思います。

今、「知って得する、すごい法則77」という本を読んでいます。

1つの法則につき数ページなので、サクサク読めます。

知っている法則も多いですが、ある程度体系的にまとまっているので、意味が逆の法則を場面場面で利用し分ける目線など面白いです。

これを実務で利用するぞ!というより、読んでいて面白い本です。

次の記事

関連記事

コメント

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