クロージャ注文はポジティブですか?

注文がポジティブなときにクロージャ注文をするにはどうすればいいですか? 私は以下の例のようにしようとしましたが、時々非常に否定的に起こりますか?

答えよね!

for(int a = 0; a <OrdersTotal(); a )
{
if(OrderSelect(a、SELECT_BY_POS、MODE_TRADES)== false)break;

// —- 注文タイプの確認
if(OrderType()== OP_BUY)
{
if(OrderClosePrice()>(OrderOpenPrice() OrderSwap() OrderCommission()))
OrderClose(OrderTicket()、OrderLots()、入札、0、青);

}
if(OrderType()== OP_SEL L)
{
if(OrderClosePrice()<(OrderOpenPrice() OrderSwap() OrderCommission()))
OrderClose(OrderTicket()、OrderLots()、Ask、0、Red);

}
}


1.ループカウンタは減少しているはずです(現在のように増加していません)。 www.mql5.com/en/forum/119840を参照してください。

2. お金の値を返すOrderSwap()とOrderCommission()に、 価格の値を返すOrderOpenPrice()を追加しようとしています (異なる「単位」を持つ2つの値を追加しようとしています)。


未決済注文の蓄積があります、それは分析の中で何かを変えるかもしれません。


あなたが示したリンクは注文を閉じるだけで 、それがポジティブに閉じることを意味するのではなく、常にポジティブに閉じることを望みます。

私はそれがポジティブに終わるとは言わなかった。あなたのループカウンタは増加しています、それはそれらがポジティブにクローズするかどうかにかかわらず 、クローズ注文では正しく機能しません。


OrderClose(OrderTicket()、OrderLots()、OrderClosePrice()、0);


ありがとう、

私はこれらの変更を加えましたそしてこれは完璧です

(int a = OrdersTotal() – 1; a> = 0; a–)
{
if(OrderSelect(a、SELECT_BY_POS、MODE_TRADES)== false)break;

// —-注文タイプの確認
RefreshRates();
if(OrderType()== OP_BUY)
{
if(入札> OrderOpenPrice())
OrderClose(OrderTicket()、OrderLots()、OrderClosePrice()、0、青);

}
if(OrderType()== OP_SELL)
{
if(Ask <OrderOpenPrice())// OrderSwap() OrderCommission()))
OrderClose(OrderTicket()、OrderLots()、OrderClosePrice()、0、Red);

}
}




5101: https://www.mql5.com/en/forum/123683


Originally posted 2019-08-04 03:22:31.

Translate »