OnBookEventのサブスクリプションが落ちることがあるのですが、そのようなことはあるのでしょうか? - ページ 4 1234567891011...14 新しいコメント A100 2018.07.23 18:02 #31 Stanislav Korotky:ちなみに、他の タイプのイベントは すべて ブロードキャストイベントであり、接続や切断の必要がないだけで、すべてはスクリプトの初期化時に自動的に伝達される。OnChartEventには、通常のイベントと同様にブロードキャストイベントがあります。 そして、通常のものはそちらでやっていただけたら--こちらでもやっていただけます。 Stanislav Korotky 2018.07.23 21:42 #32 A100:OnChartEventは、通常のイベントと同様にブロードキャストイベントを受信します。そして、そこで放送ができるのであれば、ここでも放送ができる。また、他のイベントOnTickやOnCalculateはどうでしょうか?放送に異論はありませんか?OnChartEventは、添付ファイルにもかかわらず、ブロードキャストされます。もし、「すべて」という言葉に異議があるのなら、「多く」に置き換えます。要は、これまでのすべての選択肢で、誰かが無効化する可能性を排除しているのです。 補正があるかどうか。 Stanislav Korotky 2018.07.23 21:43 #33 prostotrader:朗報です。 どのようなエラーなのでしょうか?取引不能の件、全く同じ書き込みがありますね。 A100 2018.07.23 22:27 #34 prostotrader:無効なブックトランザクションエラーの ため、購読に失敗していますMarketBookReleaseの 間接的な呼び出しが原因で失敗する - 今までにそれが判明していないのは奇妙だ A100 2018.07.23 22:51 #35 prostotrader:MarketBookReleaseを呼び出さないが、ログに無効なブックトランザクションが 表示される場合OnBookEventが発呼を停止する(サブスクリプションが「落ちる」と言ってもよい)。このスレッドで議論されているエラーとは全く別の原因です。一方の原因を排除しても、もう一方の原因はそれ自体では消滅しない ここと同じようにhttps://www.mql5.com/ru/forum/1111/page2237#comment_8159123 エラーの形は同じだが、一方を修正する方法が他方に合わない、つまり原因が違うのだ。 Ошибки, баги, вопросы 2018.07.23www.mql5.com Общее обсуждение: Ошибки, баги, вопросы A100 2018.07.23 23:01 #36 prostotrader:きっとこれがバグの原因なのでしょう。開発者が修正しましたので、新しいビルドが出たら、その時に「あなたの」エラーを確認します。 テスト例は簡単で、1番目のExpert AdvisorでMarketBookAdd( x )を呼び出し、2番目のExpert AdvisorでMarketBookRelease( x )を呼び出す...というものです。でOnBookEvent( x ) イベントを待ち、1つ目のエキスパートで prostotrader 2018.07.23 23:03 #37 A100: チェックの例は簡単で、1番目のEAでMarketBookAdd( x )を呼び出し、2番目のMarketBookRelease( x )で呼び出す...というものです。そして、1回目のイベントで待つ同じシンボルに書いたことを実行すると、当然、同じ端末でそのシンボルによってサブスクリプションが破壊されることになります そして、これは正しいのです。 によって追加されました。 サブスクリプションを正しく使用する必要があります。 //+------------------------------------------------------------------+ //| Books.mq5 | //| Copyright 2018 prostotrader | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2018 prostotrader" #property link "https://www.mql5.com" #property version "1.00" bool is_book; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { is_book = false; //--- Add books if(!MarketBookAdd(Symbol())) { MessageBox("Не добавлен стакан фьючерса!", "Ошибка", MB_OK | MB_ICONHAND); return(INIT_FAILED); } else is_book = true; return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { if(is_book = true) MarketBookRelease(Symbol()); } //+------------------------------------------------------------------+ //| BookEvent function | //+------------------------------------------------------------------+ void OnBookEvent(const string &symbol) { if(symbol == Symbol()) { //Plece you code here } } //+------------------------------------------------------------------+ A100 2018.07.23 23:14 #38 prostotrader:同じシンボルに書いたことを実行すると、当然、同じ端末でそのシンボルによってサブスクリプションが破壊されることになりますそして、これは正しいのです。 そして、次のようにします。1番目のEAでMarketBookAdd( x )を呼び出し、2番目のEAでMarketBookAdd( x )とMarketBookRelease( x )を呼び出す...。でOnBookEvent( x ) イベントを待ち、1つ目のエキスパートで prostotrader 2018.07.23 23:17 #39 A100: 次に、1つ目のエキスパートでMarketBookAdd( x )を呼び出し、2つ目のエキスパートでMarketBookAdd( x )とMarketBookRelease( x )を呼び出す...というようにします。でOnBookEvent( x ) イベントを待ち、1つ目のエキスパートで私のコードを使用すれば、購読に関する問題は発生しません。 A100 2018.07.24 02:36 #40 prostotrader:私のコードを使用すれば、問題なく購読できます。 明日、あなたのコードの魔力を確認します...その間に、あなたの意見を聞かせてください。ガラスを開く/閉じる 機能と、そのガラス上のイベントの購読/非購読の機能を組み合わせることができるのか、それとも分離すべきなのか。 1234567891011...14 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ちなみに、他の タイプのイベントは すべて ブロードキャストイベントであり、接続や切断の必要がないだけで、すべてはスクリプトの初期化時に自動的に伝達される。
OnChartEventには、通常のイベントと同様にブロードキャストイベントがあります。
そして、通常のものはそちらでやっていただけたら--こちらでもやっていただけます。
OnChartEventは、通常のイベントと同様にブロードキャストイベントを受信します。
そして、そこで放送ができるのであれば、ここでも放送ができる。
また、他のイベントOnTickやOnCalculateはどうでしょうか?放送に異論はありませんか?OnChartEventは、添付ファイルにもかかわらず、ブロードキャストされます。もし、「すべて」という言葉に異議があるのなら、「多く」に置き換えます。要は、これまでのすべての選択肢で、誰かが無効化する可能性を排除しているのです。
補正があるかどうか。
朗報です。
どのようなエラーなのでしょうか?取引不能の件、全く同じ書き込みがありますね。
無効なブックトランザクションエラーの ため、購読に失敗しています
MarketBookReleaseを呼び出さないが、ログに無効なブックトランザクションが 表示される場合
OnBookEventが発呼を停止する(サブスクリプションが「落ちる」と言ってもよい)。
このスレッドで議論されているエラーとは全く別の原因です。一方の原因を排除しても、もう一方の原因はそれ自体では消滅しない
ここと同じようにhttps://www.mql5.com/ru/forum/1111/page2237#comment_8159123 エラーの形は同じだが、一方を修正する方法が他方に合わない、つまり原因が違うのだ。
きっとこれがバグの原因なのでしょう。
開発者が修正しましたので、新しいビルドが出たら、その時に「あなたの」エラーを確認します。
チェックの例は簡単で、1番目のEAでMarketBookAdd( x )を呼び出し、2番目のMarketBookRelease( x )で呼び出す...というものです。そして、1回目のイベントで待つ
同じシンボルに書いたことを実行すると、当然、同じ端末でそのシンボルによってサブスクリプションが破壊されることになります
そして、これは正しいのです。
によって追加されました。
サブスクリプションを正しく使用する必要があります。
同じシンボルに書いたことを実行すると、当然、同じ端末でそのシンボルによってサブスクリプションが破壊されることになります
そして、これは正しいのです。
次に、1つ目のエキスパートでMarketBookAdd( x )を呼び出し、2つ目のエキスパートでMarketBookAdd( x )とMarketBookRelease( x )を呼び出す...というようにします。でOnBookEvent( x ) イベントを待ち、1つ目のエキスパートで
私のコードを使用すれば、購読に関する問題は発生しません。
私のコードを使用すれば、問題なく購読できます。