ループと注文のクローズまたは削除 - ページ 2 12345 新しいコメント Ahmed Soliman 2013.02.10 22:17 #11 OrderSelect が注文の選択に失敗した場合、どうなるのでしょうか? OrderMagicNumber==MagicNo という条件が真になることはないでしょう。だから、OrderSelectの結果をチェックして、失敗したら処理を続ける必要はない。もし、OrderSelectをチェックして、ループ変数を減らしたいのであれば、その方がよいでしょう。例for(PositionIndex = 0; PositionIndex < OrdersTotal() ; PositionIndex ++) { if( ! OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) { PositionIndex--; continue; } William Roeder 2013.02.11 01:41 #12 orderSelectが失敗した場合、最後に選択されたオーダーの マジックナンバーか何かがメモリに残っていて、それが一致するかもしれません。必ず確認すること。常にカウントダウンしなければなりません。ポジション3の作業中にポジション0が閉じられたとします。次に処理したいのはポジション4ですが、ループしてpositionIndexを4までインクリメントするとポジション3になります。 これで1つ失敗です。カウントダウンすることで、同じオーダーを2回目に処理する可能性がありますが、1回を見逃すことはありません。 Ahmed Soliman 2013.02.12 22:46 #13 WHRoeder:orderSelectが失敗した場合、最後に選択されたオーダーのマジックナンバーか何かがメモリに残っていて、それが一致するかもしれません。必ず確認してください。常にカウントダウンする必要があります。ポジション3の作業中にポジション0が閉じられたとします。次に処理したいオーダーはポジション4ですが、ループしてpositionIndexを4にインクリメントするとポジション3になります。 あなたは今、一つを逃しました。カウントダウンすることで、同じオーダーを2回目に処理する可能性がありますが、1回を見逃すことはありません。 1- 誰がそんなことを言ったのですか?そして、あなたはどのメモリについて話していますか? 2- カウントダウンやカウントアップについては言及していません。 William Roeder 2013.02.13 13:56 #14 OrderMagicNumber() と他のものは、常に何かを返します。もし OrderSelect() が失敗したら、ランダムな ゴミや残骸、前に成功したセレクトからのもの、最後に閉じたオーダーからの値、あるいはレジスタにあるものなどが返ってきます。削除されたオブジェクトのポインタを再参照したことがありますか?メモリとは、回路基板上にある小さな黒いチップのことです。これを試してint start(){ Print(Whatever()); } double Whatever(){ for(i=0; i<10; i++) double tmp=Close[i]; // no value returned } そして出力を投稿してください。"提供されたコード自体はカウントダウンしていない "のは知っている。それが問題なんだ。常にカウントダウンしてください。デクリメントがうまくいかず、無限ループになる可能性があります。if( ! OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) { PositionIndex--; continue; } burgie 2013.05.01 13:44 #15 コーディングした具体的な理由はあるのでしょうか?if( ! OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) continue;の代わりに: を使用した理由は何ですか?if( OrderSelect(PositionIndex, SELECT_BY_POS, MODE_TRADES) ) { // statements if true }コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか? Simon Gniadkowski 2013.05.01 13:53 #16 burgie:コーディングした具体的な理由はあるのでしょうか?の代わりに: を使用した理由は何ですか?コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか? なぜOrderSelect()が失敗するのか、そして失敗したらどうすればいいのか、論理的なことはよくわかりません。 Alain Verleyen 2013.05.02 06:28 #17 burgie:コーディングした具体的な理由はあるのでしょうか?の代わりに: を使用した理由は何ですか?コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか? ループの中では、これは全く同じで、好きな方を選んでください。 削除済み 2013.06.30 01:17 #18 burgie:コーディングした具体的な理由はあるのでしょうか?の代わりに: を使用した理由は何ですか?コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか? 削除済み 2013.06.30 01:24 #19 if(orderselect(......)) execute this //--no going backif(!orderselect(......))continue //戻って確認 する Simon Gniadkowski 2013.06.30 04:53 #20 MirTD:if(orderselect(......)) execute this //--no going backif(!orderselect(......))continue //戻って確認する 私のコーディングについて聞かれた質問には、すでに答えました. 12345 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
OrderSelect が注文の選択に失敗した場合、どうなるのでしょうか?
OrderMagicNumber==MagicNo という条件が真になることはないでしょう。だから、OrderSelectの結果をチェックして、失敗したら処理を続ける必要はない。
もし、OrderSelectをチェックして、ループ変数を減らしたいのであれば、その方がよいでしょう。例
1- 誰がそんなことを言ったのですか?そして、あなたはどのメモリについて話していますか?
2- カウントダウンやカウントアップについては言及していません。
コーディングした具体的な理由はあるのでしょうか?
の代わりに: を使用した理由は何ですか?
コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか?
コーディングした具体的な理由はあるのでしょうか?
の代わりに: を使用した理由は何ですか?
コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか?
コーディングした具体的な理由はあるのでしょうか?
の代わりに: を使用した理由は何ですか?
コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか?
ループの中では、これは全く同じで、好きな方を選んでください。
コーディングした具体的な理由はあるのでしょうか?
の代わりに: を使用した理由は何ですか?
コーディングの基準によっては禁止されているのは知っています。その方がパフォーマンスが良いのでしょうか、それとも単なる好みなのでしょうか?
if(orderselect(......)) execute this //--no going back
if(!orderselect(......))continue //戻って確認 する
if(orderselect(......)) execute this //--no going back
if(!orderselect(......))continue //戻って確認する