2011/03/23

FXウォークフォワード分析時代 - 「ウォークフォワード分析」計画立案前の整理



さて前回は、 無理やり 無事「旧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 件のコメント:

コメントを投稿