インディケータ: Ping - ページ 2 123 新しいコメント fxsaber 2017.12.12 19:32 #11 fxsaber:実は小さくない~5ミリ秒。ゼロpingに悩む人の庭に一石を投じる。ビルド1703では、平均ラグは変わらない。しかし、サージはかなり少なくなった。実験を行った。MT5を搭載したマシンでトレントを開始すると、このような状況になった。つまり、誰かが積極的にネットワークを使用している場合、端末のラグが最大2秒になる可能性があります。これは、ネットワークチャネルが1つではなく、多くのクライアントに依存するVPSを使用している人にとっては、特に理解することが重要です。そして、そのようなVPSにニュースTSを置くことは、例えば、非常に危険になります。 Aleksey Vyazmikin 2018.06.22 00:28 #12 fxsaber:そして実際、Expert Advisorのインジケーターは、Expert Advisorとは異なり、すべてのインジケーターが1つのスレッドで実行されるため、当初はボトルネックになると言われていた。Expert Advisorsのラグについては別途検討が必要です。ラグを取得する機能は説明文にありますので、難しいことではありません。Expert Advisorで呼び出されたインジケーターは1つのスレッドで実行され、Expert Advisorは何らかのタスクそのものを並行して実行すると、どこに書いてありましたか? インジケータは独立したプログラムであり、並列スレッドで簡単に計算できますが、何らかの理由で計算が完了しない場合は待機する必要があります。ストラテジー・テスターでは、すべてが1つのスレッドになっていることは知っています。 fxsaber 2018.06.22 19:37 #13 Aleksey Vyazmikin:Expert Advisorで呼び出されたインジケータは1つのスレッドで実行され、Expert Advisorは何らかの形でタスクそのものを並行して実行すると、どこに記載されていたのか教えてください。 取引、自動取引システム、取引戦略のテストに関するフォーラム Expert Advisorのアプリケーションの意味を説明してください。 Renat Fatkhullin, 2010.02.06 13:06 インジケーターは、計算された実体であり、動作するための厳格な要件を持っています。インジケータは、その動作が遅くなったり、データを生成しなかったりする権利はありません(データは無条件で要求されます)。インジケータは、各価格ティックを処理する独自のフローで動作し、遅延はシステム全体のブロックにつながります(結果は非常に多岐にわたります)。オブジェクトを使用することで、インジケーターに重大なブレーキがかかることを懸念していました(オブジェクトを使用する場合、メッセージの特別な非同期キューを経由します)。実験によると、オブジェクトを合理的に 使えば(一度に何百、何千ものオブジェクトを動かさなければ)、計算に大きな影響を与えることはない。これが、カスタム・インジケータでオブジェクト管理関数の使用を許可した理由です。しかし、その気になれば、インジケーター内のオブジェクトを使った非知的な作業によって、ターミナルに簡単にブレーキをかけることができます。インジケータとは何かを理解するためには、より深く、つまりヒストリカル・デー タへのアクセスについて調べる必要があります。インジケータが OnCalculate で呼び出されると、利用可能な履歴が与えられます。ログにカウンターを表示して)その量を見ると、各ティックで数十メガバイトから数百メガバイトが 実際に与えられていることがわかります:これらのアレイはどこから来るのか? グローバル・ヒストリー・マネージャーからで、ティックごとに更新され、キャッシュされ、オンデマンドでタイムフレームを再作成する。 端末が読み込みをブロックし、各インジケーターに順番に提供します。いくつのインジケーターが提供されますか? 理論的には無制限です。 メモリが極端に不足しているため、インジケータは1つずつ動作するしかありません。 MetaTrader 4と比較してMetaTrader 5の特徴は、履歴の容量が何倍にも増えたことと、インジケーターの再計算を高速に(各インジケーターの履歴を個別に何十メガバイトもコピーせずに)行うという非常に難しい問題を解決したことです。同じタイムフレームにある2つ(またはそれ以上)の同じインディケータでさえ、1つの計算コピーにマージされ、1回カウントされます。今、あなたはこの仕組み全体を取り込んで遅くし、実際に指標から純粋なエキスパートを作ることを提案しています。これが技術的に不合理であることは明らかです。インジケーターにインタラクティブ性を加えることは、データへのアクセスというターミナル・コアで働くメカニズムを即座に破壊することになる。その結果、「ターミナルが遅い、インジケーターも描けない、チャートも遅延して描画される!」ということになり、「そうだ、私の派手なインジケーターが動くのは彼のせいだ」とは誰も言わないでしょう。そしてこの場合でも、「合理的な分離を提供していない、マルチスレッドソフトウェアの書き方を知らない、など」と非難されるだろう。したがって、インジケーターの動作や原理が根本的に変わることはないだろう。 Aleksey Vyazmikin 2018.06.22 20:02 #14 fxsaber: 情報をありがとう。 2010年という年号がすぐに目に留まりますが、"Never say never "ですから、現在どうなっているのか、本当に変更がないのか、興味深いところです。 それに、Renatの回答から、各インジケーターはそれぞれのスレッドで動作することがわかります。 レナトは、遅延の原因はインディケータに大量のデータ(実際、 各ティックで 数十メガバイトから数百メガバイトのデータが 提供される)を提供する必要があるためだと主張していますが、今日の実情によれば、これはそれほど大量のデータではありません。同じインディケータを同じインストゥルメントで使用する場合、履歴データの共同ストリームが編成されますが、インディケータ自体の計算には別のストリームが編成される可能性があります。 たとえそうだとしても、指標を1つのクラスタに統合し、そこでOpenCLを適用することは十分に可能です(組織化に関するダミー向けの情報が少ないため、私自身は適用したことがありません)。 fxsaber 2018.06.22 21:39 #15 Aleksey Vyazmikin:今、何が起こっているのか興味がある1、2、3、4 Aleksey Vyazmikin 2018.06.22 23:12 #16 fxsaber:1、2、3、4ありがとう、検索結果をよく見てみたよ。ほとんど同じようなものばかりだ。 その結果、シンボルごとに1つのスレッドがあり、そのシンボル上のすべてのインジケーターに対応しています。そして、それぞれの(?)EAに対してスレッドを持っています。では、異なるチャートからの情報を意思決定に使用する場合、インジケーターの使用が望ましいのでしょうか? インジケーターには、計算の履歴が残るという便利な利点があります。 おそらく、各ティックで計算を行う場合、インジケータは最も関連性の高いデータを提供しようとするため、ボトルネックになる可能性があります。エキスパートアドバイザーがインジケーターに情報を要求する限り、現在のポジションの状況を確認した後、このデータはすでに受信可能な状態になっています。また、インジケーターの計算は新しいバーのオープンのみで行います。インジケーターのロジックを組み合わせれば、さらに速くなります。 fxsaber 2018.06.22 23:42 #17 Aleksey Vyazmikin: それとも違う意見? スレッドを変更してください。 Manoel Calixto Da Silva Neto 2019.06.14 02:41 #18 Pingの単位は秒ですか? জচেলিনো 2019.06.14 13:40 #19 Manoel Calixto Da Silva Neto: こんにちは、pingの単位は秒ですか?そう書いてありますよ。読みませんでしたか? "引用の遅延はミリ秒単位で計算されます。" fxsaber 2021.03.12 10:56 #20 私はこの素晴らしいインジケーターを思い出した。 これはpingがゼロのマシンからの写真だ。ターミナルの内部遅延は平均して2ミリ秒であることがわかった。0-9msの範囲でジャンプする。 例えば、2つのティックがサーバーに届きました。ターミナルでは、最初のティックの10ms後ではなく、10-19ms後に2番目のティックが表示されます。平均すると12ミリ秒である。 123 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
実は小さくない~5ミリ秒。ゼロpingに悩む人の庭に一石を投じる。
ビルド1703では、平均ラグは変わらない。しかし、サージはかなり少なくなった。
実験を行った。MT5を搭載したマシンでトレントを開始すると、このような状況になった。
つまり、誰かが積極的にネットワークを使用している場合、端末のラグが最大2秒になる可能性があります。これは、ネットワークチャネルが1つではなく、多くのクライアントに依存するVPSを使用している人にとっては、特に理解することが重要です。そして、そのようなVPSにニュースTSを置くことは、例えば、非常に危険になります。
そして実際、Expert Advisorのインジケーターは、Expert Advisorとは異なり、すべてのインジケーターが1つのスレッドで実行されるため、当初はボトルネックになると言われていた。Expert Advisorsのラグについては別途検討が必要です。ラグを取得する機能は説明文にありますので、難しいことではありません。
Expert Advisorで呼び出されたインジケーターは1つのスレッドで実行され、Expert Advisorは何らかのタスクそのものを並行して実行すると、どこに書いてありましたか?
インジケータは独立したプログラムであり、並列スレッドで簡単に計算できますが、何らかの理由で計算が完了しない場合は待機する必要があります。ストラテジー・テスターでは、すべてが1つのスレッドになっていることは知っています。
Expert Advisorで呼び出されたインジケータは1つのスレッドで実行され、Expert Advisorは何らかの形でタスクそのものを並行して実行すると、どこに記載されていたのか教えてください。
取引、自動取引システム、取引戦略のテストに関するフォーラム
Expert Advisorのアプリケーションの意味を説明してください。
Renat Fatkhullin, 2010.02.06 13:06
インジケーターは、計算された実体であり、動作するための厳格な要件を持っています。インジケータは、その動作が遅くなったり、データを生成しなかったりする権利はありません(データは無条件で要求されます)。
インジケータは、各価格ティックを処理する独自のフローで動作し、遅延はシステム全体のブロックにつながります(結果は非常に多岐にわたります)。
オブジェクトを使用することで、インジケーターに重大なブレーキがかかることを懸念していました(オブジェクトを使用する場合、メッセージの特別な非同期キューを経由します)。実験によると、オブジェクトを合理的に 使えば(一度に何百、何千ものオブジェクトを動かさなければ)、計算に大きな影響を与えることはない。これが、カスタム・インジケータでオブジェクト管理関数の使用を許可した理由です。しかし、その気になれば、インジケーター内のオブジェクトを使った非知的な作業によって、ターミナルに簡単にブレーキをかけることができます。
インジケータとは何かを理解するためには、より深く、つまりヒストリカル・デー タへのアクセスについて調べる必要があります。インジケータが OnCalculate で呼び出されると、利用可能な履歴が与えられます。
ログにカウンターを表示して)その量を見ると、各ティックで数十メガバイトから数百メガバイトが 実際に与えられていることがわかります:
グローバル・ヒストリー・マネージャーからで、ティックごとに更新され、キャッシュされ、オンデマンドでタイムフレームを再作成する。
端末が読み込みをブロックし、各インジケーターに順番に提供します。
理論的には無制限です。
メモリが極端に不足しているため、インジケータは1つずつ動作するしかありません。
MetaTrader 4と比較してMetaTrader 5の特徴は、履歴の容量が何倍にも増えたことと、インジケーターの再計算を高速に(各インジケーターの履歴を個別に何十メガバイトもコピーせずに)行うという非常に難しい問題を解決したことです。同じタイムフレームにある2つ(またはそれ以上)の同じインディケータでさえ、1つの計算コピーにマージされ、1回カウントされます。
今、あなたはこの仕組み全体を取り込んで遅くし、実際に指標から純粋なエキスパートを作ることを提案しています。これが技術的に不合理であることは明らかです。インジケーターにインタラクティブ性を加えることは、データへのアクセスというターミナル・コアで働くメカニズムを即座に破壊することになる。
その結果、「ターミナルが遅い、インジケーターも描けない、チャートも遅延して描画される!」ということになり、「そうだ、私の派手なインジケーターが動くのは彼のせいだ」とは誰も言わないでしょう。そしてこの場合でも、「合理的な分離を提供していない、マルチスレッドソフトウェアの書き方を知らない、など」と非難されるだろう。
したがって、インジケーターの動作や原理が根本的に変わることはないだろう。
情報をありがとう。
2010年という年号がすぐに目に留まりますが、"Never say never "ですから、現在どうなっているのか、本当に変更がないのか、興味深いところです。
それに、Renatの回答から、各インジケーターはそれぞれのスレッドで動作することがわかります。
レナトは、遅延の原因はインディケータに大量のデータ(実際、 各ティックで 数十メガバイトから数百メガバイトのデータが 提供される)を提供する必要があるためだと主張していますが、今日の実情によれば、これはそれほど大量のデータではありません。同じインディケータを同じインストゥルメントで使用する場合、履歴データの共同ストリームが編成されますが、インディケータ自体の計算には別のストリームが編成される可能性があります。
たとえそうだとしても、指標を1つのクラスタに統合し、そこでOpenCLを適用することは十分に可能です(組織化に関するダミー向けの情報が少ないため、私自身は適用したことがありません)。
今、何が起こっているのか興味がある
1、2、3、4
1、2、3、4
ありがとう、検索結果をよく見てみたよ。ほとんど同じようなものばかりだ。
その結果、シンボルごとに1つのスレッドがあり、そのシンボル上のすべてのインジケーターに対応しています。そして、それぞれの(?)EAに対してスレッドを持っています。では、異なるチャートからの情報を意思決定に使用する場合、インジケーターの使用が望ましいのでしょうか?
インジケーターには、計算の履歴が残るという便利な利点があります。
おそらく、各ティックで計算を行う場合、インジケータは最も関連性の高いデータを提供しようとするため、ボトルネックになる可能性があります。エキスパートアドバイザーがインジケーターに情報を要求する限り、現在のポジションの状況を確認した後、このデータはすでに受信可能な状態になっています。また、インジケーターの計算は新しいバーのオープンのみで行います。インジケーターのロジックを組み合わせれば、さらに速くなります。
Aleksey Vyazmikin:
それとも違う意見?
スレッドを変更してください。
こんにちは、pingの単位は秒ですか?
そう書いてありますよ。読みませんでしたか?
"引用の遅延はミリ秒単位で計算されます。"
私はこの素晴らしいインジケーターを思い出した。
これはpingがゼロのマシンからの写真だ。ターミナルの内部遅延は平均して2ミリ秒であることがわかった。0-9msの範囲でジャンプする。
例えば、2つのティックがサーバーに届きました。ターミナルでは、最初のティックの10ms後ではなく、10-19ms後に2番目のティックが表示されます。平均すると12ミリ秒である。