自動売買システム

ハイローオーストラリアで00秒エントリーがずれてしまう理由

エントリーの遅延
yuki
yuki
今回はハイローオーストラリアで自動売買を動かす際に、00秒エントリーができなかったり、エントリーポイントがずれたりするいくつかの原因について書かせていただきます
カオチャイ
カオチャイ
FX-EAラボのハイローオートをベースに書いていますが、他社の自動売買システムにも当てはまる内容ですので、ぜひ参考にして下さい
サインツールの種類
意外と知らないサインツール(シグナルツール)の基礎知識 EAとサインツール、インジケーターの違い まず最初に、少々ややこしいインジケーター、EA、サインツール(シグナルツール)と...

 

 

サインツールが矢印を出すタイミング

自動売買のエントリーに関わる原因でまず確認しなければいけないのはお使いのインジケーター(サインツール)の「矢印の出し方」です。

矢印の出し方には大きく分けて下記の2種類が存在します。

 

①リアルタイムで計算して条件が揃ったら矢印をだす。条件が変わったら矢印を消す。

②条件が揃ったら00秒で矢印を出す。

カオチャイ
カオチャイ
自動売買でトラブルが多いのは主に②の矢印です。次で詳しく解説していきますね

 

リアルタイムで計算して条件が揃ったら矢印をだすタイプ

サイン点滅タイプ

まず①の矢印の出し方です。

リアルタイムで計算をしているのでサインが点いたり消えたりします

この出し方の場合、自動売買を「矢印が出た瞬間にエントリーする(即エントリー)」設定にしていると、エントリーした後に矢印が消えた場合にMT4のチャートと履歴が合わないということが起こりますが、サインツールの基本的なサインの出し方であり自動売買用のサインツールを作っている開発者へ推奨される形です。

もちろんフライングエントリーやバックテストにも対応が可能です。

 

yuki
yuki
通常はこのタイプのサインツールを使って我々は自動売買をおこないます

サインがでたら即エントリーすると、点滅する特性により「チャートと履歴が合わない」という問題ですが、そもそも自動売買用のサインツールは矢印がでたら即エントリーする前提で作るものではありません。

理由は、MT4は秒単位の価格データが仕様上正確ではないのですが、矢印が出た瞬間にエントリーということは秒単位でのバックテストを行いながら開発と調整をおこなう必要があります。

しかしそれはMT4の仕様上、ある程度不正確なツールと言わざるをえないです。

 

条件が揃ったら00秒で矢印を出すタイプ

次に②のサインの出し方です。

これは条件がそろったら00秒で矢印を出すということで一見正しい矢印に見えます。

しかし実はこの出し方の場合、サインがでているのは最新の足ではなく、確定した一つ前の足にサインを表示しています

すると、最新の足を拾って行うバックテストではサインを拾えず計測不可能、ほとんどの自動売買システムに実装されているフライングエントリーももちろんできなくなります。

そのため、自動売買には不向きなサインの出し方となりますが、この形に作られているインジケーターの多くは、開発者さんが最新足でリアルタイムにサイン条件を判定する方法がわからないので過去ローソク足のみで計算しているか、同じローソク足にサインを出したり消したりする方法がわからないので、過去ローソク足のみで計算してる場合がほとんどで、通常は意図的に作るものではありません。

意図的に作る理由があるとすれば、バックテストができないようにしたり、自動売買対策でつくるような場合が考えられます。

カオチャイ
カオチャイ
このタイプの場合は自動売買用に対処されているものもありますが、半分くらいは自動売買では動きませんの注意が必要です

 

「矢印がでたら即エントリー」は実は間違い

ここまででサインの出し方の前提は理解してもらえたかと思いますが、次は自動売買システム側の仕様のお話です。

市販のバイナリーオプションの自動売買システムですが、その殆どが基本的には00秒の時点で前の足にサインがでているかどうかでエントリーを決定します。

つまり「矢印がでた次の足でエントリー」が基本です。(もしフライングエントリー設定を1秒に設定していたら59秒時点でサインがでているかどうかで判断します)

しかし自動売買が初めてのお客様の中には結構な確率で「サインがでた瞬間に即エントリーする物」と思われている方も多いですが、これは大きな問題があります。

 

サインがでた瞬間に即エントリーする弊害

ハイローオートには「即エントリー」機能を搭載しておりますので、サインツールが矢印を出したらそれを拾ってすぐにエントリーすることが可能です。

しかしこの方法は、サインツールの開発者が「サインが出た次の足でエントリーすることを前提で作っている」ということを無視したエントリー方法です。

さきほども少し書きましたが、これはMT4が秒単位での価格データをきちんと提供しておらず、データの精度が悪いことが原因で、多くの開発者がその対策としてローソク足がきちんと確定してからエントリーするように制作するからです。

サインがでたら即エントリーというのは、秒単位で動いている矢印を見てエントリーするということですが、MT4を使っている限りは残念ながらかなり雑なエントリーと言わざるを得ません。

5分以上の取引でしたら多少雑なエントリーでもお使いのロジックに優位性があれば勝てますが、1分以下の短い取引で雑なエントリーでは0.1pipsあたりの影響が大きいのであっという間に資金を減らしてしまうので注意が必要です。

カオチャイ
カオチャイ
それでも即エントリーは根強い人気がありまして、使いたい方が多いのですが、その場合はSingalAUTOやObjectAUTOを使うよりもAlertAUTOでのエントリーのほうが正常にはいれる場合が多いですよ
即エントリーをすすめる販売者に注意

有料のサインツールでたまに見かけるのが、マニュアルを見ると「即エントリー」を推奨しているインジケーターの存在です。

これはつまり販売者が、MT4の秒単位の価格データの精度について無関心だということを表しています。これへの反論として『「TDS」という非常に精度が高い有料価格データを使って開発しているから大丈夫』がありますが、TDSを使う開発者こそ秒単位のデータに頼ったインジケーター作りの不確実性を知っていますのでに即エントリーは奨めません。

つまり、即エントリー前提のサインツールはあまり信用してはいけないということです

 

ハイローオーストラリアに00秒エントリーは難しい

自動売買システムハイローオートは、サインがでた次の足でエントリーする場合、矢印が00秒時点で存在していたらそこから0.1秒以内にハイローオーストラリアへエントリー指示をだします。

しかし現実問題として、00秒時点でエントリーボタンを押したとしても、ハイローオーストラリア側がエントリーを受け入れてくれない事が多いです。

エントリーを受け入れてくれない理由としては、00秒時点というのは世界中の自動売買システムが一斉にエントリーサインを送りますので、ハイローオーストラリア側の負荷が一気に高くなります。

その対策として、ハイローオーストラリアはエントリーが集中した場合に約定を少しずつずらす仕様になっています。そのため00秒ぴったりにエントリーを試みたとしても、履歴を見ると2~3秒遅れているということが起こります。

yuki
yuki
そのため、自動売買システムの多くは注文が集中する00秒を避けるために1~2秒早くエントリーする「フライングエントリー機能」が備わっているんですね。 

 

ただし、現実問題として00秒エントリーにこだわった所で実際の所、勝率にはほとんど影響はありませんし、00秒エントリーが勝率に影響するほどの小さなボラティリティや短い取引時間でのゲームはオススメいたしません。

ボラティリティ
バイナリーオプションはボラティリティが無いと負けやすい【ATRのススメ】 https://fx-ea-labo.com/howto-make-auto ハイローの勝率に直結するボラティリティとは? ...

 

MT4のアラームとエントリーサインは異なる事がある

アラートこちらはおなじみMT4のアラート

 

世の中にたくさんあるMT4で動くバイナリーオプションの自動売買サインツールですが、サイン(矢印)がローソク単位で点灯するものもあれば、ティック(秒)単位で点灯したり消えたりするものなど色々あります。

上記画像のMT4のアラートはチャートにサインが点灯した時点ですぐに鳴りますが、ティック単位でサインが点灯したり消えたりを繰り返すインジケーターの場合、一度サインが点灯した後に、もしサインが消えたとしてもMT4のアラートの履歴は消えません。

自動売買システムは00秒の時点でサインがあるかどうかをチェックしてエントリーしますが、もし点灯していたサインが00秒直前で消えてしまったら自動売買システムはエントリーしません。

しかしMT4のアラートのお知らせだけを見るとサインが点灯したというエントリーの履歴が残っているので、自動売買システムとエントリーと一致しないということで、エラーと勘違いしてしまう方がいらっしゃいますがご注意くださいね。

 

カオチャイ
カオチャイ
MT4のアラートが鳴るかどうかはサインツールの開発者様によるところなのですが基本的に点灯と消灯を繰り返すツールで毎回点灯の度にアラートを鳴らすのは褒められたインジケーターではありませんね
yuki
yuki
また、上記はSignalAUTOかObjectAUTOを使っている場合のお話ですが、Alert AUTOを使っている場合はまた別のお話です

 

 

矢印とエントリーがずれる原因

MT4のチャートにでている矢印と自動売買システムの履歴が一致しないということで多くのお問い合わせが来ます。

その内容の多くは「矢印がでているのにエントリーしない」「矢印がでていないのに勝手にエントリーした」です。

その場合にまず疑われてしまうのは自動売買システム側なのですが、実は自動売買が矢印を見落としたり、矢印がでていないのにエントリーするということは、ハイローオートに限らず、ある程度実績のある自動売買システムの場合はありえません。

このご質問は年間500件以上ありますが、自動売買が勝手にエントリーした事例は過去に一度もありません。その構造上できないのです。

矢印と履歴が一致しない原因は色々とありますが、まず一番に疑うべきはお使いのインジケーターがリペイントをしているかどうかです。

リペイントについて詳しく解説はこちら
MT4のリペイントとは?矢印インジケーターの見分け方 MT4のインジケーターに見かけるリペイントとは? こちらはMT4のバックテストで矢印を書き換えるリペイントの様子 上記の動画...

 

シグナルインジケーターのリペイントは大きく分けて2種類

リペイントするインジケーターはサイン(矢印)の出し方で大きく2種類のタイプに別れます。

もともとサインがあったのに後から削除されるもの。

これは履歴と照らし合わせた時に「サインがないのにエントリーされた!」と言われるタイプのものです。

もともと矢印がなかったのに、後からサインが出るもの。

これは履歴と照らし合わせた時に「チャートにサインがないのにエントリーされない!」と言われるタイプのものです。

カオチャイ
カオチャイ
どちらのリペイントも自動売買システムを疑いたくなってしまいますが、原因はリペイントするシグナルインジケーターにある場合がほとんどです

 

パラメータを変更すると矢印と履歴は一致しません

世の中にある自動売買システムの殆どが、ご利用のサインインジケーターのデフォルトの設定のサインを読み取ります

勝率表示などのサポート系インジケーターも含め、世の中のBO自動売買システムやインジケーターのほぼ全てがこのデフォルトの値を読み込む仕様です。

ですので、MT4のチャート上からサインインジケーターの期間などのパラメータを変更すると、MT4の矢印の表示位置は変わりますが、SignalAUTOはお使いのサインツールのデフォルトのパラメータを読み込んでエントリーしますので、MT4に表示されるサイン(矢印)と履歴の誤差が生じてしまいます。

ですので、基本的にはパラメータは触ることができません。

どうしてもいじりたいという人は有料で専用ツールを制作してパラメータの変更を可能にするか、サポート対象外となりますがパラメータの設定方法はこちらに詳しく書きましたのでぜひ御覧ください。

yuki
yuki
また、ハイローオートのObject AUTOやAlert AUTOを使用する場合に限ってはパラメータの変更が可能です

 

見えない矢印がでている(開発者の技術不足)

リペイントツール上記は「矢印がでていないのにハイローオートが勝手にエントリーをした!」というインジケーターのシグナルをハイローオートの機能を使って強制的に表示させたものです。

インジケーターの矢印ですが、実は開発者の技術によって上記のように一つのローソクにハイとローを出してしまうものや、見た目には見えないエントリーシグナルはだしているのに矢印は表示できていないものなどが存在します。

この場合も残念ながら履歴と矢印が一致しないことが起こります。見えない矢印は一見対処のしようがありませんが、ハイローオートの矢印強制表示の方法である程度見分けることができます。

 

フライングエントリーが原因でエントリーしない事もある

たまにですが、フライングエントリーを設定している時にエントリーしないという症状が起こります。

例えばフライングを1秒に設定していると、自動売買システムは00秒よりも1秒早い59秒地点に矢印が存在するかを確認します。

この時に、59秒時点ではサインができておらず、その後00秒までの1秒の間でサインが出現したという場合はMT4に矢印ができているのにエントリーしていない、ハイローオートの履歴にも残らないということが起こります。

59秒時点でハイローオートは矢印がないのでエントリーはしないと判断しますが、MT4側はその後の瞬間でできた矢印を00秒時点で確定してチャートに残してしまいますからね。

また、PCの時刻がネットと同期せずにずれている場合も上記と同様の事が起こる可能性があります。

 

ハイローオーストラリアの履歴とMT4の履歴には差が出る

勝率

上の画像はハイローオートの取引履歴ですが、こちらはハイローオーストラリアの取引履歴画面を直接読み取ってそのまま転載しています。

そのため、MT4のサインと一致しないということが起こります。

これはサインツールがリペイントをしていたり、1分足以下の取引ですと秒単位で勝敗が変わりますが、判定ギリギリの時間で値が大きく動くとMT4のタイミングでは勝ったのに、実際の取引タイミングでは1~2秒差で負けたということが原因です。

 

PCの時刻が同期を取れていない時はエントリーができない

ここは少々専門的な話がはいる事例です。難しい方はPCの時計がネットワークと同期している事だけを確認していただき、読み飛ばしていただいて大丈夫です。

ハイローオートをお使いの方ならご存知の、インデックスを設定して矢印のを読み取る「SignalAUTO」インジケーターはどんなお仕事をしているのかというと、お客様がお使いのサインツールが矢印を作ったと同時にシグナルファイルというものを出力し、もし矢印が消失したら合わせてシグナルファイルを削除します。

そのため、ローソク足形成中はせっせとシグナルファイルの作成と削除を繰り返しています。

そして本体であるハイローオートのお仕事ですが、こちらはハイローオーストラリアにエントリーをする事がメインの仕事なのですが、エントリーするために00秒時点(フライングエントリーを設定していたらその時間も加味した時点)で、SignalAUTOがせっせと作ったシグナルファイルが存在するかをチェックし、もしシグナルファイルが存在していればハイローオーストラリアにエントリーサインを送信します。

SignalAUTO・・MT4の矢印を読み取ってシグナルファイルを作り、ハイローオート本体に知らせる

ハイローオート本体・・SignalAUTOのシグナルファイルを読み取ってハイローオーストラリアにエントリーする

これを前提としまして、もしMT4のサーバータイムがパソコンの時計とコンマ数秒ずれていると、サーバータイムの時間に従ってローソク足のサインをせっせと読み取り、シグナルを作ったり消したりを繰り返しているSignalAUTOと、パソコンの時計に従って00秒の時点でシグナルがあるかどうかをチェックするハイローオートが行き違いになってしまうことがあります。

この行き違いでなにが起こるかと言いますと、SignalAUTOがシグナルを出したり消したりしている真っ最中に、ハイローオートのエントリーをチェックする瞬間が来たときに、コンマ数秒のタイミングでSignalAUTOがシグナルを削除するのが間に合わないという状態が起きます。

つまり00秒ではシグナルがあったのでハイローオートはハイローオーストラリアにエントリーしましたが、コンマ数秒後にSignalAUTOが行き違いでシグナル(矢印)を削除しました。

カオチャイ
カオチャイ
つまり、MT4のチャートにはサインがないのに、ハイローオーストラリアではエントリーされてしまっているんです!
yuki
yuki
これはまれな症状ではありますが、PCとサーバーの時計の完全な同期は難しいので完全に防ぐことは残念ながらできません

 

そしてフライングエントリーを1秒以上に設定している場合、ローソク足が確定する時間とエントリータイムの瞬間がさらに広がりますので、この現象が現れる可能性が上がります。

カオチャイ
カオチャイ
ここでちょっと自動売買に詳しい人でしたら、「MT4のローソク足が確定したのを確認してからハイローオートでエントリーする仕組みにすればよいのでは?」と思われるかもしれませんが・・

その仕組みですとフライングエントリーが実装できなくなります。ハイローオートはフライングエントリーを調整することでハイローオーストラリアで00秒エントリーをすることに重点を置いておりますので、現在の仕様となっていること、ご理解いただけたら幸いです

 

エントリーが遅れたり早くなる原因

バイナリーオプションのエントリーの遅延

次にエントリーが数秒ずれたりする原因もご紹介しておきます。

わかりやすい理由としては「ハイローオーストラリア側が混雑していてエントリーが遅れる」が多いです。次に多いのが「スペックが高くないPCで多くの通貨を稼働させた」場合ですね。

しかしその他にもエントリーがずれる原因はありますのでご紹介しておきますね。

 

複数同時エントリーは少しずつハイロー側でタイミングがずらされる

ハイローオートで10種類以上の複数の通貨を動かしていますと、たまに2~3個のエントリーポイントが同じ足で重なることがあります。

この際に、ハイローオートは同時にエントリー指示を出すのですが、そのエントリー指示をうけとったハイローオーストラリアは残念ながら同時にエントリーを許可しません。

ハイローオーストラリアは一つのアカウントからの同時注文は、時間をずらしながら一つずつ順番にエントリー処理を行います。

ですので、同時に出した複数の注文は速くて1~2秒、長いと10秒~15秒程度ずらされながらエントリーしていきます。

これはハイローオーストラリアが、悪意のある第三者が何万ものエントリーを同時に注文してサーバーに負荷を与えるといった攻撃を防ぐためにこういった仕様になっております。

ですので、MT4のサインツールのエントリーが同じところで重なった場合は、どんな自動売買システムを使っていてもエントリー時間はずれてしまうのは仕方がないところです。

 

スキャルピングはティックの遅延でエントリーが遅れます

これはサインインジケーターが「サインが完成した次の足でエントリー」するタイプのもので発生します。そして1分足や30秒足など短い時間で取引するほど、エントリーの遅延が良くおこってきます。

この原因ですが、業者から配信されるティックデータ(秒単位のローソク足のデータ)の遅延がおこっているからです。

通信環境やMT4を提供しているFX業者さんのサーバーの強さなどにもよりますが、秒単位ですとローソク足は常に跳んだり、作成されるのが遅れます。

ですので、インジケーターのサインがでるとハイローオートは次足でエントリーする準備をしますが、その次足でティックデータが跳んでしまうとハイローオートはエントリーすることができません。

ですので、秒単位で取引を行うインジケーターはエントリーの遅延が起こっているように見えてしまうのです。

これに関しては、ティックデーターが飛びにくい業者(オアンダデューカス)をお使いになられるか、もう少し長い足を使っていただくしか無いのが現状でございます。

 

その他のエントリーの疑問はQ&Aをどうぞ!

 

ハイローオート特有のエントリー条件

ハイローオートは一つの通貨で同じゲーム時間の場合、持てるポジションは一つだけ。

ハイローオートは同一通貨で同一ゲームの場合、例えばドル円の15分判定だとすると、そこでエントリーできるポジションは一つだけで、そのポジションの判定が終わるまでは次のエントリーはできません。(これがドル円とユロル、ドル円の15分というように条件がずれれば複数エントリーできます)

ですので、MT4には1分足でサインを表示して、ハイローオーストラリア側は15分判定のゲームという時などは、最初に1分足でエントリーしたポジションの判定が終わる前に次の矢印が出てしまうことが起きますが、残念ながらエントリーできません。(複数ポジションを許可する方法もありますがサポート対象外です)

また、マーチンも同様で、例えば2つ連続してサインが出ても、前の矢印が負けてマーチンポジション持った時はエントリーしません。

なぜハイローオートはこの様な仕様にしているかといいますと、実はハイローオーストラリアは不定期に読み取りの書式を変更しておりまして、もし自動売買稼働中に書式が変更されるとエントリーが連打されてしまうなどの誤動作が起こり、重大な事故につながる可能性があるのでそれを防ぐための施策です。

どうしても複数ポジションを持ちたいというお客様は、自己責任にてハイローオートの取引画面より複数ポジション許可のスイッチがありますので、デモトレードで試した上でご利用下さいませ。

 

エントリー許容時間の調整

エントリー許容時間

バイナリーオプションのサインインジケーターの中には、「チャート上で新しいローソク足ができた瞬間に、一つ前の足にサインを出す」ものがたくさんあります。

しかしティック(秒)単位で動くMT4のローソク足ですが、ティックの配信が遅れてたまに2~3秒、酷いときだと10秒以上も新しいローソクが作られない場合があります。(これはFX業者のサーバーや通信速度などの能力の問題になります。また、深夜から日本市場が始まる9時前まではティック飛びやすかったりします)

つまり、ハイローオートが矢印(サイン)ができているかどうかを調べる00秒のタイミングで、たまたまティックが遅れて配信されず、新しいローソク足がまだ作られていない場合に、「チャート上で新しいローソク足ができた瞬間に、一つ前の足にサインを出す」インジケーターは、エントリーできません。

カオチャイ
カオチャイ
新しいローソク足と矢印サインを同じタイミングで作るインジケーターはティックの配信がほんの少しでも遅れるとサインが出るのも遅れて00秒エントリーに間に合わないんです

 

この場合、ティックが00秒から遅れたとはいえMT4にはサインは遅れて表示されます。しかしハイローオートは00秒時点でサインがなにもなかったのでエントリーができていない状態になります。

つまりMT4には遅れてできたエントリーサインがあるのに、ハイローオーストラリアの履歴を見るとエントリーできていないじゃないかという問題が起こります。

yuki
yuki
これを解決するのが「エントリー許容時間」です

 

エントリー許容時間ですが、「00秒から指定した◯◯秒を経過するまでに新しいローソクを作ってサインが点灯したらエントリーするよ」というものです。

デフォルトでは20秒に設定してありますが、これは「ティックが飛んでローソク足ができなくても、00秒から20秒の間に一瞬でもローソクができて前足にサインが点灯すればエントリーしますよ。いう意味です。

エントリー許容時間を59秒間に設定すると、チャート上でいつサインが出てもエントリーされるようになります。ただし、その際にサインが出たローソク足の始値とエントリーの価格が著しく異なる価格になる可能性がありますので、ご自分の手法や用途に応じて調整してください。

カオチャイ
カオチャイ
これはエントリーしないこともあるという事を許容できるならば、1分などの短い時間のゲームは許容時間を短め(10秒以内)、長いゲーム時間でしたら許容時間は多め(20~30秒くらい)でよろしいかとおもいます
yuki
yuki
また、もし同時取引窓数が多いようでしたら、リトライ回数も増やして下さい。最大10回までですが、基本的に9通貨以上同時に動かす場合は最大の10回がおすすめです!

ハイローオーストラリアで00秒エントリーがずれてしまう理由 まとめ

yuki
yuki
チャートと実際のエントリーがずれる場合は、99.9%上記のような原因にあてはまります
カオチャイ
カオチャイ
もし原因の特定が難しいようでしたらお問い合わせからご連絡くださいね!ただし原因解決には画像がないと難しいですので、お問い合わせ内容と一緒に送ってくださるようお願いします
MT4のリペイントとは?矢印インジケーターの見分け方 MT4のインジケーターに見かけるリペイントとは? こちらはMT4のバックテストで矢印を書き換えるリペイントの様子 上記の動画...
バイナリー自動売買システムハイローオート
【ハイローオーストラリア対応】バイナリーオプション自動売買システムハイローオーストラリアでの取引を24時間自動売買化するシステム、ハイローオートのご紹介です。 複数同時通貨のエントリーや、口座凍結防止機能も搭載。もちろんVPSにも対応しております。 無料デモトレードも可能ですのでぜひ御覧くださいませ。...
ABOUT ME
YUKI
MT4をこよなく愛する開発者です。FX-EAラボの他に、サヤ取りを追求した株ラボ、MT4、MT5のツール制作に特化したシストレファクトリー、EAやインジケーターに認証やペイパル決済機能が付けられるMQLAuthシステムなどの開発にも関わっています。 YUKIプロフィール