二つのパターン(ランダム、期待値)の口座残高の推移を折れ線グラフで表示してみました

前回までに次の 2 つの記事を書きました。

今回は、比較しやすくなるかと思って、一つのグラフに 2 つの推移を表示してみました。

環境

  • Chart.js Version 2.7.2
  • Microsoft EdgeHTML 17.17134
  • Firefox 59.0.3

パラメーター

入力するパラメーターは以前と同じで次の通りです。

  • 定率
  • 口座残高
  • 勝率
  • 平均利益
  • 平均損失
  • 機会(ひと月当たりのトレードの機会)
  • 試行回数

仕様

ランダム

勝率をもとにしたランダムな勝敗のパターンの仕様は以前と同じで次の通りです。

  • 勝率をもとにランダムに勝敗を決める
  • 資金管理は定率で、1トレード当たり(定率 × 口座残高)のリスクをとる
    • 勝った場合は、(定率 × 口座残高) × (平均利益 ÷ 平均損失)の利益
    • 負けた場合は、(定率 × 口座残高)の損失
  • 試行回数の数だけ繰り返す
  • 口座残高の推移を折れ線グラフに表示する
  • 最終的な口座残高を表示する
  • 試行結果の勝率を表示する
  • 試行結果の期待値を表示する
  • 機会をもとに平均月利を表示する
  • 機会をもとに平均年利を表示する

期待値

期待値をもとにしたパターンの仕様は以前と同じで次の通りです。

  • 勝率と平均利益と平均損失から期待値を計算する
  • 資金管理は定率で、1トレード当たり(定率 × 口座残高)のリスクをとる
    • 定率が 0.02 で、口座残高が 1,000,000 で、期待値が 0.2 の場合、 1 回目のトレードで 20,000 円のリスクをとり、期待値を考慮した損益は 4,000 円となる
  • 試行回数の数だけ繰り返す
  • 口座残高の推移を折れ線グラフに表示する
  • 最終的な口座残高を表示する
  • 期待値を表示する
  • 機会をもとに平均月利を表示する
  • 機会をもとに平均年利を表示する

折れ線グラフ

定率
口座残高
勝率
平均利益
平均損失
機会
試行回数
ランダム 期待値
口座残高 0 0
勝率 0 0
期待値 0 0
平均月利 0 0
平均年利 0 0

Gist のソース

ソースを Gist にアップしました。

終わり

どうでしょうか。

同じパラメーターでも何回もシミュレーションしていると期待値を上回ったり、下回ったりしています。 100 回程度の試行回数だとかなり大きな差があると感じました。 期待値は 150 万円くらいになるのに、ランダムは 90 万円くらいになってしまったりしていました。