Einzelnen Beitrag anzeigen
  #10 (permalink)  
Alt 26.03.18
traderdoc traderdoc ist offline
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Nach dem ersten Überfliegen des Codes sage ich das mal so:
Wenn es schon daran hapert, die Variable Lot an der richtigen Stelle zu deklarieren, denn bei dieser Version wird der Compiler die Fehlermeldung:
'Lot' - undeclared identifier ausgeben und damit würde das Programm ja gar nicht erst lauffähig sein, dann sehe ich schwindende Chancen, in Kürze zu einer Gesamtlösung zu kommen.

Und bevor ich jetzt das Seziermesser zum bekannten Y-Schnitt ansetze, erkennt der Laie bereits an der äußeren Begutachtung, dass ExpertRemove()

Code:
if(MQLInfoInteger(MQL_OPTIMIZATION)) {
   if (Lot<0.01) {
      ExpertRemove();
   }
}
nie angesprungen werden kann!

Begründung: Ganz einfach, in jeglicher Lotberechnung wird der Lot-Wert über NormlizeDouble(....., 2) berechnet, d.h. es wird immer auf die zweite Stelle nach dem Komma normiert. Ja dann kann doch aber Lot nie < 0.01 sein!!!

Nur mal so viel in aller Kürze. Das hätte wir aber bereits vor Tagen klären können, wenn der gesamte Code vorgelegen hätte.

Und dann noch ein letzter Tip: Der Code lässt sich auch extrem schwer lesen, weil er rel. unstrukturiert geschrieben ist. Du tust Dir damit keinen Gefallen und den Usern, die nach einer Lösung suchen und sich erst einmal überhaupt in fremden Code einwühlen müssen, erst recht nicht. Für gut strukturierten Code gibt es hier im Forum sehr gute Beispiele.

Und ein allerletzter Tip: Falls trotz Lotberechnung, die auch ein Lot < 0.01 zuliese, ExpertRemove() immer noch nicht angesprungen wird, dann würde ich rein nach try and error statt
if(MQLInfoInteger(MQL_OPTIMIZATION)) { mal einfach if(IsOptimization() { setzen und vor und nach dieser if-Abfrage mal ein Print() benutzen, womit die Größe von Lot ausgegeben wird. Dann würde man auch so einige Erkenntnisse gewinnen.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.

Geändert von traderdoc (26.03.18 um 12:04 Uhr)