エキスパート: 多通貨 OnTick(string symbol) イベントハンドラ - ページ 3 1234 新しいコメント Mykola Demko 2013.09.11 19:27 #21 興味深く再読。もしMQが、デフォルトでDCサーバー上のグラスのブロードキャストをオンにして、DCがそれをオフにすることを許さないのであれば、タンバリンを使ったこれらのダンスは必要ないだろう。それはビッドとアスクだけの空のベットであるが、ブロードキャストされるべきである。そうすれば、OnBookEventで必要なインストゥルメントをサブスクライブすることで、多通貨のティックを簡単に追跡できます。実際、OnBookEventは標準的な多通貨ティック・ハンドラーです。そして今のところ、それはガラスを翻訳するディリングでのみ可能です。 Konstantin Gruzdev 2013.09.15 20:21 #22 micle:記事のコードは古いです。そう、このコードはOnChartEvent ハンドラがまだテスターで動作していなかった時に書かれたものです。Urain: 興味深く再読。もしMQがデフォルトでDCサーバーのビーカー放送を有効にし、DCがそれをオフにすることを許さないのであれば、これらのすべてのタンバリンダンスは必要ないだろう!MQがデフォルトでDCサーバーのビーカー放送を有効にし、DCがそれをオフにすることを許さないのであれば。ビッドとアスクだけの空のベットであっても、ブロードキャストされるべきである。そうすれば、OnBookEventで必要なインストゥルメントをサブスクライブすることで、多通貨のティックを簡単に追跡できます。実際、OnBookEventは標準的な多通貨ティック・ハンドラーです。そして今のところ、それはグラスを翻訳するディリングでのみ可能である。OnBookEventで一度遊んでみた。専門家向けには、一般的にはうまくいくだろう。しかし、私なら「ブロードキャスト」を削除して、チャート用のサブスクリプションを作るだろう。もう一つのマイナス点は、インジケーターでは使えないことだ。テスターでは試していません。このトピックに関する最初の出版物以来、多くのタンバリンが殺された。もっと受け入れやすいものが登場した。いつか公開するかもしれない。 Mykola Demko 2013.09.16 19:40 #23 Lizar:そう、このコードはOnChartEventハンドラーがまだテスターで動作していなかったときに書いたものだ。OnBookEventで遊んでいました。専門家向けには、一般的には、それでいいだろう。しかし、私なら「ブロードキャスト」を削除し、チャート用のサブスクリプションを作るだろう。もう一つのマイナス点は、インジケーターでは動作しないこと。テスターでは試していません。このトピックに関する最初の出版物以来、多くのタンバリンが殺されてきた。もっと受け入れやすいものが登場した。いつか発表するかもしれない。もっと微妙な方法がある。チャートのためのサブスクリプションではなく、特定のExpert Advisorのためのサブスクリプションだ。つまり、購読しないとチャートのシグナルを受信できない。したがって、放送はかなり質的に処理されます。スタックを持つ2つのチャートで添付ファイルのフクロウを実行します。各フクロウは購読しているシグナルのみを受信する。 ファイル: MarketDepth.mq5 2 kb emred 2015.10.31 23:53 #24 Lizarさん、こんにちは、あなたのコードを使用したいのですが、私のブローカーはmql4言語(TradeMasterFX Meta, Version: 4.00 Build 890)を使用しています、 私のターミナルをmql5をサポートするターミナルにアップグレードする方法はありますか?アドバイスありがとうございます、エムール Andrey Khatimlianskii 2018.10.09 23:19 #25 Konstantin Gruzdev:ディスカッションへようこそ) 取引、自動取引システム、取引戦略のテストに関するフォーラム mql5言語の特徴、作業の機微とテクニック Andrey Khatimlianskii, 2018.10.09 23:18 spyを使用して空のEAを50の商品で実行すると、メッセージがログに溢れ始めます: 2018.10.09 22:49:24.730 Spy (AUDNZD,W1) indicator is too slow, 4281 ms. rewrite the indicator, please インジケータに500ミリ秒のkastumイベント送信頻度のフィルタを追加すると、エラーは少なくなりますが、消えません。 私だけでしょうか? EA コード: #define ForEach(index,array) for(int index=0, max_##index=ArraySize(array); index<max_##index; index++) string Symbols[]; int OnInit() { ArrayResize( Symbols, SymbolsTotal(true) ); ForEach( i, Symbols ) { Symbols[i] = SymbolName(i,true); if( Symbols[i] != _Symbol ) iCustom( Symbols[i], PERIOD_W1, "Spy.ex5", ChartID(), i ); } return(INIT_SUCCEEDED); } void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) { if( id == CHARTEVENT_CUSTOM ) OnTickMS( Symbols[ (int)lparam ] ); } void OnTick() { CheckSignal( _Symbol ); } void OnTickMS(const string &Symb) { CheckSignal( Symb ); } void CheckSignal(const string symbol) { //コメント( シンボル, ": "、 // DoubleToString( SymbolInfoDouble( symbol, SYMBOL_BID ), 5 ), " / "、 // DoubleToString( SymbolInfoDouble( symbol, SYMBOL_ASK ), 5 )).); return; } プロファイラに よると、iCustom, OnChartEventの95%はほとんど何もしていません。プロセッサ(i5-3570)の負荷は75%です。 Особенности языка mql5, тонкости и приёмы работы 2018.09.21www.mql5.com В данной теме будут обсуждаться недокументированные приёмы работы с языком mql5, примеры решения тех, или иных задач... nra_ 2018.10.14 21:22 #26 Andrey Khatimlianskii:議論を呼びかけたい) EAのOnDeinit()の中で、IndicatorRelease() とIndicatorDelete()を適切な回数だけ使ってみるという提案があります。 Andrey Khatimlianskii 2018.10.16 15:14 #27 nra_: あなたのEAのOnDeinit()で適切な回数だけIndicatorRelease() とIndicatorDelete()を使ってみては どうでしょうか。OnDeinitに来るべきではありません。 EAを削除した後、メモリはしばらくして解放されます。 Stanislav Korotky 2018.10.16 23:30 #28 Andrey Khatimlianskii:OnDeinitに行き着く必要はない。Expert Advisorを削除した後、メモリはしばらくして解放されます。4281 ミリ秒がどこで浪費されているのか、インジケーターをプロファイリングすることをお勧めします。多分、メッセージ送信 そのものにあるのでしょう。 Andrey Khatimlianskii 2018.10.17 01:37 #29 Stanislav Korotky:インジケーターをプロファイリングして、4281 ミリ秒がどこで浪費されたかを調べるのは合理的だ。メッセージ送信自体にあるかもしれない。やって みました。 ある時点で EventChartCustom が 3 秒以上動き始めます。 nra_ 2018.10.18 21:54 #30 EA の OnDeinit が OnDeinit に来てはいけないことは理解していますが、これは理想的です。テストの15時間中、Expert AdvisorでOnInitが1回呼び出されたのは確かですか? 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
興味深く再読。
もしMQが、デフォルトでDCサーバー上のグラスのブロードキャストをオンにして、DCがそれをオフにすることを許さないのであれば、タンバリンを使ったこれらのダンスは必要ないだろう。それはビッドとアスクだけの空のベットであるが、ブロードキャストされるべきである。
そうすれば、OnBookEventで必要なインストゥルメントをサブスクライブすることで、多通貨のティックを簡単に追跡できます。
実際、OnBookEventは標準的な多通貨ティック・ハンドラーです。
そして今のところ、それはガラスを翻訳するディリングでのみ可能です。
記事のコードは古いです。
そう、このコードはOnChartEvent ハンドラがまだテスターで動作していなかった時に書かれたものです。
興味深く再読。
もしMQがデフォルトでDCサーバーのビーカー放送を有効にし、DCがそれをオフにすることを許さないのであれば、これらのすべてのタンバリンダンスは必要ないだろう!MQがデフォルトでDCサーバーのビーカー放送を有効にし、DCがそれをオフにすることを許さないのであれば。ビッドとアスクだけの空のベットであっても、ブロードキャストされるべきである。
そうすれば、OnBookEventで必要なインストゥルメントをサブスクライブすることで、多通貨のティックを簡単に追跡できます。
実際、OnBookEventは標準的な多通貨ティック・ハンドラーです。
そして今のところ、それはグラスを翻訳するディリングでのみ可能である。
OnBookEventで一度遊んでみた。専門家向けには、一般的にはうまくいくだろう。しかし、私なら「ブロードキャスト」を削除して、チャート用のサブスクリプションを作るだろう。もう一つのマイナス点は、インジケーターでは使えないことだ。テスターでは試していません。
このトピックに関する最初の出版物以来、多くのタンバリンが殺された。もっと受け入れやすいものが登場した。いつか公開するかもしれない。
そう、このコードはOnChartEventハンドラーがまだテスターで動作していなかったときに書いたものだ。
OnBookEventで遊んでいました。専門家向けには、一般的には、それでいいだろう。しかし、私なら「ブロードキャスト」を削除し、チャート用のサブスクリプションを作るだろう。もう一つのマイナス点は、インジケーターでは動作しないこと。テスターでは試していません。
このトピックに関する最初の出版物以来、多くのタンバリンが殺されてきた。もっと受け入れやすいものが登場した。いつか発表するかもしれない。
もっと微妙な方法がある。チャートのためのサブスクリプションではなく、特定のExpert Advisorのためのサブスクリプションだ。
つまり、購読しないとチャートのシグナルを受信できない。したがって、放送はかなり質的に処理されます。
スタックを持つ2つのチャートで添付ファイルのフクロウを実行します。各フクロウは購読しているシグナルのみを受信する。
Lizarさん、こんにちは、
あなたのコードを使用したいのですが、私のブローカーはmql4言語(TradeMasterFX Meta, Version: 4.00 Build 890)を使用しています、
私のターミナルをmql5をサポートするターミナルにアップグレードする方法はありますか?
アドバイスありがとうございます、
エムール
ディスカッションへようこそ)
取引、自動取引システム、取引戦略のテストに関するフォーラム
mql5言語の特徴、作業の機微とテクニック
Andrey Khatimlianskii, 2018.10.09 23:18
spyを使用して空のEAを50の商品で実行すると、メッセージがログに溢れ始めます:
インジケータに500ミリ秒のkastumイベント送信頻度のフィルタを追加すると、エラーは少なくなりますが、消えません。
私だけでしょうか?
EA コード:
プロファイラに よると、iCustom, OnChartEventの95%はほとんど何もしていません。プロセッサ(i5-3570)の負荷は75%です。
議論を呼びかけたい)
あなたのEAのOnDeinit()で適切な回数だけIndicatorRelease() とIndicatorDelete()を使ってみては どうでしょうか。
OnDeinitに来るべきではありません。
EAを削除した後、メモリはしばらくして解放されます。
OnDeinitに行き着く必要はない。
Expert Advisorを削除した後、メモリはしばらくして解放されます。
4281 ミリ秒がどこで浪費されているのか、インジケーターをプロファイリングすることをお勧めします。多分、メッセージ送信 そのものにあるのでしょう。
インジケーターをプロファイリングして、4281 ミリ秒がどこで浪費されたかを調べるのは合理的だ。メッセージ送信自体にあるかもしれない。
やって みました。
ある時点で EventChartCustom が 3 秒以上動き始めます。