mql5言語の特徴、微妙なニュアンスとテクニック - ページ 97 1...90919293949596979899100101102103104...247 新しいコメント fxsaber 2018.08.09 19:07 #961 アルチョム・トリシキン: だから、KBの中にすでに解決策があったようなものです。でも、脚本には関係ない。また、未定義の場合はOnTickからクラッシュするように表示されるので、EAにとってはかなり辛いです。そして、このような状況はExpert Advisorの奥深くのどこかで起こり得ることです。また、OnTickから抜け出すだけでなく、例えば2つのポジションを同時にオープンする必要があるかもしれません(ラ・カート)。しかし、2つ目は1つ目が正常に開かれた場合のみ開かれるはずです。この場合、最初のOrderSendの 後にOnTickから追い出されるのは、大げさに言えば、良くないことです。 Artyom Trishkin 2018.08.09 19:13 #962 fxsaberでも、脚本には関係ない。そして、未定義の状況でOnTickからクラッシュアウトすることが示唆されているため、EAにとってはかなり辛いです。そして、このような状況はExpert Advisorの腹の底のどこかで起こりうることなのです。また、OnTickから抜け出すだけでなく、例えば2つのポジションを同時にオープンする必要があるかもしれません(ラ・カート)。しかし、2つ目は1つ目が正常に終了した場合のみ開くようにします。この場合、最初のOrderSendの後にOnTickから追い出されるのは、控えめに言っても良くないことです。スクリプトは、明示的なポジション 数までスローダウンすることができます。 エキスパート・アドバイザー...EAでは、ポジションを開く関数はEAから呼び出され、その結果を返すというロジックでこれを考えなければなりません。成行注文の結果は false を返します。そして、そのEAが本来持っているロジックで動作するようになります。はい、そのような確率を即座に考慮するよりも、いくつかの既成のEAに実装する方が難しいというのは、私も同意見です。しかし、だからこそ、他の人に知ってもらい、その知識を利用してもらうために、この支店があるのです。 fxsaber 2018.08.09 19:21 #963 アルチョム・トリシキン明示的なポジション数を 受信するまで、スクリプトをスローダウンさせることができます。 また、EAをスローダウンさせることも可能です。 エキスパート・アドバイザー...Expert Advisor では、ポジションを開く機能のロジックでこれを考慮する必要があります - 彼らは、その作業結果を返すと EA から呼び出されます。成行注文がある場合は false を返します。そして、そのEAが本来持っているロジックで動作するようになります。はい、そのような確率を即座に考慮するよりも、いくつかの既成のEAに実装する方が難しいというのは、私も同意見です。しかし、これこそが、他の人に知らせ、その知識を活用するための支部なのです。トレードが成立するまでの少しの間、待つだけです。次のティックまでTSを終了させるのは、とんでもない判断です。 Artyom Trishkin 2018.08.09 19:25 #964 fxsaber アドバイザーを遅らせることもできます。 トレードが成立するまで少し待てばいいのです。次のティックまでTSを終了させるのは、気持ち悪い判断です。まあ、そのコードでは、設定された時間の待ち時間が終わっただけなんですけどね。しかし、何時間も待つことはできません。有効な環境を得るために、与えられた試行回数だけしばらく待ち、その結果を持って終了します。そうでないと、長く待っていると取引環境が大きく変わってしまい、ボルジョミを飲むのが遅くなってしまうからです :) //+------------------------------------------------------------------+ //| Заполняет массивы тикетов позиций | //+------------------------------------------------------------------+ bool FillingListTickets(const uint number_of_attempts) { //--- Проверка состояния окружения int n=0,attempts=int(number_of_attempts<1 ? 1 : number_of_attempts); while(IsUncertainStateEnv(symb,InpMagic) && n<attempts && !IsStopped()) { n++; Sleep(sleep); } if(n>=attempts && IsUncertainStateEnv(symb,InpMagic)) { Print(__FUNCTION__,": Uncertain state of the environment. Please try again."); return false; } //--- fxsaber 2018.08.09 19:31 #965 アルチョム・トリシキンまあ、このコードは設定された時間だけ待つのですが、何時間も待つことはできません。有効な環境を得るために、設定された回数だけ待つのです。しかし、何時間も待つことはできません。指定された回数の試行錯誤を経て、有効な環境が得られるまでしばらく待ち、結果を出します。そうでないと、長く待っていると取引環境が大きく変わってしまい、ボルジョミを飲むのが遅くなってしまうからです :) ええ、待ち時間には気づきませんでした。それでいい。その 頃は、もっと気を遣っていました。 Alexey Navoykov 2018.08.09 19:44 #966 PositionTotal() に注目するのは、いずれにしても間違った判断です。 リクエストの処理中に、例えば複数のEAが動作している場合、別のポジションが口座上でオープン/クローズする可能性があります。 開発者が設計したように、サーバーからの応答を確認することを妨げるものは何ですか? EAはポジションのティックを明確に制御し、それに基づいてのみ動作する必要があります。 削除済み 2018.08.11 15:35 #967 ChartIndicatorGet()を使用した後、IndicatorRelease(handle)関数が必ず呼ばれなければならない。ChartIndicatorGet()関数の サンプルには書かれていますが、関数ノートには書かれていません。開発者はドキュメントを修正したかったが、それをしなかった。SDの閉鎖により、おそらく実現することはないでしょう。 個人的には、インジケーターが "ぶら下がる "という問題に遭遇しました。SDとの会話から。 ああ、つまり、私がチャート上でXインディケータを実行したとき、それはすべての指標を調べ、ChartIndicatorGet()を使用してそれのコピーを見つけた- それはカウンタを増加させた。最初のXインジケータを削除し、カウンタを減少させましたが、2番目のインジケータのことを忘れていました。 はい、まさにその通りです。そのため、OnDeinitは動作しません。 fxsaber 2018.08.19 10:03 #968 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム CustomRatesUpdateを使用して、ヒストリカルデータをcsvにインポートしてシンボルカスタムを作成するにはどうすればよいですか? fxsaber さん 2018.08.19 12:01 // Sets the maximum size of an array. template <typename T> int ArrayResize( T &Array[] ) { int MinSize = ArraySize(Array); int MaxSize = INT_MAX; int AvgSize; while ((MinSize < MaxSize - 1) && !IsStopped()) { AvgSize = (int)((MinSize + (long)MaxSize) >> 1); // ArrayFree(Array); if (ArrayResize(Array, (int)AvgSize) == AvgSize) MinSize = AvgSize; else MaxSize = AvgSize; } return(ArrayResize(Array, MinSize)); } fxsaber 2018.08.26 17:02 #969 フォーラムの英語版には// Обмен значениями между двумя числовыми переменными #define SWAP(A, B) { A += B; B = A - B; A -= B; } TheXpert 2018.08.26 17:19 #970 fxsaber フォーラムの英語版にはその上、doubleでは異なる数値が得られるし(==は偽)、整数ではオーバーフローする可能性があります。 1...90919293949596979899100101102103104...247 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
だから、KBの中にすでに解決策があったようなものです。
でも、脚本には関係ない。また、未定義の場合はOnTickからクラッシュするように表示されるので、EAにとってはかなり辛いです。そして、このような状況はExpert Advisorの奥深くのどこかで起こり得ることです。また、OnTickから抜け出すだけでなく、例えば2つのポジションを同時にオープンする必要があるかもしれません(ラ・カート)。しかし、2つ目は1つ目が正常に開かれた場合のみ開かれるはずです。この場合、最初のOrderSendの 後にOnTickから追い出されるのは、大げさに言えば、良くないことです。
でも、脚本には関係ない。そして、未定義の状況でOnTickからクラッシュアウトすることが示唆されているため、EAにとってはかなり辛いです。そして、このような状況はExpert Advisorの腹の底のどこかで起こりうることなのです。また、OnTickから抜け出すだけでなく、例えば2つのポジションを同時にオープンする必要があるかもしれません(ラ・カート)。しかし、2つ目は1つ目が正常に終了した場合のみ開くようにします。この場合、最初のOrderSendの後にOnTickから追い出されるのは、控えめに言っても良くないことです。
スクリプトは、明示的なポジション 数までスローダウンすることができます。
エキスパート・アドバイザー...EAでは、ポジションを開く関数はEAから呼び出され、その結果を返すというロジックでこれを考えなければなりません。成行注文の結果は false を返します。そして、そのEAが本来持っているロジックで動作するようになります。はい、そのような確率を即座に考慮するよりも、いくつかの既成のEAに実装する方が難しいというのは、私も同意見です。しかし、だからこそ、他の人に知ってもらい、その知識を利用してもらうために、この支店があるのです。
明示的なポジション数を 受信するまで、スクリプトをスローダウンさせることができます。
また、EAをスローダウンさせることも可能です。
エキスパート・アドバイザー...Expert Advisor では、ポジションを開く機能のロジックでこれを考慮する必要があります - 彼らは、その作業結果を返すと EA から呼び出されます。成行注文がある場合は false を返します。そして、そのEAが本来持っているロジックで動作するようになります。はい、そのような確率を即座に考慮するよりも、いくつかの既成のEAに実装する方が難しいというのは、私も同意見です。しかし、これこそが、他の人に知らせ、その知識を活用するための支部なのです。
トレードが成立するまでの少しの間、待つだけです。次のティックまでTSを終了させるのは、とんでもない判断です。
アドバイザーを遅らせることもできます。
トレードが成立するまで少し待てばいいのです。次のティックまでTSを終了させるのは、気持ち悪い判断です。
まあ、そのコードでは、設定された時間の待ち時間が終わっただけなんですけどね。しかし、何時間も待つことはできません。有効な環境を得るために、与えられた試行回数だけしばらく待ち、その結果を持って終了します。そうでないと、長く待っていると取引環境が大きく変わってしまい、ボルジョミを飲むのが遅くなってしまうからです :)
まあ、このコードは設定された時間だけ待つのですが、何時間も待つことはできません。有効な環境を得るために、設定された回数だけ待つのです。しかし、何時間も待つことはできません。指定された回数の試行錯誤を経て、有効な環境が得られるまでしばらく待ち、結果を出します。そうでないと、長く待っていると取引環境が大きく変わってしまい、ボルジョミを飲むのが遅くなってしまうからです :)
ええ、待ち時間には気づきませんでした。それでいい。その 頃は、もっと気を遣っていました。
PositionTotal() に注目するのは、いずれにしても間違った判断です。 リクエストの処理中に、例えば複数のEAが動作している場合、別のポジションが口座上でオープン/クローズする可能性があります。 開発者が設計したように、サーバーからの応答を確認することを妨げるものは何ですか?
EAはポジションのティックを明確に制御し、それに基づいてのみ動作する必要があります。
ChartIndicatorGet()を使用した後、IndicatorRelease(handle)関数が必ず呼ばれなければならない。ChartIndicatorGet()関数の サンプルには書かれていますが、関数ノートには書かれていません。開発者はドキュメントを修正したかったが、それをしなかった。SDの閉鎖により、おそらく実現することはないでしょう。
個人的には、インジケーターが "ぶら下がる "という問題に遭遇しました。SDとの会話から。
ああ、つまり、私がチャート上でXインディケータを実行したとき、それはすべての指標を調べ、ChartIndicatorGet()を使用してそれのコピーを見つけた- それはカウンタを増加させた。最初のXインジケータを削除し、カウンタを減少させましたが、2番目のインジケータのことを忘れていました。
はい、まさにその通りです。そのため、OnDeinitは動作しません。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
CustomRatesUpdateを使用して、ヒストリカルデータをcsvにインポートしてシンボルカスタムを作成するにはどうすればよいですか?
fxsaber さん 2018.08.19 12:01
フォーラムの英語版には
その上、doubleでは異なる数値が得られるし(==は偽)、整数ではオーバーフローする可能性があります。