買いポジなら、MACDが正で、シグナルを下回ったとき、閉じる。売りポジなら、MACDが負で、シグナルを上回ったとき、閉じる。トレーリングストップの採用が可能。トレーリングストップを設定していないならストップ値はなし。目標利益幅(TakeProfit)は10pips以上で一定値に固定。余剰証拠金が1000以上必要。MACD算出のため、ヒストリカルデータの数200以上が必要。次では、実際のMQLIIコードを見ながら内容を確認していきます。トラックバックプログラミングしてみようStrategyBuilderFXのExpertを作成する言語はMQLIIというものです。これはエクセルのマクロなどで使えるVBScriptによく似た書式ですので、経験のある方にはそれほど難しくないと思います。トラックバック辞書の使い方(MQLDictionary)辞書をつかってMQLの書式を確認することができます。本のアイコン(MQLDicionary)を押すと、MetaQuoteLanguageDictionaryが開きます。それぞれの項目を選択すると説明が表示されます。「OK」を押すと、カーソル位置にその項目が自動的に挿入されてしまいますので、書式の確認だけしたい場合には「Cancel」でウィンドウを閉じてください。MetaEditorには入力補完機能があります。登録されている語を途中まで入力すると候補が現れますので、↑↓で選びEnterで確定してください。トラックバックエラーチェック&コンパイル(Verify)MetaEditorで作成したプログラムはmqlファイルになりますが、SBFXで実行できるようにexpファイルに変換する作業(コンパイル)が必要です。同時にmqlの文法にエラーがないかもチェックされます。チェックマークのアイコン「Verify」をクリックします。このときプログラムは自動的に上書き保存されます。エラーが見つかれば、画面下のOutputウィンドウにエラー内容が表示されます。メッセージを参考にエラー箇所を修正してください。この場合は、9行目の行末の「;」が抜けていたようです。修正して再びVerifyボタンを押します。エラーが無ければこのように表示され、コンパイルが完了しました。MetaTraderボタンを押すとStrategyBuilderFXに戻ります。Wizardを立ち上げます。Expertからでも直接立ち上げることができます。ウィザード画面が現れますので、ExpertAdvisorProgramが選択されていることを確認して「次へ」。新しいExpertの名前と作成者の署名、LotsやStopLossなど特殊なパラメーターのデフォルト値を入力します。署名は適当に入れてください。パラメーターは分からなければそのままでも大丈夫です。ウィンドウが開き、Expert作成の準備が整いました。トラックバックMetaEditor入門オリジナルのExpertAdvisorを作ることができるMetaEditorの使い方を見ていきましょう。Editorで起動します。トラックバック2005年06月02日チャートのちょっとしたTIPSチャート上で、各バーの終値付近にマウスカーソルを合わせると、その4本値がポップアップ表示されます。トラックバックテスト結果がおかしい?エキスパートのテストの仕方によっては、ランダムに生成された為替データのせいで、売買成立するはずが無いところで成立していたり、矢印や三角印の表示位置がおかしくなっていたりするバグが発生したりすることがあるので注意してください。チャートのデータは売値(Bid)ですので、買いオーダーや決済買いなどでは矢印や三角印がロウソク足の少し上にハミ出ていることがありますが、これはバグではありません。chart」にチェックが入っていると、チャート上でその売買結果を見ることができます。チャートを見てみると所々に、矢印や三角印が入っています。矢印が発注したオーダー(成り行き注文の場合はその時点で成立済み)、三角印が売買成立ポイントです。矢印が下向きのものはSell、上向きはBuy。矢印の上下にあるラインはストップとリミットを表します。(この場合はリミットだけがセットされているようです。その先の三角印で、リミット達成されました)*チャートを移動して見る場合はscrollをoffにしておきます。チャート上でドラッグしてずっと過去まで遡ってみることができます。*表示が細かすぎたり大きすぎたりする場合は+-アイコンを使って調整します。トラックバックレポートと資産曲線を確認Reportタブを開き、テスト結果の詳細を確認します。結果で重視されるのがトレード数と勝率、勝敗それぞれの収益率、あとは最大ドローダウンでしょうか。drawdownが大きいと資金曲線が乱高下していることになるので安定した収益が期待できません。今回はトレード数42回とそれほど多くない中で、最大ドローダウンが24.1%あり、少し大きすぎるような気がします。資金曲線が気になるので、EquityGraphタブを開いて確認してみましょう。右肩上がりではありますが、かなり荒い感じは否定できません。長いスパンでテストしてみたいところです。トラックバックエキスパートのパラメーターを変えるパラメーターの値が良くないのかもしれません。値を変更して、もう一度試してみましょう。Settingsタブを開きます。MACDOpenLevelは3になっていますが、これを5に変えます。数字の部分をダブルクリックすると入力可能になりますので5と入れ、Enterで確定します。(Enterを押さないと元の数字に戻ってしまいます)同じようにMACDCloseLevelを5、MATrendPeriodを112に変えます。それでは、StrategyTesterタブを開いて、もう一度テストをスタートします。point(fast)」です。結果、約2年間で5400ドルのプラス。投資額の54%増という高成績になりました!それでは、もうすこし細かくシミュレーションしてみましょう。point(slow)」に変えてもう一度テストをスタート。結果は、先ほどより減りましたが、それでも3870$のプラス、38.7%増となりました。トラックバックストラテジーテスターを使おう前回、EURUSDのチャートに適用したMACDSampleがどれほどのものなのか、ストラテジーテスターでバックテストをしてみます。Testerテスター画面を開きます。chart」にチェックを入れて、あとでチャート上で売買履歴を確認できるようにします。points(fast)にして、Start。あっという間にテストが終わりました。マイナスが膨らみすぎて途中で止まってしまいました。これではとても任せられません。トラックバックエキスパートアドバイザーを使ってみようそれでは実際にSBFXを使ってみましょう。SBFXを起動します。新たにEURUSDのチャートを開きます。表示もロウソク足にします。SBFXで自動売買の肝となる機能、エキスパートアドバイザーを使ってみましょう。(語句や使い方の説明は、StrategyBuilderFX入門にて)今回はサンプルプログラムとして入っている、MACDSampleというエキスパートを使います。NavigatorウィンドウのExpertAdvisorsにあるMACDSampleをEURUSDチャートにドラッグ。「はい」をクリックして、パラメータの入力画面になります。tradingにチェックを入れます。OKでウィンドウを閉じ、EURUSDチャートの右上のマークを確認します。ここがニコマークになっていればエキスパートが動作中です。マークがx印の場合は動作していません。Advisorボタン(おやじマーク)を押して動作させてください。あとは立ち上げたまま放っておくだけで、為替データの更新があるたびにMACDSampleのプログラムが実行され、MACDSampleで設定されているルールどおりに、自動的に売買を行います。次は、このMACDSampleがどれくらいの収益になるのか、過去のデータを使ったバックテストでみてみましょう。