以前、口座残高の推移のシミュレーションをしてみました。 今回は、ランダムな勝敗による口座残高の推移のシミュレーションではなく、期待値による口座残高の推移を折れ線グラフで表示してみました。
環境
- 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 追記
次の記事を書きました。