期待値による口座残高の推移を折れ線グラフで表示してみました

以前、口座残高の推移のシミュレーションをしてみました。 今回は、ランダムな勝敗による口座残高の推移のシミュレーションではなく、期待値による口座残高の推移を折れ線グラフで表示してみました。

環境

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

パラメーター

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

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

仕様

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

口座残高の推移

ここに口座残高の推移を表示してみました。

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

ちゃんと表示されたかな。

Gist のソース

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

終わり

前回のランダムな勝敗による口座残高の推移のシミュレーションが先になってしまいましたが、なぜ、ランダムな勝敗でシミュレーションしたかったかというと、今回の期待値による推移だけを信じてトレードをしてしまうと、ドローダウンの想定が甘くなりそうだと思ったからです。

期待値が 0.2 でも、定率 0.02 の資金管理で 100 回もトレードをすれば 150 万円程度になります。 でも、ランダムな勝敗による推移では、 100 回のトレードを何回もシミュレーションしてみると、 80 万円程度になったりもします。 たぶん、感覚的にやってしまうと、 100 回もトレードをして、 80 万円程度になってしまったら、諦めて他の手法や売買ルールに意識が向かってしまうと思うんです。 だから、確かめてみようと思いました。

それから、今回、試行回数を変えながらいくつかのパターンで推移を見てみましたが、 100 回程度では複利の効果はほとんどないんだと感じました。 500 回もやってるとグラフが指数関数っぽくなってきます。 2,000 回もやると最後の方は垂直に近い形になりました。

3 May 2018 追記

次の記事を書きました。