Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
In PositionGet ohne vorheriges PositionSelect.
Michael, lass uns noch ein "Blatt" mit Verspätungen machen, es wird langweilig. :))))
Wann werden Sie zur Eröffnung gehen? :)))))))
Du liegst falsch: PositionSelect wird bei jedem Tick und vor der letzten Infoausgabe in Block 3 aufgerufen, also funktioniert es auch. Der Grund liegt also offensichtlich nicht in diesem Fall.
Manchmal liege ich falsch, aber das ist nicht der Fall, eindeutig in diesem Fall)
Die Werte der Positionsdaten zum Zeitpunkt des Aufrufs von PositionSelect.
Die Werte werden nach OrderSend nicht aktualisiert.
Wenn PositionSelect(...)==false ist, hat PositionGet keinen Sinn.
Daher: Nach OrderSend können die Positionsdaten nicht sofort abgeholt werden... die Asynchronität ist ein Übel.
Manchmal liege ich falsch, aber das ist nicht der Fall, eindeutig in diesem Fall)
Die Werte der Positionsdaten zum Zeitpunkt des Aufrufs von PositionSelect.
Die Werte werden nach OrderSend nicht aktualisiert.
Wenn PositionSelect(...)==false ist, hat PositionGet keinen Sinn.
Daher: Nach OrderSend können die Positionsdaten nicht sofort abgerufen werden... Asynchronität ist ein Übel.
Dem stimme ich gerne zu - ich schäme mich nicht, Fehler zuzugeben. Aber sehen Sie: Bevor wir in Block 3 einsteigen, wird ganz am Anfang des Handlers OnTick() die von Ihnen erwähnte PositionSelect() aufgerufen, und es wird kein OrderSend() ausgeführt. Im Code habe ich absichtlich einen Verzögerungszähler von 1000 Ticks zwischen der Ausführung der Blöcke 1, 2 und 3 hinzugefügt - es geht um Asynchronität, ich denke, im Tester ist das mehr als genug, um die Position zu fixieren. Darüber hinaus habe ich die Bedingung in Block 3 geändert:
Das Ergebnis hat sich nicht geändert: Der Auftrag zur Schließung der Position wird ausgeführt, aber die Positionsgröße bleibt gleich 1.
:-(
sollte nicht kompiliert werden... PositionAuswählen(_Symbol)
sollte nicht kompiliert werden... PositionAuswählen(_Symbol)
sollte nicht kompiliert werden... PositionAuswählen(_Symbol
Korrigiert _Symbol.
Fazit: Sie hatten Recht! Jetzt funktioniert Block 3 nicht, was bedeutet, dass die Position nicht ausgewählt ist. Vielen Dank für den Dialog! :-)
Die Löffel wurden gefunden, aber die Rückstände bleiben: Wenn es keine Position mehr gibt, wie kann dann das Volumen der Position gleich 1 sein?
Das stimmt nicht mit der Dokumentation überein:
Der Aufruf vonPositionSelect() mit dem Ergebnis "false" führt also nicht zur Aktualisierung der Positionsdaten? Schade!
Der Aufruf vonPositionSelect() mit dem Ergebnis "false" führt also nicht zur Aktualisierung der Positionsdaten? Schade!
Es sind jetzt 10 Monate vergangen.....