デューカスコピー・ジャパン徹底検証第4回目、今回はデューカスコピージャパンの取引ツール「JForex」にて、ストラテジーのバックテストを行う方法を解説します。
「JForex」には、「ヒストリカル・テスター」と呼ばれるバックテスト機能が備わっており、過去にデューカスコピーが配信したティックデータを使用してストラテジーの成績を検証することができます。
ヒストリカル・テスターの表示方法
ヒストリカルテスターを表示させるには、JForexのメニューバーの「ツール」から「ヒストリカル・テスター」をクリックします。
すると、各種タブパネル上に「ヒストリカル・テスター」タブが表示されます。
ヒストリカルテスターを用いてバックテストをしてみる
今回、Ducuscopy wikiに掲載されている「SMA Simple」ストラテジーを用いて、ヒストリカルテスターでバックテストを行う手順を紹介したいと思います。
「SMA Simple」のページの最下部にあるリンクより「SMASimpleStrategy.java」をストラテジーフォルダにダウンロードしておきます。
ワークスペースにストラテジーを追加
ダウンロードした「SMASimpleStrategy」をワークスペースに追加します。
「Workspace」の「ストラテジー」を右クリックして表示されるメニューから「ストラテジーを開く」をクリックします。
ファイルを開くダイアログが表示されるので、「SMASimpleStrategy.java」を選択し、「開く」をクリックします。
「SMASimpleStrategy」をコンパイルする
「Workspace」の「ストラテジー」に「SMASimpleStrategy」が表示され、右側のビューに「SMASimpleStrategy」のソースファイルが開かれたら、赤枠で囲んだ箇所にある「コンパイルボタン」を押してストラテジーをコンパイルします。
各種タブパネル上の「メッセージ」タブに「Compilation successful」と表示されたらコンパイル成功です。
ヒストリカル・テスターの設定
ヒストリカル・テスターでバックテストに必要な設定を行う
1.ストラテジーを選択
コンパイルが成功すると、リストにストラテジー名が表示されるようになります。
「ストラテジーを選択」をクリックしてリストの中から「SMASimpleStrategy」を選択します。
2.ビジュアルモード
ビジュアルモードにチェックを入れると、バックテスト実行中にチャート上で売買の様子を確認することができます。
売買が想定したとおりのポイントで行われているかどうかを確認したい場合等に使用します。
今回はチェックなしとします。
3.口座設定
口座設定ボタンを押すと、テスター・アカウントダイアログが表示されます。
「テスター・アカウント」ダイアログでは、初回入金額、口座の通貨単位、最大レバレッジ、MC(マージンカットレベル)、MC Equity(マージンカット残高)を指定できます。
MCはレバレッジに対する割合(%)で指定します。MC Equityは強制ロスカットとなる評価残高を設定します。
日本で取引する場合だと、レバレッジに25、MCに100を設定しておけばいいと思います。
手数料ボタンを押せば、手数料の設定ダイアログが、オーバーナイトボタンを押せば、スワップ金利の設定を行うダイアログ表示されます。
設定が完了したら「OK」ボタンを押します。
4.銘柄
バックテストを行う通貨ペア名を選択します。
今回はEUR/USDを対象にバックテストを行うので、EUR/USDのみチェックします。
5.バックテスト期間
バックテストを行う期間をリストから選択します。
自分で任意のテスト期間を設定したい場合は、「期間をカスタマイズ」をクリックして表示される「範囲を設定」ダイアログで設定します。
開始日と終了日を入力し、OKボタンを押せば任意のテスト期間を設定できます。
今回は、とりあえずバックテストの流れを確認するだけなので「先週」を選択しました。
6.時間枠
どの時間枠のデータを使ってテストをするのか設定します。
ティック、1分、1時間、1日の中から選択できます。
ティックを選べば最も正確なバックテストができますが、その分処理に時間がかかります。
ティック以外を選択する場合はストラテジーで使用するタイムフレームより下の時間枠を選択するようにすればいいでしょう。
時間枠にティックを選択した場合は、一番右のプルダウンメニューからティックの処理方法を選択できます。
全てのティック以外はティックデータをフィルタリングする方法なのですが、詳細は私もよくわかってないので説明は省きます。
時間枠にティック以外を選択した場合は、真ん中のプルダウンメニューで「ビッド」か「アスク」を選択できるようになり、一番右のプルダウンメニューからティックの生成方法を選択します。
ティックの生成方法には、4本値のティック、三次スプライン、始値ティック、終値ティックの4種類があります。
4本値のティック:使用するのローソク足毎に、始値、高値、安値、終値の4つのティックデータを生成
三次スプライン:OHLCをベースに、三次スプラインメソッドを使用したティックデータを生成。ローソク足を使用したテスト方法で最も正確なテスト方法となります。
始値ティック:使用するタイムフレームのローソク足毎に始値のみのティックを生成。
終値ティック:使用するタイムフレームのローソク足毎に終値のみのティックを生成。
始値のみや終値のみで売買判断するようなストラテジーの場合は、始値ティックや終値ティックを選べば、バックテストに要する時間を短縮できます。
通常は三次スプラインを選択すればよいと思います。
7.テスター設定
テスターに関する設定を行います。
ビジュアルモードを使用する際の、純資産、残高、損益の表示非表示設定や、どの時間足でチャートを表示するのかを指定できます。
また、メッセージやレポートの保存設定、レポートの表示非表示等を設定できます。
今回はビジュアルモードは使用しませんので、すべてデフォルト設定です。
8.テストスピード
2.のビジュアルモードにチェックを入れている場合に設定が可能になります。
右側のスライダーでテストスピードを調整することができます。
バックテストの実行
すべての設定が終わったらヒストリカル・テスターの右側にある「再生」ボタンをクリックします。
すると、ヒストリカル・テスターに関する免責事項ダイアログが表示されます。
「次回から表示しない」にチェックを入れないと毎回テストを行う際に表示されてしまうので「次回から表示しない」チェックボックスにチェックを入れて「同意する」ボタンをクリックします。
次に、テスト対象ストラテジーの外部入力パラメーターを設定するためのダイアログが表示されます。
今回はストラテジーのデフォルト設定のままとします。
設定が完了したら「起動」ボタンをクリックします。
すると、バックテストが開始され、ヒストリカル・テスター上でテストの進行状況を確認できます。
7.テスター設定にて「レポートを表示する」にチェックを入れていると、バックテスト終了後に下の画像のようにウェブブラウザ上でレポートが表示され結果を確認することができます。
ただ、このレポートだけでは、どのような資産曲線を描いているのか全くわからないため、損益曲線等をグラフ化するにはレポート上の売買結果をマイクロソフトExcel等にコピーして自分でグラフを作る必要があります。
この辺はほんと不便すぎますね。
とりあえず、今回の結果をマイクロソフトExcelでグラフ化したのが下図です。
見事にだださがりでした(笑)
以上で、JForexを利用したバックテストの手順は終了です。
最後に
今回、JForexを利用してストラテジーのバックテストを行う際の一連の手順を説明しました。
正直なところJForexのバックテスト機能は、MT4に比べて以下のように劣る点が多々あります。
・レポートがWEB上でしかみれない
・レポートが全て英語で日本人にとっては理解しにくい
・ビジュアルモードを使用しないと損益曲線を確認できない
・レポート結果がウェブベースだけなのでトレード結果のログを保存するのが面倒
・MT4の詳細レポートのようにストラテジーを分析するようなレポートがない
最低限MT4と同等のことができないとちょっとつらいですね。
むしろMT4優位な状況を打破するにはMT4以上の機能が求められるところです。
積極的な機能改善を行って欲しいですね。
さて、今回で「デューカスコピージャパン徹底検証」記事は最終回です。
一連の記事でデューカスコピージャパンやJForexについてどんな感じなのかをなんとなくでもつかめていただけたのではないでしょうか。
デューカスコピージャパンで自動売買を試してみたいと思われた方は是非一度JForexを使ってみてください。
デューカスコピージャパン徹底検証記事一覧
デューカスコピージャパン徹底検証(1)どんなFX業者なのか?
デューカスコピージャパン徹底検証(2)実際に取引をしてみた感想
コメント