FC2ブログ

最適化(オプティマイズ)結果の有効性を確認するTips

EAの性能を最大まで引き出す為の最適化ですが、その結果が果たして未来の相場で有効なのか?

すごく不安になる事はありませんか?

そのような時に有効な検証方法をご紹介します。

私自身は「バックフォワードテスト」と呼んでいるのですが、ストラテジーテスターで最適化とフォワードテストの両方を行う事で、最適化の有効性を確認する事が出来ます。

実際のやり方ですが、例えば[2017/10/01]~[2017/10/31]の期間で最適化を行います。

その後、その最適化によって導き出されたパラメータセットで[2017/11/01]~[2017/11/30]のバックテストを行うのです。

そして、そのバックテスト結果を検証する事で、最適化の有効性が実証できた事になります。

もし、バックテスト結果が芳しくない場合には、最適化の期間を見直すか、EAのロジックの再検証が必要になるかも知れません。

上記の一連の作業によって、デモ口座もしくはライブ口座でのフォワードテストにより近い条件でのEAの性能評価にもなりますね。

スポンサーサイト

最適化(オプティマイズ)に時間が掛かるEAを効率良く最適化するTips

最適化を行う時、最適化時のデータ・モデルを[全ティック]にしなければならない場合には、EAによっては膨大な時間が掛かってしまう場合があります。

そんな時になるべく短時間でパラメータを最適化する方法を紹介します。

それは「大数の法則」を利用した方法です。

この方法では、あらかじめテスト期間を設定しておくのでは無く、取引回数から期間を計算します。

取引回数が多ければ(概ね100回以上)、「大数の法則」から信頼度が高いテスト結果と考えます。

例えば、1ヶ月間で500回程度の取引を行うようなEAの場合、1週間では約100回以上の取引を行う計算になります。

ですので、このEAでは1週間の期間だけで最適化を行います。


只、この方法には欠点もあり、テストする期間によって結果が大きく異る場合がある事です。

そのような場合には、取引回数を200-300回程度に拡大した期間で最適化を行います。


オフラインチャートにセットしたインジケータを別チャートから参照する方法

MT4で3分足や2時間足といった、標準機能では表示できない足のチャートを表示したい場合にはオフラインチャートを使う事が多いです。

このオフラインチャートにセットしたインジケータの内容を別のチャートから参照したい場合には、下記のように記述します。

iMA(NULL, PERIOD_M3, 10, 0, MODE_SMA, PRICE_CLOSE, 0);

上記では、iMA関数の第2パラメータで参照したいチャートの時間足を指定しています。(上記の例では3分足)

オフラインチャートの場合、この第2パラメータで指定出来る値は下記の通りとなっています。

PERIOD_M2
PERIOD_M3
PERIOD_M4
PERIOD_M6
PERIOD_M10
PERIOD_M12
PERIOD_M20
PERIOD_H2
PERIOD_H3
PERIOD_H6
PERIOD_H8
PERIOD_H12


上記以外の時間足を指定したい場合には、直接数値を指定する事で実現出来ます。(下記の例では18分足)

iMA(NULL, 18, 10, 0, MODE_SMA, PRICE_CLOSE, 0);

アクセスカウンター
プロフィール

大和

Author:大和
フリーランスのプログラマーです。

EA作成代行承ります
最新記事
カテゴリ
広告
最新コメント
最新トラックバック
月別アーカイブ
リンク
メールフォーム

名前:
メール:
件名:
本文:

ランキング参加中
応援よろしくお願いします。
検索フォーム
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード