|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Ja immernoch was ich gerade angesprochen habe.
Du führst 2x OrderModify aus. Du musst das erste komplett wegnehmen und nur das in dem if() stehen lassen |
|
|||
Sorry, Sorry, Sorry - ich versteh das nicht ! Was muss gestrichen werden, es sind doch beides if-Bedingungen ? Bitte Streiche mir die falschen Teile `raus - und wir sollten es "geschafft" haben.
{ case OP_BUY: if (Bid - mindestStopLoss >= OrderOpenPrice + 7* Point) { OrderModify(OrderTicket(),OrderOpenPrice(),OrderOp enPrice() + 4 * Point, 0, 0, Blue); // Warnung: "Rückgabewert von OrderModify sollte geprüft werden" - bleibt bestehen ! } if(!OrderModify(OrderTicket(),OrderOpenPrice(),Ord erOpenPrice() + 4 * Point, 0, 0, Blue)) { Print("Fehler beim Ändern der Position: "+GetLastError()); } case OP_SELL: if (Ask + mindestStopLoss <= OrderOpenPrice - 7* Point) { OrderModify(OrderTicket(),OrderOpenPrice(),OrderOp enPrice() - 4 * Point, 0, 0, Red); // Warnung: Rückgabewert von OrderModify sollte geprüft werden ! } if(!OrderModify(OrderTicket(),OrderOpenPrice(),Ord erOpenPrice() - 4 * Point, 0, 0, Red)) { Print("Fehler beim Ändern der Position: "+GetLastError()); } Dennnoch erst einmal vielen, vielen Dank. LG. piptrade |
|
|||
Achso ja stimmt. Das sieht man nicht so gut. Pack doch Code einfach in einen Code Block. Diesen kannst du erstellen wenn du überhalb vom Textfeld auf # klickst.
Code:
case OP_BUY: if (Bid - mindestStopLoss >= OrderOpenPrice + 7* Point){ if(!OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice() + 4 * Point, 0, 0, Blue)){ Print("Fehler beim Ändern der Position: "+GetLastError()); } } |
|
|||
Lieber Top-SectreT,
es hat zwar ultra lange gedauert - ein ewiges Hin- und Herprobieren mit Klammern und meinem Freund, dem Semikolon, - aber nun habe ich das erste absolut fehlerfreie Result. Das kleine Modul kann jetzt in den EA eingebaut werden und ich hoffe, dass es komplikationslos seine Arbeit verrichtet. Nochmals DANKE, DANKE, DANKE ! (Hätte nie gedacht, so schnelle und kompetente Unterstützung zu erhalten !) LG: piptrade |
|
|||
Kein Problem
freut mich wenn ich helfen konnte LG, DIE Top-SecreT :P |
|
|||
HALLO, AN ALLE !
Gestern war ich noch so dankbar, endlich den richtigen code zu haben, doch schon die ersten Anwendungsversuche im EA schlugen leider fehl. Nachdem ich in den letzten Stunden zig Umstellungen oder auch Veränderungen vorgenommen habe, das Resultat bleibt enttäuschend. Ist der code wirklich richtig, muss er eventuell nur ergänzt werden - oder brauche ich ein ganz anderes Teil ? Dennnoch ein herzliches Dankeschön an Top_SecreT, der mich so unkompliziert unterstützt. Wie auch immer - ich hab` MQL4-betreffend einiges dazugelernt ! LG. piptrade PS.: Vielleicht hat jemand eine Idee, wo der Fehler liegen könnte, eventuell hat jemand auch eine funktionierende Variante parat ? In diesem Sinne würde ich mich über weitere Hilfestellungen freuen. |
|
|||
Lieber Top-SecreT,
danke, dass Du Dich wieder gemeldet hast ! Lass mir noch ein wenig Zeit, um noch einige Versuche durchzuführen. Melde mich spätestens morgen wieder. LG. piptrade |
|
|||
Hallo Top-Secret,
also, das komplette Teil sieht ---> SO aus: (Oh, ich ahne schon schreckliches !) #define MAGICMA 30081953 //--- Inputs input double TakeProfit = 100; input double StopLoss = 250; // NOT_Stop für Crash-Situationen //+-----------------------------------------------------------------------+ int start() { if(OrderSelect(MAGICMA, SELECT_BY_POS)==true) { switch(OrderType()) { case OP_BUY: if (Bid >= OrderOpenPrice + 7* Point){ // "- StopLoss" entfernt ! / // if aktueller Bid >= OrderOpenPrice + 7 / ... dann neuer SL if (!OrderModify(OrderTicket(),OrderOpenPrice(),Order OpenPrice() + 4 * Point, MAGICMA, 0, Blue)){ Print("Fehler beim Ändern der Position: "+GetLastError()); } } case OP_SELL: if (Ask <= OrderOpenPrice - 7* Point){ // "+ StopLoss" entfernt ! / // if aktueller Bid <= OrderOpenPrice - 7 / ... dann neuer SL if (!OrderModify(OrderTicket(),OrderOpenPrice(),Order OpenPrice() - 4 * Point, MAGICMA, 0, Red)){ Print("Fehler beim Ändern der Position: "+GetLastError()); } } } } else Print("OrderSelect has not been able to find the order ", MAGICMA, ":", GetLastError()); return(0); } Sicher ein oder mehrere banale Fehler - ich selbst aber kann nichts entdecken. LG. piptrade |
|
|||
Was zur Hölle ist das?
Was soll denn MAGICMA sein? Bevor du nicht weißt was das ganze überhaupt macht solltest du dich vielleicht erstmal mit den Grundlagen des Programmierens beschäftigen oder dir jemand suchen der dir einen EA schreibt. |
Lesezeichen |
Stichworte |
mql4, programmierung, programmierung metatrader, scalper sl, sl, stoploss, stoploss ea, stoploss nachziehen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|