さて前回は、 無理やり 無事「旧SmoothMADIシステム 」が「多市場多期間最適化 」検証をクリアしたところまで話しました。今回は、この「旧SmoothMADIシステム 」を「ウォークフォワード分析」検証すべく、計画を立てる為の事前整理を書いてみたいと思います。
計画系ネタのブログ記事にオチは無い。
まずは、「アルゴリズムトレーディング入門」を元に、ウォークフォワード分析の目的整理から。
【ウォークフォワード分析の目的】
--------------------------
主旨は、パフォーマンスが本物かどうかを見極める事。
1.堅牢で、実際のトレードでも利益が出せるかを見極める
2.どの程度のリターンを達成できるのかを見極める
3.実際のトレードで使用するパラメータの決定
4.利益・リスク(最大ドローダウン等)の特性をより正確に把握する
5.最適化方式の有効性検証
--------------------------
ちなみに、実際のトレードでも、定期的な再最適化を行う事が前提。
市場は常に変わっているからというのが背景。
じゃあ、どうやって検証データを採取するか。
【ウォークフォワード分析のデータ採取方法】
-----------------------------
1.一定期間で最適化を行い、最適化でパラメータを求める。
2.最適化で求めたパラメータを用いて、最適化期間に隣接した期間(ウォークフォワード期間)で
評価を行う。
3.上記「1.」~「2.」を期間をずらしながら繰り返す。
→ それなりの数が必要。例では30ぐらい。
4.最適化期間での年率損益、ウォークフォワード期間での年率損益、
及び、両者の比率(ウォークフォワード効率)
-----------------------------
で、集めたデータで何を確認するのか。
【ウォークフォワード分析の検証方法】
-----------------------------
1.各ウォークフォワード期間での評価項目
損益、最大ドローダウン、年率リスクリワード比率、勝率、
ウォークフォワード効率。
2.上記「2.」をつなぎ合わせて、各項目の平均、最大、最小、標準偏差。
3.ウォークフォワード期間の損益合計を年率計算し、
最適化期間の年率損益との比率から、全体のウォークフォワード効率を求める。
→この項目の目安が50%~60%
4.各ウォークフォワード効率で、プラスになった比率。
例では、60%で堅牢と判断されていた。
5.ポートフォリオに含める通貨ペアで、利益を出した数
6.ウォークフォワード期間をつなぎ合わせた結果から、
PFや、ペイオフレシオ、最大ドローダウン、勝率etcを求める。
→つまりこれが本当の実力
-----------------------------
で、実施するにあたって何を決めなきゃいけないか。
【決めるべき事】
---------------------------
1.対象システム
→これは「旧SmoothMADIシステム 」
2.対象通貨ペア
3.最適化期間:通常1年~2年。ペースが遅い場合は、3年~6年
4.ウォークフォワード期間:最適化期間の25%~35%
→ガイドラインをベースとして経験的に決める。
5.スキャンのレンジと刻み幅
→「多市場多期間最適化」と同じ
6.最適化目的関数
---------------------------
さて、決めるべきことを決めなければならないが、
これが難しい。
今まで通り、14通貨ペア全てを実施し、10年分データを2年の最適化期間と6ヶ月のアウトサンプル期間で検証したとすると、すごく時間がかかるはず。
●最適化スキャンに必要なマシン時間を試算してみると
最初の2年分の最適化を6ヶ月づつずらしていかないといけないので、
1通貨ペア辺りの最適化回数=8年×(12ヶ月÷6ヶ月)=16回
14通貨ペア全てすると、
最適化延べ回数=16回×14通貨ペア=224回。
1通貨ペア2年分の最適化で3.5H程度の実績なので、最適化のデータ採取だけで、
最適化マシン利用時間=224回×3.5H
=約33日。
絶対無理。
他にもいろいろ実施する上での課題が。。
【計画上の課題】
-----------------------
1.対象の通貨ペアをどうやって決めるか
→無駄な事はしたくない。
2.最適化期間とウォークフォワード期間をどうやって決めるか
3.10年分しかないデータを元に、どうやって十分なウォークフォワード回数
を確保するか。書籍の例では30回だが、最適化期間2年でウォークフォワード期間
が6ヶ月だと、16回分しかデータがとれない。
4.最適化スキャンで使うマシン時間をどうやって効率化するか
5.試行錯誤をどうやって効率的にするか
Excelだと限界に来た気が。
データベースを使えば効率化できそうだけど、そもそもデータベースを勉強しなきゃ。
-----------------------
計画立案時点で、課題山積状態。
山積みになった 札束 課題に戸惑いながら、「FXシステムトレード初心者奮闘記」は、計画立てる上での課題検討に入っていくのでした。
#データベースを勉強する為の時間稼ぎとも言う。
0 件のコメント:
コメントを投稿