バックテストをしてみよう!
前回まででHello cBotという一つのcBotを完成させました。早速これのバックテストをしてみたいと思います。
HellocBotのインスタンス(前々回作ったやつです。なければ+ボタンで作ってください。)を選んでBacktestingタブを選択してください。
このままだとなにも表示されてなくてわかりにくいので、1回バックテスト走らせちゃいましょう。右上の再生ボタンをクリック!
これで画面にチャートが表示されたと思います。
まずは準備
売買タイミングの確認用にチャート側の準備をしておきましょう。cBot初期設定パラメータと同じ期間の移動平均線を表示させておきます。
ここからcBotに設定した移動平均線と同じ期間(記事通りなら25,75)の移動平均線を2本追加してください。色は適当でいいです。
バックテスト画面の操作
まずはチャート上の操作部分の使い方から。
テスト期間・再生停止・損益
テスト期間はバーをドラッグでも左右のボックスに開始・終了年月日を直接入力しても設定できます。
基本は期間を設定して、再生ボタンを押せば開始。終わると損益が表示され、トレードウォッチ部分に各種結果が出る、といった形です。
設定
設定はこんな感じ。
テスト時の初期資金、手数料、使用データ、スプレッドを指定します。
初期資金は10000に設定されてます。円口座の場合は現実的な数値に増やしておいた方がいいでしょう。
手数料もブローカー手数料と関係ない値が入ってますので修正します。なお100万通貨あたりの片道手数料です。
使用データはデフォルトは1分足始まり値です。試しでテストするときはそのままでいいでしょう。詳細テストしたいならティックデータを使います。
スプレッドは固定値か、幅指定してランダムか選べます。使用データがティックなら実際のスプレッドが使われるようになります。
ビジュアルモード
ビジュアルモードにチェックを入れておくと、チャートの動きを見ながらどこで取引をしてるのか確認できます。
スピード設定はビジュアルモードのスピード。実行中に変えられます。
また、ビジュアルモード中は損益がリアルタイムに変化します。
(2021/3/23追記)
手数料設定について
ここ、ちょっとわかりにくいので追記。
手数料は口座通貨に関係なく基軸通貨(通貨ペアの左側通貨)で設定します。たとえばここに"30"と指定したらEURUSD100万通貨のトレードで片道30ユーロ往復60ユーロの手数料になります。GBPJPY100万通貨のトレードなら片道30ポンド往復60ポンドの手数料、です。
もともとcTraderの手数料はMT4と異なり基軸通貨基準で算出されるのが基本です。紹介サイトなどでは手数料は往復(1トレードあたり)でPips換算されてることが多いですが、1トレード当たり手数料が0.6pipsだとしたら、ここには"30"と入力します。
ビジュアルモードで売買タイミングを確認しよう
cBotを作ったらまずは成績が気になる!というのは当然なんですが、先に意図したとおりに動いているかどうかを確認しましょう。意図した通りじゃなくても成績がよければそれでいい!って人もいるでしょうけど、そんなプログラム怖いですよね。
ビジュアルモードにチェックを入れて、再生ボタンを押してください。チャートが高速で再生されてる様子が見れると思います。チャートの動きが遅ければスピードを早めてもかまいません。
移動平均線の動きに注目します。クロスしたその次のローソク足の始まり値でエントリーが入ってることが確認できたでしょうか。そして指定ピップス到達時にちゃんと決済されてることが確認できたでしょうか。
まぁ実はこのロジックだったらビジュアルモードじゃなくても確認はできるんですが、こんな感じで実際の動きを見ることができるということを知っておいてください。
あとは適当にいろいろやってみよう
意図した通りに動いてることが確認できたら、ビジュアルモードのチェックを外してバックテストを繰り返してみましょう。
今回はバックテスト結果の見方は詳しく説明しませんが、トレードウォッチ部分のEquityChartで損益グラフが、TradeStatisticsで各種データが見れるということだけわかってれば十分楽しめると思います。
テスト期間を長くしたらどうだろうか?
通貨ペアや時間足を変えたらどうだろうか?
パラメータを変えてみたらどうだろうか?
プログラム自体を少し変えてみようか?
色々試してるうちに、だんだん楽しくなってくると思います。
意外と簡単にcBotが作れた!!
・・・と感じてもらえてればうれしいです。
説明がくどかったせいで記事は長くなってしまいましたが、作業量自体は大したことなかったと思います。
ぜひ、これを足掛かりにいろんなcBotを作ってみてください。そしていいのができたらぜひシェアして下さい(笑)