サインツールが矢印を出すタイミング
自動売買のエントリーに関わる原因でまず確認しなければいけないのはお使いのインジケーター(サインツール)の「矢印の出し方」です。
矢印の出し方には大きく分けて下記の2種類が存在します。
①リアルタイムで計算して条件が揃ったら矢印をだす。条件が変わったら矢印を消す。
②条件が揃ったら00秒で矢印を出す。
リアルタイムで計算して条件が揃ったら矢印をだすタイプ
まず①の矢印の出し方です。
リアルタイムで計算をしているのでサインが点いたり消えたりします。
この出し方の場合、自動売買を「矢印が出た瞬間にエントリーする(即エントリー)」設定にしていると、エントリーした後に矢印が消えた場合にMT4のチャートと履歴が合わないということが起こりますが、サインツールの基本的なサインの出し方であり自動売買用のサインツールを作っている開発者へ推奨される形です。
もちろんフライングエントリーやバックテストにも対応が可能です。
「サインがでたら即エントリー」すると、点滅する特性により「チャートと履歴が合わない」という問題ですが、そもそも自動売買用のサインツールは矢印がでたら即エントリーする前提で開発するものではありません。
その理由として、MT4の秒単位のヒストリカルデータが正確ではないということがあげられます。
即エントリーするということは秒単位のエントリーをおこなうということになります。つまり開発時に不正確なテストを積み重ねてツールを作ることになります。
TDSという有料の価格データや、有料のバックテストでおこなえばテストは正確になりますが、そこまで突き詰める開発者さんは少なく、即エントリーのツール製作にはTDSが必要だということを知らない開発者さんも多くいらっしゃるのが現状です。
条件が揃ったら00秒で矢印を出すタイプ
次に②のサインの出し方です。
これは条件がそろったら00秒で矢印を出すということで一見正しい矢印に見えます。
しかし実はこの出し方の場合、サインがでているのは最新の足ではなく、確定した一つ前の足にサインを表示しています。
すると、最新の足を拾って行うバックテストではサインを拾えず計測不可能、ほとんどの自動売買システムに実装されているフライングエントリーももちろんできなくなります。
そのため、自動売買には不向きなサインの出し方となりますが、この形に作られているインジケーターの多くは、開発者さんが最新足でリアルタイムにサイン条件を判定する方法がわからないので過去ローソク足のみで計算しているか、同じローソク足にサインを出したり消したりする方法がわからないので、過去ローソク足のみで計算してる場合がほとんどで、通常は意図的に作るものではありません。
意図的に作る理由があるとすれば、バックテストができないようにしたり、自動売買対策でつくるような場合が考えられます。
「矢印がでたら即エントリー」は実は間違い
ここまででサインの出し方の前提は理解してもらえたかと思いますが、次は自動売買システム側の仕様のお話です。
市販のバイナリーオプションの自動売買システムですが、その殆どが基本的には00秒の時点で前の足にサインがでているかどうかでエントリーを決定します。
つまり「矢印がでた次の足でエントリー」が基本です。(もしフライングエントリー設定を1秒に設定していたら59秒時点でサインがでているかどうかで判断します)
しかし自動売買が初めてのお客様の中には結構な確率で「サインがでた瞬間に即エントリーする物」と思われている方も多いですが、これは大きな問題があります。
サインがでた瞬間に即エントリーする弊害
FX-EAラボでご紹介しているAutoMultiTraderには「即エントリー」機能を搭載しておりますので、サインツールが矢印を出したらそれを拾ってすぐにエントリーすることが可能です。
しかしこの方法は、サインツールの開発者が「サインが出た次の足でエントリーすることを前提で作っている」ということを無視したエントリー方法です。
さきほども少し書きましたが、これはMT4が秒単位での価格データをきちんと提供しておらず、データの精度が悪いことが原因で、多くの開発者がその対策としてローソク足がきちんと確定してからエントリーするように制作するからです。
サインがでたら即エントリーというのは、秒単位で動いている矢印を見てエントリーするということですが、MT4を使っている限りは残念ながらかなり雑なエントリーと言わざるを得ません。
5分以上の取引でしたら多少雑なエントリーでもお使いのロジックに優位性があれば勝てますが、1分以下の短い取引で雑なエントリーでは0.1pipsあたりの影響が大きいのであっという間に資金を減らしてしまうので注意が必要です。
有料のサインツールでたまに見かけるのが、マニュアルを見ると「即エントリー」を推奨しているインジケーターの存在です。
これはつまり販売者が、MT4の秒単位の価格データの精度について無関心だということを表しています。これへの反論として『「TDS」という非常に精度が高い有料価格データを使って開発しているから大丈夫』がありますが、TDSを使う開発者こそ秒単位のデータに頼ったインジケーター作りの不確実性を知っていますのでに即エントリーは奨めません。
つまり、即エントリー前提のサインツールはあまり信用してはいけないということです
自動売買システムに00秒エントリーは難しい
自動売買システムがサインがでた次の足でエントリーする場合、矢印が00秒時点で存在していたら、そこから0.1秒以内にハイローオーストラリアへエントリー指示をだします。
しかし現実問題として、00秒時点でエントリーボタンを押したとしても、ハイローオーストラリア側がエントリーを受け入れてくれない事が多いです。
エントリーを受け入れてくれない理由としては、00秒時点というのは世界中の自動売買システムが一斉にエントリーサインを送りますので、ハイローオーストラリア側の負荷が一気に高くなります。
その対策として、ハイローオーストラリアはエントリーが集中した場合に約定を少しずつずらす仕様になっています。そのため00秒ぴったりにエントリーを試みたとしても、履歴を見ると2~3秒遅れているということが起こります。
ただし、現実問題として00秒エントリーにこだわった所で実際の所、勝率にはほとんど影響はありませんし、00秒エントリーが勝率に影響するほどの小さなボラティリティや短い取引時間でのゲームはオススメいたしません。
MT4のアラームとエントリーサインは異なる事がある
世の中にたくさんあるMT4のサインツールインジケーターですが、サイン(矢印)がローソク単位で点灯するものもあれば、ティック(秒)単位で点灯したり消えたりするものなど色々あります。
上記画像のMT4のアラートはチャートにサインが点灯した時点ですぐに鳴りますが、ティック単位でサインが点灯したり消えたりを繰り返すインジケーターの場合、一度サインが点灯した後に、もしサインが消えたとしてもMT4のアラートの履歴は消えません。
自動売買システムは00秒の時点でサインがあるかどうかをチェックしてエントリーしますが、もし点灯していたサインが00秒直前で消えてしまったら自動売買システムはエントリーしません。
しかしMT4のアラートのお知らせだけを見るとサインが点灯したというエントリーの履歴が残っているので、自動売買システムとエントリーと一致しないということで、エラーと勘違いしてしまう方がいらっしゃいますがご注意くださいね。
矢印とエントリーがずれる原因
MT4のチャートにでている矢印と自動売買システムの履歴が一致しないということで多くのお問い合わせが来ます。
その内容の多くは「矢印がでているのにエントリーしない」「矢印がでていないのに勝手にエントリーした」です。
その場合にまず疑われてしまうのは自動売買システム側なのですが、実は自動売買が矢印を見落としたり、矢印がでていないのにエントリーするということは、ある程度実績のある自動売買システムの場合はありえません。
矢印と履歴が一致しない原因は色々とありますが、まず一番に疑うべきはお使いのインジケーターがリペイントをしているかどうかです。
シグナルインジケーターのリペイントは大きく分けて2種類
リペイントするインジケーターはサイン(矢印)の出し方で大きく2種類のタイプに別れます。
これは履歴と照らし合わせた時に「サインがないのにエントリーされた!」と言われるタイプのものです。
これは履歴と照らし合わせた時に「チャートにサインがないのにエントリーされない!」と言われるタイプのものです。
見えない矢印がでている(開発者の技術不足)
上記は「矢印がでていないのに自動売買システムが勝手にエントリーをした!」というご相談をいただきましたので、特殊なツールを使ってインジケーターのシグナルを強制的に表示させたものです。
インジケーターの矢印ですが、実は開発者の技術によって上記のように一つのローソクにハイとローを出してしまうものや、見た目には見えないエントリーシグナルはだしているのに矢印は表示できていないものなどが存在します。
この場合も残念ながら履歴と矢印が一致しないことが起こります。
フライングエントリーが原因でエントリーしない事もある
たまにですが、フライングエントリーを設定している時にエントリーしないという症状が起こります。
例えばフライングを1秒に設定していると、自動売買システムは00秒よりも1秒早い59秒地点に矢印が存在するかを確認します。
この時に、59秒時点ではサインができておらず、その後00秒までの1秒の間でサインが出現したという場合はMT4に矢印ができているのにエントリーしていない、自動売買システムの履歴にも残らないということが起こります。
59秒時点で自動売買システムは矢印がないのでエントリーはしないと判断しますが、MT4側はその後の瞬間でできた矢印を00秒時点で確定してチャートに残してしまいますからね。
また、PCの時刻がネットと同期せずにずれている場合も上記と同様の事が起こる可能性があります。
ハイローオーストラリアの履歴とMT4の履歴には差が出る
上の画像はある自動売買システムの取引履歴ですが、こちらはハイローオーストラリアの取引履歴画面を直接読み取ってそのまま転載しています。
そのため、MT4のサインと一致しないということが起こります。
これはサインツールがリペイントをしていたり、1分足以下の取引ですと秒単位で勝敗が変わりますが、判定ギリギリの時間で値が大きく動くとMT4のタイミングでは勝ったのに、実際の取引タイミングでは1~2秒差で負けたということが原因です。
エントリーが遅れたり早くなる原因
次にエントリーが数秒ずれたりする原因もご紹介しておきます。
わかりやすい理由としては「ハイローオーストラリア側が混雑していてエントリーが遅れる」が多いです。次に多いのが「スペックが高くないPCで多くの通貨を稼働させた」場合ですね。
しかしその他にもエントリーがずれる原因はありますのでご紹介しておきますね。
複数同時エントリーは少しずつハイロー側でタイミングがずらされる
自動売買システムで10種類以上の複数の通貨を動かしていますと、たまに2~3個のエントリーポイントが同じ足で重なることがあります。
この際に、自動売買システムは同時にエントリー指示を出すのですが、そのエントリー指示をうけとったハイローオーストラリアは残念ながら同時にエントリーを許可しません。
ハイローオーストラリアは一つのアカウントからの同時注文は、時間をずらしながら一つずつ順番にエントリー処理を行います。
ですので、同時に出した複数の注文は速くて1~2秒、長いと10秒~15秒程度ずらされながらエントリーしていきます。
これはハイローオーストラリアが、悪意のある第三者が何万ものエントリーを同時に注文してサーバーに負荷を与えるといった攻撃を防ぐためにこういった仕様になっております。
ですので、MT4のサインツールのエントリーが同じところで重なった場合は、どんな自動売買システムを使っていてもエントリー時間はずれてしまうのは仕方がないところです。
スキャルピングはティックの遅延でエントリーが遅れます
これはサインインジケーターが「サインが完成した次の足でエントリー」するタイプのもので発生します。そして1分足や30秒足など短い時間で取引するほど、エントリーの遅延が良くおこってきます。
この原因ですが、業者から配信されるティックデータ(秒単位のローソク足のデータ)の遅延がおこっているからです。
通信環境やMT4を提供しているFX業者さんのサーバーの強さなどにもよりますが、秒単位ですとローソク足は常に跳んだり、作成されるのが遅れます。
ですので、インジケーターのサインがでると自動売買システムは次足でエントリーする準備をしますが、その次足でティックデータが跳んでしまうとエントリーすることができません。
ですので、秒単位で取引を行うインジケーターはエントリーの遅延が起こっているように見えてしまうのです。
これに関しては、ティックデーターが飛びにくい業者(オアンダやデューカス)をお使いになられるか、もう少し長い足を使っていただくしか無いのが現状でございます。