MT4/5 | cTrader | |
自動売買ソフト | EA | cBot |
プログラミング | MQL4/5 | C# |
開発者環境 | Meta Editor | cAlgo |
MT4/5でシステムトレードを行うにはEAを使いますが、cTraderではcBotを使います!
cBotの作成にはcAlgo(C#)が使われます。cBotは標準で搭載されているモノもありますし、作成・公開されているものも多数あります。数自体はEAのように多くはありませんが、年々数が増えてきましたね。
cBotの使い方は何も難しいことなく、メタトレーダーでEAを使った経験のある人ならすぐに使用できちゃうぐらい簡単です!!
今回は、バックテスト、評価、実践投入等、cBotの使い方についてまとめました。
バックテストの設定から実施まで
運用に値するかどうかを過去データを元に判断(バックテスト)
↧
評価が良ければ実践投入(リアルトレード)
メタトレーダーではEAを実践投入する前にバックテストを行いましたが、cTraderでもcBotの性質を知る上でバックテストはやっておいた方が良いでしょう。
cTraderのバックテストは、Automateという機能を使います!
左メニューのAutomateからcBotの一覧を表示します。
cBotの「+」からインスタンス追加で通貨ペアを選択。上画像はSample RSI cBotをUSD/JPYに適用させたものです。
からcBotの設定値を調節します。上図の場合、四本足の終値を指定、RSIの期間は14日、取引量1Lotという設定になります。
この設定の仕方によってテスト結果は違いますし、状況によって合う設定、合わない設定というものがあります。
バックテストは現在のボラティリティと近い状況でシュミレーションして収益を上げられるかどうか?を確認する意味がありますので、様々な設定の下でテストを実施するのが良いかと思います。
設定が終わったら、チャート上タブの【Backtesting】を選択して、シュミレーションする期間をスライダーで調節します。
Meta Traderはヒストリカルデータを持ってきて10年スパンで検証できましたが、cTraderは8年が限界です。
からバックテストの環境設定ができます。取引開始時の資金、手数料(10Lotごとの)、スプレッドは現実のトレードに合わせた方が実践投入時の誤差は小さくなります。
上図はビジュアルモードをONにしてバックテストを実行したものです。取引や収益がビジュアル化して視覚的に確認できますが、テスト終了まで時間が掛かります。最大×100,000倍速まで設定できます。
バックテストの成績評価
成績とは、プロフィットファクタ、ドローダウン、資金推移、勝利トレード数・率などcBotを評価するありとあらゆるデータを指します!
有効証拠金タブで口座残高の推移が確認できます。
上図だと、10,000ドルでスタートして最終的に11,700ドルまで資金を伸ばしていることが分かります。
履歴タブから、バックテスト中に行った全取引を確認できます。
チャートと履歴はリンクしていますので、履歴をクリックすると売買タイミングを見ることができます。
取引統計情報タブは最も重要な項目です。ここに主要なデータが網羅されていますね。
特に注目すべき点はプロフィットファクターです。
プロフィットファクターは純利益と純損失の比率です。
1.0以上なら、
純利益 > 純損失
となるため、利益を出せるcBotだと判断できますね。
cBotを評価する上でプロフィットファクターが1.0以上であることは絶対です。数字が大きければ大きいほどより優秀だと判断できますが、1.0未満であれば使うのを避けた方が無難です。
ドローダウンは資金の落ち込みを表しており、パーセンテージが大きいほど残高または有効証拠金が大きく下がったことを意味しています。
Long Tradesが買い、Short Tradesが売りトレードを意味しており、トレードごとの結果も確認できます。
cBotの最適化とは?
バックテストの始めにパラメーターの設定をしましたね?
上図はRSIの期間を14日としたもので、利益は1,721ドルです。設定値によってどれだけ収益に違いが出るのか見てみると…
期間を10日に設定した場合は利益は362ドルまで落ち込みます。パラメーターで収益が大きく変化するのが分かります。
バックテストを行う主目的は利益を最大化できるパラメーターを探し出すことです。
そして最適なパラメーターを探し出すことを最適化といいます。
パラメーター値を変更
↧
バックテスト
この繰り返しを手動で行うのは大変な事ですね・・・そこで、cBotの最適化機能を使います!この機能を使えばcTraderが自動でパラメーターを変更 → 様々なパターンでバックテストを行ってくれます。
最適化タブを開くと上図のようになっています。
バックテストと同様に仮想資金やスプレッドの設定を行います。期間をスライダーで調節するのも同様ですね!
上図は【パートナーズ】をクリックしたものです。時間軸やPeriod、Quantityなど最適化をどこからどこまで試行するのか?をここで設定します。
上図の例だと、
① 時間軸 → h1~h4まで4本の時間軸が対象
② Periods(今回はRSIの期間) → 9日~19日の設定が対象
③ Quantity(注文量) → 0.01Lot~1.05Lotまで0.01刻みの全てで試行
最適化モードでは、①~③の設定値をありとあらゆるパターン(組み合わせ)で検証します!そのため、設定幅を大きくしすぎるとテスト時間が長くなるので注意してください。
【基準最適化】で何に最適化したいのかを選択します。
取引によっては、
「ドローダウンを小さくしたい」
「最大利益を狙いたい」
「損失を小さく抑えたい」
など色々な考え方があるかと思います。そんな時に基準最適化を使います!例えば「最大利益」とすれば、利益が最大化するパラメーターを教えてくれます。
最適化を実行した結果が上図で、利益最大化の順に並んでいます。右画面にパラメーターごとの結果が並んでいます。「適用」を押すと、その結果に至ったパラメーターが自動的に挿入されます。
上図の場合、
2時間足でSourceをClose、RSIの期間19日、注文量1.03Lotsにした時に最も大きな利益5,610ドルを稼ぐことができた。
という結果になっています。
リアルトレードにcBotを適用させる
リアルトレードへの適用はスタートボタンを押すだけです!停止も同様に停止ボタンを押すだけの簡単仕様です。
cBotを24時間動かしたいならVPSを使おう!
cBotもEAと同じようにトレード機会を常に伺っています。機会損失を防ぐためにはcTraderが動き続けていないとなりません!
当然ながらPCの電源OFF時は、cBotは動きません…かといって自宅のパソコンを24時間つけっぱなしにするのもリスクがあります。
そこでVPSを使いましょう!
VPSはウィンドウズサーバーの事で、cTraderをサーバー上にインストールすれば24時間365日稼働させ続けることができます。