さて前回は、 「ウォークフォワード分析 」計画を立てたが、データベースの勉強が必要になったところまで話しました。今回は、1通貨ペア目のウォークフォワード分析の様子と、それに向けたデータベースの勉強の話をしたいと思います。
計画は立てたし、さっそく!!
ストラテジで出力するログの項目を必要最小限に削減して、
通貨ペア数2、スキャン数を9で一旦は、SQL (*)プログラム検証用のログを採取。
*データベースを操作する為の言語。
そして、今度は、最初の通貨ペアである「AUDUSD」を本来のスキャンを開始!
本来のスキャンをやってる裏で、SQL プログラム検証用のログを、公式無料データベース(SQL-Server )に取り込んで、見よう見まねでSQLを書いて、それっぽい基本的な集計結果が出る様になったところまでなんとか。うんうんいい感じ。
*SQL-Serverダウンロード:コレ と、コレ の両方。
最初のはVC++(他の言語もそうかも)に本体が入っていて、2つめは、管理ツール。
そうこうしている内に、17時間かけてForexTester2で「AUDUSD」のスキャン(*)が完了。
*100パターンのパラメータセットを10年分
そして、データベースに取り込んで1セグメント分だけ集計開始!
なかなか終わらん。。。夜になったし、このままにして寝るか。
そして翌朝。
まだ終わってない。。
SQL の本、2冊購入。
「現場で使えるSQL 第2版」 2,310円
「【改訂第3版】 SQLポケットリファレンス」 2,079円
合計 4,389円
久しぶりの累積書籍代金上昇。
そして試行錯誤の結果、処理速度が向上し、30セグメント分で20分。
さらに見直して、ついに5分に短縮!
*約10万レコードを全てSELECTでネストで集計していたのを、インデックスを付けた
中間テーブルを経由することで改善
やった~!!
書籍代4,389円出した甲斐があった!!
だから、結果が大切なんやって。。
そして、前回記事の通りにAUDUSDのウォークフォワード分析を実施。
【ウォークフォワード分析結果(AUDUSD)】
---------------------
金額の単位は全てUS$
*WFE:ウォークフォワード効率
RRレシオ:リスクリワード・レシオ(年率純益÷最大ドローダウン)
*WFE:ウォークフォワード効率
RRレシオ:リスクリワード・レシオ=年率純益÷最大ドローダウン)
WP:勝率
InNetProfitYear:最適化期間の1年換算純益
InNetProfit:最適化期間の純益
---------------------
純益マイナスですが?
そして、ウォークフォワード期間(アウトサンプル)だけを、10年分つなぎ合わせた資金残高曲線。
【資金残高曲線(ウォークフォワード期間)】
神はなぜ、こうも残酷なのか。
そして、裏で走り続けている次の通貨ペアの結果に期待しながら、「FXシステムトレード初心者奮闘記」のウォークフォワード分析は続くのでした。
0 件のコメント:
コメントを投稿