Mt4 サポート終了。 - ページ 35 1...282930313233343536373839404142...47 新しいコメント Vitaly Muzichenko 2017.09.11 20:44 #341 Реter Konow:この変種はNew_bar()関数を全く持っていない。これは、私が提供した中で最も省資源なオプションです。さらに、もう一つの利点があります。新しいバーイベントは、ユーザーコードがタイマーまたはティックイベントで実行されるときは常に保存されます。以前は、このイベントは一度しか取得できず、New_bar()でフラグがクリアされました。この特別な関数は、1分間に1回、"event_new_bar[][]"配列をクリアし、カスタムコードの実行後にのみ呼び出されるようになりました。カスタム関数は、タイマやティックイベントでコードが実行 されるたびに、配列に直接アクセスして新しいバーイベント情報を取得することができます。これにより、さらに資源を節約することができます。最後のコードもうまくいかず、プリントの到着に7分もかかってしまった//+------------------------------------------------------------------+ //Пример использования событий нового бара в пользовательском функционал. //Просто обращаемся к глобальному массиву "События_нового_бара[a1][a2]" напрямую //и используем событие в наших торговых алгоритмах. //+------------------------------------------------------------------+ void Моя_стратегия_торговли_на_новых_барах() { for(int a1 = 0; a1 < Всех_символов; a1++) { string Этот_символ = Символы[a1]; //---------------------------------- for(int a2 = 0; a2 < Всех_таймфреймов; a2++) { bool Новый_бар = События_нового_бара[a1][a2]; int Этот_таймфрейм = Таймфреймы[a2]; //---------------------------------- if(Новый_бар && Этот_символ == "EURUSD" && Этот_таймфрейм == PERIOD_M5) { Print("M5"); } //---------------------------------- if(Новый_бар && Этот_символ == "EURUSD" && Этот_таймфрейм == PERIOD_M1) { Print("M1"); } //---------------------------------- } } } Реter Konow 2017.09.11 21:13 #342 Vitaly Muzichenko:最後のコードもうまくいかず、プリントが届くまで7分かかりました。この関数は、OnTick またはタイマーから呼び出す必要があります。小さな問題があるかもしれないが、まだその場所を特定できていない。自分でコードを見て、エラーがないかどうか探してみてください。3コペックのようなシンプルなものです。しかもコメント付きで。わからないことがあれば、聞く。他にやることがあるんです。 Nikolai Semko 2017.09.11 21:38 #343 Реter Konow:この変種はNew_bar()関数を全く持っていない。これは、私が提供した中で最も省資源なオプションです。さらに、もう一つの利点があります。新しいバーイベントは、ユーザーコードがタイマーまたはティックイベントで実行されるときは常に保存されます。以前は、このイベントは一度しか取得できず、New_bar()でフラグがクリアされました。この特別な関数は、1分間に1回、"event_new_bar[][]"配列をクリアし、カスタムコードの実行後にのみ呼び出されるようになりました。カスタム関数は、タイマやティックイベントでコードが実行 されるたびに、配列に直接アクセスして新しいバーイベント情報を取得することができます。資源をさらに節約することができます。ユーモアがわからない。デバッガがロシア語を理解しないのはなぜですか?それとも、そんな不具合があるのは私だけでしょうか?ラテン語で変数を表示し、キリル文字では表示しない。ピーター では、デバッガはどのように使っているのですか、それとも使っていないのでしょうか。 Реter Konow 2017.09.11 21:40 #344 興味のある方は、コードのバグを探してみてください。 コードの要点1.グローバル配列の宣言。シンボル名用の一次元配列 "Symbols[]"タイムフレーム用一次元配列 "Timeframes[]"現在のバーの数「Number_bars[][]」を書き込む2次元配列。2次元配列 "New Bar Events[][]" ここに各シンボル、各時間枠の新しいバーイベントのフラグを書きます。配列「Symbols[]」と「Timeframes[]」にあるもの。この配列は、タイマーイベントのシンボルと時間枠によって、1分間に1回、ループの中で埋められます。その後、クリアされます。この配列は、フィルとクリアの間にユーザー関数から呼び出され、新しいバーについて通知されます。2.初期化時に、シンボル配列のサイズを設定し、そこにマーケットレビューからのシンボル名を書き込む。3.Number_bars[][]」配列の1次元目のサイズをシンボル数と等しく、2次元目のサイズをタイムフレーム数と等しく設定します。この配列はテーブルのようなものです。各シンボル、各時間枠の現在のバー数を記録します。この数値は、iBars関数によって返されます。4.配列 "Events_new_bar[][]" の1次元目のサイズをシンボル数と等しく、2次元目のサイズをタイムフレーム数と等しく設定します。この配列はテーブルのようなものです。各タイムフレームで各シンボルの新しいバーのイベントフラグを記録します。5.タイマーの内部では、分をカウントダウンし、シンボル(配列Symbols[])とタイムフレーム(配列Timframes[])に対して二重(ネストされた)ループを実行します。iBars関数を呼び出し、Symbols配列とTimeframe配列から各シンボル、各時間枠の現在のバー数を取得します。まず、現在のバーの本数と、すでに配列に格納されている本数を比較します。これらの値が等しくない場合、配列 "Events_new_bar[][]" に新しいバーイベントのフラグを設定する。そして、現在の小節数を前の小節数に置き換えて書き込む。 グローバル配列 "events_new_bar[][]"は、プログラムのどの時点でも利用でき、1分ごとに自動的に埋められ、また自動的にクリアされる。配列が埋まっている間、ユーザー機能は新しいバーに関する新鮮なデータを受け取ることができます。その後、アレイは自動的にクリアされます。それだけです。 Sofiia Butenko 2017.09.11 21:42 #345 Реter Konow:この関数は、OnTick またはタイマーから呼び出す必要があります。何か小さな問題があるのかもしれませんが、まだ特定できていません。自分でコードを見て、エラーがないかどうか探してみてください。3コペックのようなシンプルなものです。しかも、その上にコメント付きで。わからなければ聞けばいいのです。他にやることがあるんです。プロフェッショナルアンサー Реter Konow 2017.09.11 21:42 #346 Nikolai Semko: ユーモアがわからない。デバッガはロシア語を理解できないのか?それとも、そんな不具合があるのは私だけでしょうか?ラテン語の変数は見えるが、キリル文字の変数は見えない。ピーターさん、では、デバッガはどのように使うのですか、それとも使わないのですか。 ニコライ 恥ずかしながら、私はデバッガの使い方がわからないんだ。使ったことがないんです。(( Реter Konow 2017.09.11 21:42 #347 Galina Bobro: プロフェッショナルレスポンス そして、これはプロの荒らしです。 Vitaly Muzichenko 2017.09.11 21:42 #348 Реter Konow:この関数は、OnTick またはタイマーから呼び出す必要があります。何か小さな問題があるのかもしれませんが、まだ特定できていません。自分でコードを見て、エラーがないかどうか探してみてください。3コペックのようなシンプルな ものです。しかもコメント付きで。わからなければ、私に聞いてください。他にやることがあるんだ。複雑で捻じ曲がっていて、作ることができない。申し訳ないのですが、これも全く読めません。 Реter Konow 2017.09.11 21:45 #349 Vitaly Muzichenko:複雑に絡み合っていて、混乱するほどです。申し訳ないのですが、これも全く読めません。という言葉を知っていますか?は拷問しない」?いいものだと思います。 Vitaly Muzichenko 2017.09.11 21:47 #350 Реter Konow:という言葉を知っていますか?は拷問しない」?いいものだと思います。そうなんです、そうやって結論ありきで課題に取り組んだんですね、まあ、あるいはあなたの解答を正しく理解することに失敗したんです。 1...282930313233343536373839404142...47 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
この変種はNew_bar()関数を全く持っていない。
これは、私が提供した中で最も省資源なオプションです。さらに、もう一つの利点があります。新しいバーイベントは、ユーザーコードがタイマーまたはティックイベントで実行されるときは常に保存されます。
以前は、このイベントは一度しか取得できず、New_bar()でフラグがクリアされました。この特別な関数は、1分間に1回、"event_new_bar[][]"配列をクリアし、カスタムコードの実行後にのみ呼び出されるようになりました。
カスタム関数は、タイマやティックイベントでコードが実行 されるたびに、配列に直接アクセスして新しいバーイベント情報を取得することができます。
これにより、さらに資源を節約することができます。
最後のコードもうまくいかず、プリントの到着に7分もかかってしまった
最後のコードもうまくいかず、プリントが届くまで7分かかりました。
この関数は、OnTick またはタイマーから呼び出す必要があります。
小さな問題があるかもしれないが、まだその場所を特定できていない。自分でコードを見て、エラーがないかどうか探してみてください。3コペックのようなシンプルなものです。しかもコメント付きで。
わからないことがあれば、聞く。他にやることがあるんです。
この変種はNew_bar()関数を全く持っていない。
これは、私が提供した中で最も省資源なオプションです。さらに、もう一つの利点があります。新しいバーイベントは、ユーザーコードがタイマーまたはティックイベントで実行されるときは常に保存されます。
以前は、このイベントは一度しか取得できず、New_bar()でフラグがクリアされました。この特別な関数は、1分間に1回、"event_new_bar[][]"配列をクリアし、カスタムコードの実行後にのみ呼び出されるようになりました。
カスタム関数は、タイマやティックイベントでコードが実行 されるたびに、配列に直接アクセスして新しいバーイベント情報を取得することができます。
資源をさらに節約することができます。
ユーモアがわからない。デバッガがロシア語を理解しないのはなぜですか?それとも、そんな不具合があるのは私だけでしょうか?ラテン語で変数を表示し、キリル文字では表示しない。
ピーター では、デバッガはどのように使っているのですか、それとも使っていないのでしょうか。
![](https://c.mql5.com/3/153/588__1.png)
興味のある方は、コードのバグを探してみてください。
コードの要点
1.グローバル配列の宣言。
2.初期化時に、シンボル配列のサイズを設定し、そこにマーケットレビューからのシンボル名を書き込む。
3.Number_bars[][]」配列の1次元目のサイズをシンボル数と等しく、2次元目のサイズをタイムフレーム数と等しく設定します。この配列はテーブルのようなものです。各シンボル、各時間枠の現在のバー数を記録します。この数値は、iBars関数によって返されます。
4.配列 "Events_new_bar[][]" の1次元目のサイズをシンボル数と等しく、2次元目のサイズをタイムフレーム数と等しく設定します。この配列はテーブルのようなものです。各タイムフレームで各シンボルの新しいバーのイベントフラグを記録します。
5.タイマーの内部では、分をカウントダウンし、シンボル(配列Symbols[])とタイムフレーム(配列Timframes[])に対して二重(ネストされた)ループを実行します。iBars関数を呼び出し、Symbols配列とTimeframe配列から各シンボル、各時間枠の現在のバー数を取得します。まず、現在のバーの本数と、すでに配列に格納されている本数を比較します。これらの値が等しくない場合、配列 "Events_new_bar[][]" に新しいバーイベントのフラグを設定する。そして、現在の小節数を前の小節数に置き換えて書き込む。
グローバル配列 "events_new_bar[][]"は、プログラムのどの時点でも利用でき、1分ごとに自動的に埋められ、また自動的にクリアされる。配列が埋まっている間、ユーザー機能は新しいバーに関する新鮮なデータを受け取ることができます。その後、アレイは自動的にクリアされます。
それだけです。
この関数は、OnTick またはタイマーから呼び出す必要があります。
何か小さな問題があるのかもしれませんが、まだ特定できていません。自分でコードを見て、エラーがないかどうか探してみてください。3コペックのようなシンプルなものです。しかも、その上にコメント付きで。
わからなければ聞けばいいのです。他にやることがあるんです。
プロフェッショナルアンサー
ユーモアがわからない。デバッガはロシア語を理解できないのか?それとも、そんな不具合があるのは私だけでしょうか?ラテン語の変数は見えるが、キリル文字の変数は見えない。
ピーターさん、では、デバッガはどのように使うのですか、それとも使わないのですか。
プロフェッショナルレスポンス
この関数は、OnTick またはタイマーから呼び出す必要があります。
何か小さな問題があるのかもしれませんが、まだ特定できていません。自分でコードを見て、エラーがないかどうか探してみてください。3コペックのようなシンプルな ものです。しかもコメント付きで。
わからなければ、私に聞いてください。他にやることがあるんだ。
複雑で捻じ曲がっていて、作ることができない。
申し訳ないのですが、これも全く読めません。
複雑に絡み合っていて、混乱するほどです。
申し訳ないのですが、これも全く読めません。
という言葉を知っていますか?は拷問しない」?いいものだと思います。
という言葉を知っていますか?は拷問しない」?いいものだと思います。
そうなんです、そうやって結論ありきで課題に取り組んだんですね、まあ、あるいはあなたの解答を正しく理解することに失敗したんです。