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
Oder vielleicht für die Echtzeit, anstelle von
verwenden.
Warum kopieren, wenn Sie sofort den aktuellen Preis erhalten können?
Theoretisch hat CopyTicks in seinen Eingeweiden zusätzliche Parameterprüfungen, wodurch die Länge des Codes im Funktionskörper erhöht wird.
Aber SymbolInfoTick hat keine zusätzlichen Parameter, und theoretisch sollte die Implementierung dieser Funktion weniger Code enthalten.
Weniger Code bedeutet schnellere Ausführung.
Der einzige Wermutstropfen ist, dass die Funktion SymbolInfoTick ähnlich wie CopyTicks keine ausführliche Dokumentation hat und es nicht ganz klar ist, wie sie funktioniert.
Werden die Daten zwischengespeichert, oder werden die Rohdaten sofort wiedergegeben?
Nur das Glas ist sofort verfügbar, alles andere wird zusätzlich geprüft.
Niemand wird die detaillierte Dokumentation offenlegen - sie ist ein Geheimnis hinter den 7 Siegeln ))))
Nur das Glas wird sofort ausgehändigt, alles andere wird zusätzlich kontrolliert.
Niemand wird die detaillierte Dokumentation offenlegen - sie ist ein Geheimnis hinter sieben Siegeln ))))
SymbolInfoTick() kann im Prinzip nicht den Stack geben, ich denke wir meinten BestBid, BestAsk.
Wird die MqlTick-Struktur nicht vollständig von BestBid und BestAsk ausgefüllt?
Wie kommen Sie darauf, dass andere Mitglieder der Struktur einer zusätzlichen Kontrolle bedürfen?
Wenn Sie das gesamte Glas für alle Banken erhalten möchten, sollten Sie
Gibt ein Array von MqlBookInfo-Strukturen zurück, die Einträge für das angegebene Symbol enthalten.
SymbolInfoTick() kann die Tasse nicht geben, vielleicht meinen Sie BestBid, BestAsk.
Wird die MqlTick-Struktur nicht vollständig von BestBid und BestAsk ausgefüllt?
Warum glauben Sie, dass die übrigen Strukturelemente einer zusätzlichen Kontrolle bedürfen?
Und wenn du den kompletten Tumblr für alle Gangs haben willst, solltest du
Gibt ein Array von MqlBookInfo-Strukturen zurück, die Datensätze eines Stapels von Preisen für ein bestimmtes Symbol enthalten.
Ich weiß nicht, was Sie meinen.
OnBook und OnTick sind unterschiedliche Threads, wenn MQ sie synchronisiert, ist das sehr schlecht.
Nach dem Bild zu urteilen, das ich oben gezeigt habe, sind sie nicht vollständig synchronisiert.
Auch der fxsaber-Test ist vertrauenserweckend:
Das Ergebnis ist schlecht: In OnTick/OnBookEvent stimmen die mit verschiedenen Methoden empfangenen Ticks innerhalb einer On-Funktion sehr oft nicht überein. Und Sie können nicht erkennen, welche Methode, die Zecke zu bekommen, relevant ist und welche nicht. Schreckliche Unklarheit.
Also, wer will was:
- wenn Sie bessere Preise brauchen - OnBook,
- wenn Sie ein paar Angebote brauchen - CopyTick,
- und wenn Sie nichts brauchen - OnTick, es kann Ticks überspringen und den Informationsfluss verzögern, weil es in einem Prozess in Linie mit anderen On-Funktionen arbeitet.
p.s. Alles, was ich hier geschrieben habe, betrifft nur Börsenkonten, Forexisten interessiert das nicht (kein Unterschied), Forexisten gehen vorbei.
Für einen Moment schien es so, als ob Sie den Wunsch haben, zu verstehen, und das wird Ihnen helfen, Ihren Stolz zu zähmen.
Nein, es schien nur so.
Die Frage ist gelöst, und jeder kann Ihre, fxsabers und meine Codes durchsehen und Schlussfolgerungen ziehen.
Mit Ihnen stelle ich den Dialog ein, es kommt nichts außer lautem Geschrei von Ihnen, und auf den Empfang der Informationen arbeitet Ihr Gehirn überhaupt nicht.
Viel Glück mit den FORTS.
Andrej!
Sie sind zu Unrecht durch meine Bemerkungen über FOREX beleidigt, sie haben nichts mit Ihnen zu tun.
Wir haben immer einen konstruktiven Dialog geführt, aber wenn es Sie in irgendeiner Weise beleidigt hat, dann
Ich entschuldige mich persönlich bei Ihnen!
Ich weiß nicht, was Sie meinen.
OnBook und OnTick sind unterschiedliche Threads, wenn MQ sie synchronisiert hat, ist das schade.
Nach meinen jüngsten Tests (nachdem ich einen Fehler im Code behoben hatte),
es ist ganz klar, dass OnTick() entweder früher oder gleichzeitig mit OnBookEvent() ausgelöst wird,
aber in den Druckern ist OnTick() immer die erste.
Es scheint, dass, wenn eine neue Gruppe von Zecken auftaucht,
die Funktion, die sie verarbeitet, "zieht" zunächst OnTick() und "schleicht" dann Daten ein
wo es hingehört :)
Oder vielleicht für die Echtzeit, anstelle von
verwenden.
Warum kopieren, wenn Sie den aktuellen Preis sofort erhalten können?
An welchem Markt sind Sie interessiert?
Nach meinen jüngsten Tests (nachdem ich einen Fehler im Code behoben hatte),
ist es ganz klar, dass OnTick() entweder früher oder gleichzeitig mit OnBookEvent() ausgelöst wird,
aber in den Druckern ist OnTick() immer die erste.
Es scheint, dass, wenn eine neue Gruppe von Zecken eintrifft,
dann "zieht" die Funktion, die sie verarbeitet, zuerst OnTick() und "sendet" dann die Daten
wo es hingehört :)
Ja, das ist ungefähr dasselbe.
Das Terminal ist ein asynchrones Single-Thread-System, das alle Ereignisse nacheinander verarbeitet.
Für die Reinheit des Experiments, wer schneller ist OnBook oder OnTick, sollten wir zwei Terminals bei einem Broker laufen lassen.
In einem EA nurOnBook ohneOnTick .
Im anderen FallnurOnTick ohne OnBook.
Und fassen Sie die Preise mit der Ortszeit in Millisekunden in einer Datei zusammen. Dann wird sich der wirkliche Unterschied zeigen.
Andernfalls ist es ohne Lagerzeit unmöglich, den Unterschied zu verstehen.
Ja, das ist in etwa die gleiche Denkweise.
Das Terminal ist ein asynchrones Single-Thread-System, das alle Ereignisse nacheinander verarbeitet.
Für die Reinheit des Experiments, wer schneller ist OnBook oder OnTick, sollten wir zwei Terminals bei einem Broker laufen lassen.
In einem EA nurOnBook ohneOnTick .
Im anderen FallnurOnTick ohne OnBook.
Und fassen Sie die Preise mit der Ortszeit in Millisekunden in einer Datei zusammen. Dann wird sich der wirkliche Unterschied zeigen.
Andernfalls kann man den Unterschied nicht verstehen, wenn man keine Zeit auf Lager hat.
Kein Problem, ich werde versuchen, es am Montag zu machen (ich habe drei Terminals in Echtzeit).
Ich weiß nicht, was Sie meinen.
OnBook und OnTick sind unterschiedliche Threads, wenn MQ sie synchronisiert hat, ist das schade.
Nach dem Bild zu urteilen, das ich oben gezeigt habe, sind sie nicht vollständig synchronisiert.
Auch der fxsaber-Test ist vertrauenserweckend:
Also, wer will was:
- wenn Sie bessere Preise brauchen - OnBook,
- wenn Sie ein paar Angebote brauchen - CopyTick,
- und wenn Sie nichts brauchen - OnTick, es kann Ticks überspringen und den Informationsfluss verzögern, weil es in einem Prozess in Linie mit anderen On-Funktionen arbeitet.
p.s. Alles, was ich hier geschrieben habe, betrifft nur Börsenkonten, Forex-Händler interessiert das nicht (kein Unterschied), Forex-Händler gehen vorbei.
Ich bezog mich aufSymbolInfoTick, Sie schrieben, dass " nur die Tasse sofort gegeben wird, alles andere wird zusätzlich geprüft".
Ich habe Ihnen die Struktur von MqlTick gegeben, um Ihnen zu zeigen, woraus sie besteht, es gibt keine Tasse, nur beste Preise. Und es gibt keine zusätzlichen Kontrollen.
Ich bin daher überrascht über das, was Sie geschrieben haben, vielleicht haben Sie die Idee falsch dargestellt.
OnBook und OnTick sind unterschiedliche Sockets, da bei allen Börsenprotokollen der Handel in einem Socket und Level2 (Markt) in einem anderen Socket stattfindet.
Dies bedeutet, dass nur das beste Gebot, die beste Nachfrage, das letzte Gebot usw. an den Socket OnTick gesendet werden. Daher hat der OnTick einen eigenen Handler für diesen Socket.
Für Level2 gibt es einen anderen Socket und dementsprechend auch einen anderen Handler. Sie sollten auf der Terminalseite nicht zwangsweise synchronisiert werden.
In Ordnung, wir verwenden genau das, was wir wollen, die Trades inSymbolInfoTick oder CopyTick, Glas in MarketBookGet.
An welchem Markt sind Sie interessiert?
Ich verwende keinen Forex-Handel.
Im Beispielerhalten Sienur ein letztes Element der Struktur vonCopyTick, nämlich nur die besten Preise.
Also dachte ich, warum Daten von einem Speicherbereich in einen anderen kopieren,
, wenn esSymbolInfoTick gibt, das die besten Preise liefert, ohne irgendwo zu kopieren. Es kann sein, dass ich mit der Funktionsweise falsch liege, das ist nur meine Vermutung.
Obwohl es möglich ist, dass diese beiden Funktionen auf dieselbe Weise funktionieren, besteht der einzige Unterschied darin, dassCopyTick einen Bereich von Ticks anfordern kann.
Und es ist unnötig, Schleifen zur Verarbeitung von Ticks zuverwenden.