これを守らないと決済し損なうポジションが発生する
複数のポジションをまとめて決済する場合、直近のものから順に処理しましょう。
具体的には、for文のループを降順にしましょうということです。
以下はOK例です。
for(int i = OrdersTotal() - 1; i >= 0; i--){
// 決済処理
}
以下はNG例です。
for(int i = 0; i < OrdersTotal(); i++){
// 決済処理
}
後者の方が一般的ですからね。ご注意ください。
なぜ昇順ではダメかというと、決済するごとにポジションのインデックスが再計算されてずれてしまうからです。
詳しくはfor文の昇順・降順に図解入りで分かりやすく解説されていますので、そちらをご覧ください。
