フィルターと手仕舞いの最適化
午前中は組み合わせの検討やら軽く走らせた後の検証とかやって、「よし!」と走らせてからごはん。なにしろ納得のいくレベルまで掘り下げるとしばらく終わらんのでちょっと簡易版で。今回のポイントは
- 1986〜1996までの10年間を評価対象として、バブルの上げと崩壊後の下げを期間に盛り込む
- 次のパラメータを値を変えながら最適値を探る
- 東証一部全銘柄でやると何度か夜が明けてしまうので、テスト対象は超大型株20銘柄を厳選
- 仕掛には乱数を使う。猫を使ってもOK。トレードの発生率は毎回10%固定。
こんな感じ。で結果は。
移動平均の算入期間 | 移動平均の傾き | 損切りのレベル(%) | 総トレード数 | プロフィットファクター | 平均ポジション日数 | 平均損益 | 損益標準偏差 | 勝率 |
65 | 2.0 | 5 | 2,558 | 1.13 | 10.71 | 0.26% | 5.83% | 39.26% |
55 | 2.0 | 5 | 2,498 | 1.11 | 10.81 | 0.23% | 5.84% | 37.80% |
25 | 0.5 | 5 | 2,271 | 1.10 | 11.16 | 0.21% | 5.65% | 38.02% |
65 | 1.0 | 5 | 2,531 | 1.08 | 10.71 | 0.18% | 5.83% | 37.87% |
55 | 1.5 | 5 | 2,508 | 1.08 | 10.74 | 0.17% | 5.63% | 38.21% |
45 | 0.5 | 5 | 2,441 | 1.08 | 10.80 | 0.17% | 5.69% | 37.77% |
25 | 1.0 | 5 | 2,461 | 1.07 | 10.62 | 0.15% | 5.74% | 39.21% |
25 | 2.0 | 5 | 2,531 | 1.06 | 10.52 | 0.13% | 5.82% | 39.75% |
45 | 2.0 | 5 | 2,521 | 1.05 | 10.56 | 0.10% | 5.67% | 39.04% |
35 | 0.5 | 5 | 2,415 | 1.04 | 10.79 | 0.09% | 5.64% | 37.91% |
55 | 0.5 | 5 | 2,462 | 1.03 | 10.81 | 0.07% | 5.60% | 38.88% |
45 | 1.5 | 5 | 2,554 | 1.02 | 10.44 | 0.04% | 5.63% | 39.43% |
45 | 1.0 | 5 | 2,530 | 1.01 | 10.52 | 0.03% | 5.63% | 39.87% |
35 | 1.5 | 5 | 2,533 | 1.01 | 10.47 | 0.02% | 5.59% | 39.10% |
75 | 1.0 | 5 | 2,521 | 1.00 | 10.38 | 0.01% | 5.66% | 39.95% |
35 | 1.0 | 5 | 2,524 | 1.00 | 10.52 | 0.01% | 5.52% | 39.99% |
損益の標準偏差が6%未満で、プロフィットファクターが1.0以上を条件にフィルターした結果こんな感じ。これを順張りのシグナルと組み合わせれば結構いい感じになるんじゃないでしょうか。
これらの結果から分かるのは、プロフィットファクター1.13未満のシステムは猫に劣るということだ。がんばろ(´・ω・`)
んー、どうやらストップのレベル5%ってのはこのままでいいみたいだから、変動させるのを移動平均の算入期間と傾きだけにしてもっと精度を上げてやってみようかな。それとも東証や他の市場や期間のデータを食べさせた方がいいのか。うーん。
・・・とか5分ぐらい悩んだけど、もっと楽しい事やることにするw 誰もが最初に覚えるゴールデンクロス・デッドクロスだけど、これの長期線と短期線の算入期間を変動させて猫システムに勝てるかやってみる。
- 長期線は10日から50日まで2日刻みの20段階
- 短期線は5日から最大で長期線未満まで2日刻み。何段になるかは長期線の算入期間依存
結果はこんな感じ。
長期線算入期間 | 短期線算入期間 | 総トレード数 | プロフィットファクター | 平均ポジション日数 | 平均損益 | 損益標準偏差 | 勝率 |
50 | 45 | 1,196 | 1.40 | 11.51 | 0.75% | 5.88% | 42.39% |
50 | 43 | 1,128 | 1.38 | 11.36 | 0.71% | 5.89% | 41.40% |
50 | 17 | 961 | 1.35 | 11.96 | 0.67% | 5.87% | 42.87% |
50 | 13 | 1,012 | 1.33 | 12.11 | 0.64% | 5.87% | 43.48% |
50 | 21 | 953 | 1.31 | 11.90 | 0.59% | 5.82% | 41.55% |
48 | 19 | 972 | 1.30 | 12.02 | 0.59% | 5.87% | 41.87% |
36 | 11 | 1,289 | 1.30 | 12.04 | 0.58% | 5.81% | 42.13% |
48 | 15 | 1,006 | 1.29 | 12.06 | 0.58% | 5.90% | 42.15% |
34 | 19 | 1,315 | 1.29 | 11.78 | 0.56% | 5.71% | 41.75% |
42 | 17 | 1,096 | 1.29 | 11.96 | 0.56% | 5.87% | 41.79% |
46 | 19 | 1,015 | 1.28 | 11.92 | 0.55% | 5.74% | 40.59% |
猫に勝てて一安心だw 長期線はテストした範囲だと50日がいいらしい。短期線は43日前後と20日前後がいいっぽいです。まー、今もコレで通用するのかは試してみないとアレですが。対象銘柄も少ないしね。
50日は最適じゃない! 50までしか評価してないからこうなったんだ。もっと長い長期線を使ったほうががいいのかも? うし、長期線を50〜70、2刻みと短期線を15〜長期線期間までの2刻みの組み合わせをやってみよう。
長期線算入期間 | 短期線算入期間 | 総トレード数 | プロフィットファクター | 平均ポジション日数 | 平均損益 | 損益標準偏差 | 勝率 |
54 | 25 | 893 | 1.41 | 11.93 | 0.74% | 5.74% | 43.34% |
52 | 25 | 924 | 1.37 | 11.89 | 0.68% | 5.74% | 42.86% |
54 | 37 | 922 | 1.37 | 11.44 | 0.69% | 5.79% | 42.52% |
56 | 37 | 888 | 1.34 | 11.55 | 0.64% | 5.80% | 40.88% |
58 | 23 | 855 | 1.33 | 11.76 | 0.62% | 5.76% | 41.40% |
52 | 31 | 928 | 1.28 | 11.65 | 0.54% | 5.80% | 39.55% |
56 | 25 | 871 | 1.27 | 11.68 | 0.52% | 5.69% | 42.71% |
54 | 31 | 909 | 1.27 | 11.72 | 0.51% | 5.76% | 40.04% |
54 | 27 | 895 | 1.27 | 11.65 | 0.52% | 5.71% | 41.45% |
52 | 23 | 922 | 1.26 | 11.80 | 0.52% | 5.78% | 42.08% |
58 | 21 | 866 | 1.26 | 11.72 | 0.52% | 5.80% | 40.53% |
52 | 19 | 932 | 1.26 | 11.85 | 0.51% | 5.77% | 40.99% |
50 | 25 | 955 | 1.25 | 11.66 | 0.50% | 5.70% | 41.78% |
52 | 27 | 925 | 1.25 | 11.80 | 0.49% | 5.79% | 41.51% |
56 | 35 | 886 | 1.25 | 11.39 | 0.48% | 5.68% | 41.20% |
ふむ。長期線は50〜60の範囲、短期線は20〜40の範囲がいいっぽい。10x10のマトリックスを作って等高線グラフつくってみようかな。
P0が長期線の算入期間、P1が短期線の算入期間。プロットしたのはプロフィットファクター。短期26の並びで長期51〜55までの範囲が1.3以上のエリアだ。26−53ぐらいがいい感じなのかな。