|
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Zitat:
PHP-Code:
|
|
|||
Moin, ich würde empfehlen nie ohne Magic-Nr zu arbeiten, weil sonst nie unterschieden werden kann ob manuelle Trades oder Trades mit EA(s). Carpe Diem, Hoschie |
|
|||
Zitat:
Zitat:
|
|
|||
@Jacky,
@fxdaytrader hat es bereits geschrieben, das kann kein Script sein, weil dieses nur einmal nach Installation auf den Chart läuft. Das wäre unbrauchbar für Dein Anliegen. Die hier angebotenen Codelösungen von @Hoschi und @pako sind eigentlich auch nicht recht zu gebrauchen, weil damit ständig mit jedem Tick eine Mail gesendet werden würde und nicht einmalig nach dem Schließen. Das Problem kann man u.a. mit der TicketNumber lösen. Also etwa der Art: Code:
//vorher global deklarieren als int TN; //Z.B. nach dem Senden der Order wird TN der Wert der TicketNumber zu gewiesen. TN = OrderSend(................); //und in der Funktion der Überwachung geschlossener Trades nach der TN suchen void*checkHistoryOrders() { *for(int*pos*=*OrdersHistoryTotal()-1;*pos*>=*0*;*pos--)*{ if *(OrderSelect(pos,*SELECT_BY_POS, MODE_HISTORY)*{ if (OrderSymbol() == Symbol() && OrderMagicNumber() =*MAGICNUMBER) { if (OrderTicket() == TN) { ******* SendMail("",""); TN = 0; break; ********* }******** **** } } } } traderdoc |
|
|||
Sorry, ich kann derzeitig mein letztes Post nicht editieren und habe keine Ahnung wie die * Zeichen in den Code kommen.
Die sollten einfach ignoriert werden! traderdoc |
|
|||
Zitat:
Code:
if(OrderClose(param)) SendMail("",""); |
|
|||
Er schreibt ja nicht von einem Trade, sondern von einem EA, der selten handelt. Jeder EA, wenn er professionel erstellt wurde, arbeitet mit Magic-Nr.
"ich verwende einen EA, der nur sehr selten handelt. Gibt es eine Möglichkeit, mir eine E-Mail senden zu lassen bei einem geschlossenen Trade? Bin dankbar über jede Hilfe" |
|
|||
Warum soll das nicht zu gebrauchen sein?
Ich habe Ihm nur eine Methode gegeben, und keinen vollständigen EA. Natürlich muss er eine globale Variabel wie auch bei dir mit der TicketNr. TN definieren. Gruss, Hoschie |
|
|||
Zitat:
Code:
void checkOpenOrders() { int count=0;// int for(int pos = OrdersTotal()-1; pos >= 0 ; pos--) if ( OrderSelect(pos, SELECT_BY_POS) // Nur meine Auftraege w/ && OrderMagicNumber() == MAGICNUMBER // Meine Magic Nummer && OrderSymbol() == Symbol()) {// und mein Paar count++; } if ( !count)// bool { // Keine offene Order SendMail("",""); } } |
|
|||
Zitat:
Und deshalb muß nach der Orderöffnung die Ticketnummer gespeichert werden und dann in der Abfrage der Orderhistory!!! nach dieser Ticketnummer gesucht werden. Und nur wenn die Order geschlossen wurde, kann sie auch über die Orderhistory wieder identifiziert werden und zwar als geschlossene Order! Dann wird die e-Mail gesendet und TN = 0 gesetzt, damit beim nächsten Tick die e-Mail nicht wieder gesendet wird. So, das sollte nun aber ganz klar sein. @pako if(OrderClose(param)) SendMail("",""); Das würde nur funktionieren, wenn die Order per EA geschlossen wird. Und was wird mit den Orders, die per ordergebundenen TP und/oder SL geschlossen wurden? traderdoc |
Lesezeichen |
Stichworte |
alert, email, geschlossen, mql4, nachricht, order, programmierung, programmierung metatrader, trade |
|
|