mql5言語の特徴、微妙なニュアンスとテクニック - ページ 100 1...93949596979899100101102103104105106107...247 新しいコメント fxsaber 2018.09.20 12:32 #991 Sleep(0);このようなスリップには数十ミリ秒の時間がかかることがあります。 Fast235 2018.09.20 12:45 #992 fxsaber: このようなスリップは数十ミリ秒に及ぶこともある。どういう意味ですか? 昔、パラレル処理でSleep() が話題になったのを覚えています。 fxsaber 2018.09.20 12:54 #993 Fast528 です。というと?まさにその通りです。 Nikolai Semko 2018.09.20 12:59 #994 fxsaberこのようなスリップは数十ミリ秒に及ぶこともある。数十秒ではなく、15.625ミリ秒です。 工事はずっと使っています。 if(pause>0) Sleep(pause); fxsaber 2018.09.20 13:04 #995 ニコライ・セムコ数十秒ではなく、15.625ミリ秒です。 このデザインはずっと使い続けています。 ulong GetSleepTime( const int Pause = 0 ) { const ulong StartTime = GetMicrosecondCount(); Sleep(Pause); return(GetMicrosecondCount() - StartTime); } void OnStart() { ulong MaxTime = 0; while (!IsStopped()) { const ulong SleepTime = GetSleepTime(); if (SleepTime > MaxTime) { Print(SleepTime); MaxTime = SleepTime; } } } 結果 2542 9983 10033 10041 10148 10348 11982 26116 27529 40066 49915 56319 Slava 2018.09.20 13:40 #996 fxsaber 結果 平均時間を算出する。 SleepTimeを積算し、ループ終了後の反復回数で割る。 そうでないと、未熟な頭脳には、いま提示した結果が怖く見えてしまうのです。また、同時に最短時間も表示します。 PS.MQL5のSleep()関数は、win api関数 ::Sleep() へのリダイレクトではありません。というか、値が100以下の場合はリダイレクトになります。しかし、100以上はループでその中にwin api slipが入っているので、IsStoppedで割り込むことができる。 もうひとつ、微妙な点があります。ミリ秒<0の場合、1を頭に付ける。つまり、::Sleep(0)を呼ぶことはない。 PPS kernel32.dllからSleep関数をインポートして、同じ実験をする。 fxsaber 2018.09.20 13:54 #997 スラバ平均時間を算出する。 SleepTimeを累積し、サイクル終了後に反復回数で割る。平均的な時間ではなく、急増する可能性があるという話をしたのです。取引履歴とOrderSendの結果の同期を待っているときに遭遇しました。Sleep(0)を使って待機していました。不可能であることが判明した。 スラバPS.MQL5のSleep()関数は、win api関数 ::Sleep() へのリダイレクトではありません。まあ、値が100以下ならリダイレクトなんですけどね。しかし、100以上はループでその中にwin api slipが入っているので、IsStoppedで割り込むことができる。 もうひとつ、微妙な点があります。ミリ秒<0の場合、1を頭に付ける。つまり、::Sleep(0)を呼ぶことはない。詳しく教えていただきありがとうございます。Sleep(5000)をIsStopped()で終了させることができるのは知りませんでした。 Slava 2018.09.20 13:59 #998 fxsaber平均的な時間ではなく、スパイクの可能性があるということでした。OrderSendの結果と取引履歴の同期を待っているときに遭遇しました。Sleep(0)を使って待機していました。そのようにできないことが判明しました。 つまり、Windows OSは決してリアルタイムなシステムではないのです Slava 2018.09.20 14:01 #999 fxsaber 詳細をありがとうございました。Sleep(5000)がIsStopped()で終了できることを知りませんでした。https://www.mql5.com/ru/docs/common/sleep この機能には、0.1秒ごとにEAの停止フラグの状態を確認する機能が組み込まれています。 Документация по MQL5: Общие функции / Sleep www.mql5.com Функцию Sleep() нельзя вызывать из пользовательских индикаторов, так как индикаторы выполняются в интерфейсном потоке и не должны его тормозить. В функцию встроена проверка состояния флага остановки эксперта каждую 0.1 секунды. fxsaber 2018.09.20 14:09 #1000 スラバ つまり、Windows OSは決してリアルタイムなシステムではないのです正直、どういう意味なのか、MQL5のどこで遭遇できるのかすらわかりません。 1...93949596979899100101102103104105106107...247 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
このようなスリップには数十ミリ秒の時間がかかることがあります。
このようなスリップは数十ミリ秒に及ぶこともある。
どういう意味ですか?
昔、パラレル処理でSleep() が話題になったのを覚えています。
というと?
まさにその通りです。
このようなスリップは数十ミリ秒に及ぶこともある。
数十秒ではなく、15.625ミリ秒です。
工事はずっと使っています。
数十秒ではなく、15.625ミリ秒です。
このデザインはずっと使い続けています。
結果
結果
平均時間を算出する。
SleepTimeを積算し、ループ終了後の反復回数で割る。
そうでないと、未熟な頭脳には、いま提示した結果が怖く見えてしまうのです。また、同時に最短時間も表示します。
PS.MQL5のSleep()関数は、win api関数 ::Sleep() へのリダイレクトではありません。というか、値が100以下の場合はリダイレクトになります。しかし、100以上はループでその中にwin api slipが入っているので、IsStoppedで割り込むことができる。
もうひとつ、微妙な点があります。ミリ秒<0の場合、1を頭に付ける。つまり、::Sleep(0)を呼ぶことはない。
PPS kernel32.dllからSleep関数をインポートして、同じ実験をする。
平均時間を算出する。
SleepTimeを累積し、サイクル終了後に反復回数で割る。
平均的な時間ではなく、急増する可能性があるという話をしたのです。取引履歴とOrderSendの結果の同期を待っているときに遭遇しました。Sleep(0)を使って待機していました。不可能であることが判明した。
PS.MQL5のSleep()関数は、win api関数 ::Sleep() へのリダイレクトではありません。まあ、値が100以下ならリダイレクトなんですけどね。しかし、100以上はループでその中にwin api slipが入っているので、IsStoppedで割り込むことができる。
もうひとつ、微妙な点があります。ミリ秒<0の場合、1を頭に付ける。つまり、::Sleep(0)を呼ぶことはない。
詳しく教えていただきありがとうございます。Sleep(5000)をIsStopped()で終了させることができるのは知りませんでした。
平均的な時間ではなく、スパイクの可能性があるということでした。OrderSendの結果と取引履歴の同期を待っているときに遭遇しました。Sleep(0)を使って待機していました。そのようにできないことが判明しました。
fxsaber
詳細をありがとうございました。Sleep(5000)がIsStopped()で終了できることを知りませんでした。
https://www.mql5.com/ru/docs/common/sleep
この機能には、0.1秒ごとにEAの停止フラグの状態を確認する機能が組み込まれています。
つまり、Windows OSは決してリアルタイムなシステムではないのです
正直、どういう意味なのか、MQL5のどこで遭遇できるのかすらわかりません。