Code:
extern double UpdateToBE = 10 ;
bool LongTrade, ShortTrade;
string Signal;
datetime PeriodenStartzeit;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
void UpdateBE()
{
//---Überprüfen der Starzeit
PeriodenStartzeit = Time[0];
//---Breakeven Starten
///-----+++ Break Even setzen
if(UpdateToBE <= 0) return;
for(int i = OrdersTotal()-1; i >= 0; i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if(OrderType() == OP_BUY && OrderOpenPrice() > OrderStopLoss() && Bid - OrderOpenPrice() >= UpdateToBE * Point)
{
OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice(), OrderTakeProfit(), 0);
}
if(OrderType() == OP_SELL && OrderOpenPrice() < OrderStopLoss() && OrderOpenPrice() - Ask >= UpdateToBE * Point)
{
OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice(), OrderTakeProfit(), 0);
}
}
}
return;
}
Als Erstes wird bei Dir nicht erkannt, ob es ein 4- oder 5-DigitBroker ist.
Als Zweites solltest Du Dir mal angewöhnen eine klare Struktur zu schreiben und immer entsprechend einrücken.
void bedeutet nur "leer" bzgl. der Rückgabe von Funktionsergebnissen, im Gegensatz zu int Funktion(), bool Funktion(), double Funktion oder string Funktion(). In diesen Fällen wird die Rückgabe einer entsprechend deklarierten Variable erwartet.
traderdoc