Es gibt einen Befehl mit dem du einen EA bei Bedarf beenden kannst.
Code:
#include <WinUser32.mqh>
PostMessageA( WindowHandle( Symbol(), Period()), WM_COMMAND, 33050, 0);
Um das mal in Sandmann's Beispiel einzusetzen:
Code:
#include <WinUser32.mqh>
init()
{
profit = AccountBalance();
}
start()
{
// >1% Konto Gewinn
if(AccountBalance() - profit > 1/100 * profit)
{
// eventuell alle offenen Positionen jetzt schliessen
PostMessageA( WindowHandle( Symbol(), Period()), WM_COMMAND, 33050, 0);
}
}
Der EA verschwindet damit komplett vom Chart.
Starten musst du ihn allerdings manuell wieder.
Gruß
naranjoe