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 Combat Advisors habe ich Funktionen überall an verdächtigen Stellen in _B(FuncName(...), AlertTime) verpackt.
Ich habe vergessen, dass es sehr teuer ist.
Im besten Fall verbringe ich nur wegen HistorySelect bei jedem Tick einige zehn Millisekunden.
Profiling eines Kampfberaters.
Warum überhaupt teure HS verwenden, außer beim Starten des Roboters?
Ich habe am Anfang des Threads geschrieben.
Sie machen einen OrderSend. Wenn unmittelbar nach dem Ende des OrderSend eine bestimmte Position nicht zur gleichen Zeit geschlossen wurde, machen Sie einen weiteren OrderSend. Dies ist die gesamte Logik, die Sie zum Programmieren benötigen. Async wird nicht verwendet.
Nun zu der Situation, in der sich unser Roboter befand. Sie haben eine OrderSend gesendet, und während diese ausgeführt wurde, hat der Limiter ausgelöst, und dann wurde der TP unserer Position ausgeführt, wie ich bereits erwähnt habe.
Ich verstehe wirklich nichts davon - wenn Sie können, beschreiben Sie bitte die Schritte genauer. Das Einzige, was ich herausgefunden habe, ist, dass nur derOnTradeTransaction-Ereignishandler verwendet wird, was bedeutet, dass wir kein Prioritätsmanagement für die Ereignisbehandlung benötigen und die vorgeschlagene
bool HandleNextEvent(ENUM_EVENT_TYPE);
artet aus in
bool HandleNextEvent();
Das ist der Punkt, den ich wirklich nicht verstehe - wenn Sie es können, beschreiben Sie es bitte genauer, Schritt für Schritt.
Warum können Sie nach dem Aufruf vonOrderSend nichtzurückkehren?
Wenn Sie das nächste Mal zu OnMain zurückkehren, wenn bereits ein neues Ereignis zur Warteschlange hinzugefügt wurde (oder durch einen Timer)
A100:
Warum kann auf denOrderSend-Aufruf nicht einReturn folgen?
Es gibt keine Einschränkungen.
Das nächste Mal kehren Sie zu OnMain zurück, wenn ein neues Ereignis zur Warteschlange hinzugefügt wird (oder durch einen Timer)
Das nächste Ereignis ist die Ausführung eines schwebenden Auftrags und nicht die Übernahme einer Position.
Das nächste Ereignis ist die Ausführung des schwebenden Auftrags, nicht die Übernahme der Position.
Es wird vorgeschlagen, wiederholt zurückzukehren, bis Sie entweder die gesamte aktuelle Warteschlange oder eine bestimmte Anzahl von Ereignissen gelesen haben. Wenn die Handelsereignisse vorbei sind, kehrt ein Timer zurück und Sie haben Zugang zu allen Ereignissen auf einmal.