so wie du es hier umsetzt kann es nicht funktionieren
da du eine Position
prüfst und wenn sie die anforderungen nicht erfüllt
kommt "else"
nud das wird mit jeder position gemacht
den else- teil müsstest du erst nach der Forschleife starten
wenn keine position die bedingungen erfüllt
Code:
//Pseudocode
bool irgendeineVariable = false;
for(pos=OrdersTotal();pos>=0;pos--) // überprüft alle Positionen ob sie auf
bestimmten Preis sitzen
{
if (OrderSelect(pos,SELECT_BY_POS) && OrderOpenPrice()== openprice_hedge)// && OrderCloseTime()==0 && Close_Hedge_Times>=0)
//break; // wenn zutrifft dann soll abbrechen und weiter Nichts mehr machen.
irgendeineVariable = true; // also
continue;
}
if (irgendeineVariable == false) // wenn keine Position zutrifft erst dann wird Hedge gesetzt!!
{
MarketOrder(OP_SELL,openprice_hedge,Lot,stoplostic ksell,takeprofithedgeticksell,"Hedge_f_Buy"+pos,Sy mbol()));
Close_Hedge_Times--; // zähler
}
so müsste die logik zumindest ansatzweise richtig sein
ich habs nicht getestet
du musst sicher nochwas anpassen
lg