開発 & 運用 周辺環境
使用ガジェット
言語:JAVA(JForex), Python, Pineスクリプト(TradingView), MQL5 (MT5), MQL4(MT4)
バックテストプラットフォーム:MT5 , JForex
テストデータ:デューカスコピー社のTickデータ
解析グラフ作成:Plotly's Python , QuantAnalyzer
開発フローチャート
アイディアを考える
MQL5のコードを起こす
MT5のバックテストで試す(1分足)
結果が良ければ、最適化(TP,SLなど)
『 AllData 』 and 『 TickData 』でバックテスト
QuantAnalyzerで解析
検証・実運用時に使うプログラムコードをJForex用にJAVAで、TradingView用にPineスクリプトで起こす
実運用フローチャート
過去の相対的ドローダウン(Pips)を閾値として控えておく
検証用口座(国内で少額投資ができる口座)にて実弾少額投資を開始(外出時などでJForexの売買サインが見れない場合は、Tradingviewで作成したインディケーターにてサインを確認)
日々実運用結果を.csvファイルに記録しておく
定期的にJForexにてTickDataでバックテストを実施
Plotly(Pythonのグラフ作成ツール)にて実運用結果とJForexバックテストとを比較検証する
両者のグラフに相関性が見られない場合は運用を諦める
ただし、ある程度の乖離で相関性が見られる場合はそのまま継続運用、、、
順調に運用が進み(3、4ヶ月)、いける確信を得たら実運用口座にて運用を開始する
バックテスト要項
期間
From:To 2004年~:2020年12月31日
exception:
クリスマス(12月25日)は東京市場が閉まる15時以降は休業するため新規注文はしない。ただし以前の注文が約定していた場合は15時に決済する。
年末の持ち越しはしない。
1月1日はトレードをしない。
過剰最適化(カーブフィッティング)にならないよう、期間に関しては最適化項目から外しています。
ヒストリカルデータ
全ティック:ティックを生成 スプレッド固定
リアルティック:デューカスコピー社のヒストリカルデータ(Tick)をMT5のサーバー時刻に変換してインポート スプレッド変動
実運用とバックテスト(リアルティック)での比較に相関性はあるが乖離が生じる場合、全ティックでのバックテスト結果と実運用での結果を比較すると、乖離幅が縮む場合がある。これはスプレッドの違いによるものが大きい。
実運用要項
検証用口座
取引量:MAX 500〜1000通貨
検証用口座はスリップページなく確実に約定させるために、少額取引ができる国内口座を使用し、トレード手法の実運用での有効性を確認する。
有効性には、獲得利益の他に自動と手動による誤差の確認が含まれる。
検証用口座では注文価格と約定価格が履歴で確認できる会社を選び、スリップ具合を確認する。
実運用口座
取引量:MAX 10000通貨
実運用口座での最大の取引量を低額に抑え、確実に約定させるとともに、複数の証券会社で運用することで利益を増やす工夫をする。
証券会社の選定には未カバー率、カバー取引の状況、平均証拠金率、取引高、約定率の5点を重視し選ぶ。
また、普段の取引において急騰暴落時におけるレートの配信状況や、注文のスリップ具合を確認する。
この記事が気に入ったらサポートをしてみませんか?