[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 224

 
ArgentumZ:
Ich habe es gelesen, ich weiß, dass die Abstände eingefroren werden usw., aber ich verstehe nicht, wie ein Stop-Loss von Null mit all diesen Einschränkungen zusammenhängt! Wenn Sie einen Fehler sehen - sagen Sie es mir. Ich habe die Handbücher sorgfältig gelesen, bevor ich hier schreibe. Ich würde es nicht tun, wenn ich nicht dazu gezwungen wäre.
Bei einigen Maklerunternehmen können Sie SL und TP bei der Auftragserteilung festlegen, bei anderen nicht. Sie müssen es manuell versuchen. Das Gleiche gilt für Freeze und den Mindestabstand bis zum Stopp (TP ist ebenfalls ein Stopp).
 
snail09:
Bei einigen DCs können SL und TP bei der Auftragserteilung festgelegt werden, bei anderen nicht. Versuchen Sie es mit Ihren Händen. Dasselbe gilt für Freeze und den Mindestabstand bis zum Anhalten (TP ist ebenfalls ein Anhalten).
Die Sache ist, ich brauche nicht mit Stops im Moment setzen - ich möchte Null TakeProfit und StopLoss setzen. Interessant ist, dass BuyStop gesetzt ist, SellStop und SellLimit aber nicht, und ich erhalte den oben genannten Fehler.
 
Das Problem mit den Nullstopps wurde gelöst. Allerdings habe ich nicht verstanden, wie: was ich kommentiert, kopiert, explizit 0 anstelle von Variablen gesetzt habe, usw. Jedenfalls hat irgendwann alles funktioniert))) Vielen Dank an alle, die geantwortet und Kommentare hinterlassen haben.
 
ArgentumZ:
Das Problem mit den Nullstopps wurde gelöst. Allerdings habe ich nicht verstanden, wie: was ich kommentiert, kopiert, explizit 0 anstelle von Variablen gesetzt habe, usw. Jedenfalls hat irgendwann alles funktioniert))) Danke an alle, die geantwortet und Kommentare hinterlassen haben.
Fragen Sie die MarketInfo-Funktion vor Ihren Geschäften, ich denke, sie wird Ihnen helfen. Machen Sie einen Ausdruck und sehen Sie sich die Fehlercodes an, es gibt Beschreibungen dazu in ...
 
ArgentumZ:
Ich habe sie gelesen, ich weiß über Einfrierabstände und so weiter Bescheid, aber ich verstehe nicht, wie ein Stop-Loss von Null mit all diesen Einschränkungen zusammenhängt! Wenn Sie einen Fehler sehen - sagen Sie es mir. Ich habe die Handbücher sorgfältig gelesen, bevor ich hier schreibe. Ich würde sie nicht schreiben, wenn ich nicht dazu gezwungen wäre.

Ich habe den Fehler darin gesehen, dass Ihr BUY_STOP und SELL_STOP auf denselben Kurs gesetzt sind. Wenn Sie TP und SL auf Null gesetzt haben, der Fehler 130 aber bestehen bleibt, kann es nicht an ihnen liegen!

Nur BUY_STOP und SELL_LIMIT oder umgekehrt (je nach Einzelfall) BUY_LIMIT und SELL_STOP können auf denselben Preis gesetzt werden. Aber auf keinen Fall BUY_STOP und SELL_STOP! :)))

Aber Sie haben die Handbücher nicht sehr gut gelesen...

 
Zzumer:

D.h. der Tester enthält eine unvollständige Historie, wenn er startet?

Übrigens funktioniert der Experte jetzt richtig.

Es ist eine Schande, aber so ist es nun einmal. Wenn Sie mehr Balken benötigen, um den EA zu testen, müssen Sie entweder in die Kursdateien gehen (träge und langwierig...) oder einen Teil der Testzeit überspringen (einfach und unkompliziert).
 

Eine hausgemachte Funktion entfernt im Falle eines Pegeldurchbruchs horizontale TREDLINE-Objekte. Funktioniert einwandfrei, ist aber sehr kostspielig.

Bei einer großen Anzahl von Objekten (mehr als 5000) wird die MT vollständig ausgesetzt. Zwei Tage CPU-Belastung ohne jegliche Ergebnisse.

Welche Optionen sind am besten geeignet, um den Zustand zu ersetzen?

 if( PrLevel<High[iHighest(NULL,0,MODE_HIGH,shift,1)]) {ObjectDelete(nm);return(0);} }
Dateien:
 
Operr:

Eine hausgemachte Funktion entfernt im Falle eines Pegeldurchbruchs horizontale TREDLINE-Objekte. Funktioniert einwandfrei, ist aber sehr kostspielig.

Bei einer großen Anzahl von Objekten (mehr als 5000) setzt es die MT vollständig außer Kraft. Zwei Tage CPU-Belastung ohne Ergebnis.

Wie kann der Zustand optimal ersetzt werden?

Berechnen Sie iHighest() ganz am Anfang des Codes (beim Start) und speichern Sie den Balkenindex in einer Variablen. Wenn ein neuer Balken geöffnet wird, wird diese Variable inkrementiert und überprüft, ob der vorherige Balken nicht der neue "Höchste" ist. Vergessen Sie auch nicht zu prüfen, ob die Variable > Anzahl der gesuchten Balken ist, dann muss die Funktion iHighest() erneut gestartet werden. Dieser Algorithmus arbeitet zwar viel schneller, ist aber immer noch nicht optimal! :))

 
MaxZ:

Ich habe den Fehler darin gesehen, dass Ihr BUY_STOP und SELL_STOP auf denselben Kurs gesetzt sind. Wenn Sie TP und SL auf Null gesetzt haben, der Fehler 130 aber bestehen bleibt, kann es nicht an ihnen liegen!

Nur BUY_STOP und SELL_LIMIT oder umgekehrt (je nach Einzelfall) BUY_LIMIT und SELL_STOP können auf denselben Preis gesetzt werden. Aber auf keinen Fall BUY_STOP und SELL_STOP! :)))

Sie haben die Handbücher nicht sehr gut gelesen...

Das habe ich! Jetzt habe ich mir angesehen, was ich im Forum gepostet habe. Aber das "Lesen der Handbücher" hat nichts damit zu tun - ich habe einfach die Liste der Parameter kopiert und dann die richtigen korrigiert. Und ich habe vergessen, den Preis in Sell Stop zu korrigieren. In beiden Aufträgen ist es buyPrice, in SellPrice sellPrice. Hätten Sie mir das sofort gesagt, wäre das sehr hilfreich gewesen, aber ich brauchte viel Zeit, um einen Fehler zu finden, weil ich unaufmerksam war.
 
ArgentumZ:
Ich schon! Jetzt habe ich mir angesehen, was ich im Forum gepostet habe. Aber "Handbücher lesen" hat damit nichts zu tun - ich habe einfach die Liste der Parameter kopiert und dann die von mir benötigten korrigiert. Und ich habe vergessen, den Preis in Sell Stop zu korrigieren. In beiden Aufträgen ist es buyPrice, in SellPrice sellPrice. Wenn Sie es mir sofort gesagt hätten, wäre es sehr hilfreich gewesen, aber ich habe aufgrund meiner Unaufmerksamkeit viel Zeit gebraucht, um einen Fehler zu finden.

Tut mir leid, dass ich kein Telepath bin... Hätte ich gewusst, dass es sich um ein Versehen handelt, hätte ich sofort darauf hingewiesen. Ich dachte, du hättest die Theorie nicht verstanden.

Allerdings war Ihre Unaufmerksamkeit von langer Dauer... :D

Grund der Beschwerde: