初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 519 1...512513514515516517518519520521522523524525526...1503 新しいコメント 削除済み 2016.02.23 10:53 #5181 Vasyl Nosal:なぜ、そのようなことをするのか、お聞かせください。int total=OrdersTotal(); 注文が多い場合、ループの繰り返しごとに関数が呼ば れることになり、経済的でないことを付け加えておく。 削除済み 2016.02.23 11:09 #5182 Sergey Gritsay: ループの実行中にOrdersTotal();の値が変化して、注文を見落としたり、ループ本体が不具合を起こしたりする可能性があるからですアレクセイ・コジツィン 付け加えると、注文が多い場合、ループの繰り返しごとに、関数が呼ば れることになり、経済的ではありません。お二人とも冗談なのか本気なのか? 削除済み 2016.02.23 11:11 #5183 Vasyl Nosal:アレクセイ・コジツィン 付け加えると、注文が多い場合、ループの繰り返しごとに関数が呼ば れることになり、経済的ではありません。お二人とも冗談なのか本気なのか? 他の視点はないのか? 削除済み 2016.02.23 11:16 #5184 Alexey Kozitsyn: У Вас другая точка зрения?for(int i=OrdersTotal()-1; i>=0; i--)int i=OrdersTotal()-1このアクションは、最初の反復処理の前に一度だけ実行されます。これ以上、何かを追加する意味はない。コードが大きくなるだけです。 Sergey Gritsay 2016.02.23 11:20 #5185 Vasyl Nosal: 可能ですが、このデザインでは不具合が発生する可能性があります。for(int i=0; i<total; i++) 削除済み 2016.02.23 11:23 #5186 Sergey Gritsay:このデザインでは可能だが、このデザインでは不具合が発生する可能性がある:)))))))どんな根拠で?А.だから、必ず端からやり直す。 削除済み 2016.02.23 11:27 #5187 Vasyl Nosal: この場合は、そうですね。そして、この場合for(int i=0; i<OrdersTotal(); i++) { }が違います。先ほどは、どういう意味か明記されていませんでしたね。 削除済み 2016.02.23 11:29 #5188 Vasyl Nosal::)))))))どんな根拠で?А.だから、必ず端からやり直す。 この方法は必ずしも適切ではありません。例えば、一番早い順番からやり直したい場合。 kashi_ann 2016.02.23 13:26 #5189 kashi_ann: そう、だから論理の問題なんだ。それよりも気になったのは、動作の順番とは別に、サーバー上のデータの更新時間も考慮しなければならないことです。止まり木はもちろん使っています。全部書き直さなきゃいけないのかな、意味ないよね。やっと意味がわかった)))))))))))))))))))))))))))))))))))))))))))いつものように、とんでもなくシンプルに))価格が下がり、買値の指値注文が高くなっただけです)))保留注文 の適用を誤っただけです。)ただ、その条件下では置けなかったのです)ストップオーダー」の設定を追加して、ほら、すべて思い通りになりました)))) 削除済み 2016.02.23 14:38 #5190 Alexey Kozitsyn: この方法は必ずしも適切ではありません。例えば、一番早いオーダーからオーバーシュートする必要がある場合。 また、どのような場合に必要とされるのでしょうか? 1...512513514515516517518519520521522523524525526...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
なぜ、そのようなことをするのか、お聞かせください。
int total=OrdersTotal();
ループの実行中にOrdersTotal();の値が変化して、注文を見落としたり、ループ本体が不具合を起こしたりする可能性があるからです
アレクセイ・コジツィン
付け加えると、注文が多い場合、ループの繰り返しごとに、関数が呼ば れることになり、経済的ではありません。
お二人とも冗談なのか本気なのか?
アレクセイ・コジツィン
付け加えると、注文が多い場合、ループの繰り返しごとに関数が呼ば れることになり、経済的ではありません。
お二人とも冗談なのか本気なのか?
Alexey Kozitsyn:
У Вас другая точка зрения?
int i=OrdersTotal()-1
このアクションは、最初の反復処理の前に一度だけ実行されます。これ以上、何かを追加する意味はない。コードが大きくなるだけです。
可能ですが、このデザインでは不具合が発生する可能性があります。
このデザインでは可能だが、このデザインでは不具合が発生する可能性がある
:)))))))
どんな根拠で?
А.
だから、必ず端からやり直す。
この場合は、そうですね。そして、この場合
が違います。先ほどは、どういう意味か明記されていませんでしたね。
:)))))))
どんな根拠で?
А.
だから、必ず端からやり直す。
そう、だから論理の問題なんだ。それよりも気になったのは、動作の順番とは別に、サーバー上のデータの更新時間も考慮しなければならないことです。
やっと意味がわかった)))))))))))))))))))))))))))))))))))))))))))
いつものように、とんでもなくシンプルに))
価格が下がり、買値の指値注文が高くなっただけです)))保留注文 の適用を誤っただけです。)ただ、その条件下では置けなかったのです)
ストップオーダー」の設定を追加して、ほら、すべて思い通りになりました))))
この方法は必ずしも適切ではありません。例えば、一番早いオーダーからオーバーシュートする必要がある場合。