複数のEAを同時に実行する - ページ 4 1234 新しいコメント William Roeder 2014.04.28 13:06 #31 Sneck55: プールで起こることと一致するように、注文をクローズした場合はデクリメントする必要がありますが、注文をクローズしなかった場合はそうではありません。もし、注文をクローズせずにデクリメントすると、無限ループに陥ります。 馬を水に導くことができる... Ian Venner 2014.04.28 15:23 #32 Sneck55: プールで起こることと一致するように、注文を閉じると減少する必要がありますが、注文を閉じない場合はそうではありません。もし、注文を閉じずに減少させると、無限ループに入ります。 OrdersTotal() を何度も呼び出さなければ、この問題は発生しません。合計を一度呼び出す。それをint型にする。そのintをforループで使用します。 とはいえ、私の以前の返信を読んだことがあるのでしょうか?そのループ全体は完全に時間の無駄です。あなたのコードを見てください。SellTicketの値はすでに何だと思いますか? if(SellTicket!=0) { if(SmallMA>MediumMA) { for(Counter=0;Counter<=OrdersTotal()-1;Counter++) { SelectedOrder = OrderSelect(Counter,SELECT_BY_POS); if(OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()&&OrderType()==OP_SELL) { // while(IsTradeContextBusy()) Sleep(10); Closed=OrderClose(OrderTicket(),OrderLots(),MarketInfo(Symbol(),MODE_ASK),Slippage,Red); if(Closed) SellTicket=0; else Alert("Symbol: ",Symbol()," Ticket: ",SellTicket," unable to close sell order(s): sell ma convergence close routine"); } Counter--; } } } Syed Naufal Gaddafi 2014.04.28 23:51 #33 そして、時間の経過とともにCPUパワーを消費していきます。 Ian Venner 2014.04.29 00:18 #34 EAに必要な値を入れておきながら、それを忘れてオーダープールを探し回って値を取り出すのは論理的ではありません。そのようなことは、リブートリカバリーの一部としてのみ行われる必要があります。 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
プールで起こることと一致するように、注文を閉じると減少する必要がありますが、注文を閉じない場合はそうではありません。もし、注文を閉じずに減少させると、無限ループに入ります。
OrdersTotal() を何度も呼び出さなければ、この問題は発生しません。合計を一度呼び出す。それをint型にする。そのintをforループで使用します。
とはいえ、私の以前の返信を読んだことがあるのでしょうか?そのループ全体は完全に時間の無駄です。あなたのコードを見てください。SellTicketの値はすでに何だと思いますか?
EAに必要な値を入れておきながら、それを忘れてオーダープールを探し回って値を取り出すのは論理的ではありません。そのようなことは、リブートリカバリーの一部としてのみ行われる必要があります。