Echte Arbeit auf MT5 NDD - Seite 10

 

Metatrader hat eine wesentliche Einschränkung: Sie können kein Limit zu einem Preis setzen, der schlechter ist als der aktuelle Preis. Dies verhindert, dass viele Strategien in Metatrader umgesetzt werden können.

Sie möchten beispielsweise verkaufen können, wenn der Geldkurs ein bestimmtes Kursniveau erreicht, aber mit einer negativen Slippage, die N Pips nicht überschreitet. Dies ist sehr notwendig, wenn es nicht genügend Volumen zum besten Preis gibt, um das benötigte Volumen zu füllen, aber es ist notwendig, um die Strategie auszuführen, weil die Logik so eingerichtet ist (zum Beispiel im Tester).

In diesem Fall setzen Sie, sobald der von Ihnen benötigte Bid-Kurs erscheint, das SellLimit auf den Bid-N-Kurs, d.h. um N Pips schlechter als der aktuelle Kurs. Auf diese Weise erhalten Sie eine größere Füllung Ihres Limits zum gewichteten Durchschnittspreis, dessen schlechtester Wert nicht weniger als N Pips vom aktuellen Geldkurs entfernt sein wird.

Dies ist eigentlich eine Sache der Archivierung. Und kompetente Makler haben solche bedingten Limitaufträge mit einem zusätzlichen Parameter - dem schlechtesten Preis unter denjenigen, die den gewichteten Durchschnittspreis bilden. Solche bedingten Limits können die Ausführungsgeschwindigkeit des Brokers nicht verschlechtern, da sie in der gleichen Tabelle wie die klassischen Limits gespeichert werden.

 
hrenfx:

Lesen Sie genauer: über reines ECN und ECN/STP.

Ablehnung und positiver Grenzschlupf:

Bei STP wird Ihre Limit-Order gesendet, wenn der Preis besser oder gleich dem der Limit-Order ist. Außerdem kann sich der Preis in jede Richtung ändern, während Ihr Auftrag an STP geht: weiter steigen (positiver Slippage), aus dem Limitbereich herausgehen (Rejct).

Ich danke Ihnen. Aber der folgende Punkt ist nicht klar. Aus Ihrer Beschreibung geht hervor, dass ECN nicht über einen gemeinsamen internen und externen Marktstapel verfügt und der externe Markt nicht immer einen Limit-Slip hat, und wenn doch, dann im letzten Moment, wenn der Preis irgendwo abrutschen kann, was sogar zu einer erneuten Ablehnung führen kann, selbst wenn der Limit-Auftrag vom Händler vorher gesendet wurde und der Preis ihn korrekt getroffen hat. Ist diese Beschreibung wirklich zutreffend, denn es scheint unwahrscheinlich, dass der im Voraus gesendete Limit-Auftrag nicht ausgeführt wird, weil das ECN es nicht geschafft hat, ihn im letzten Moment in den allgemeinen Pool aufzunehmen. Noch überraschender ist die Erklärung über einen möglichen positiven Slippage zu diesem Zeitpunkt, den das ECN an den Händler zurückgibt.
 

Es gibt viele Einsätze: interne (ECN) und externe (jeder angeschlossene Liquiditätsanbieter). Es gibt keinen gemeinsamen Markt für Wetten.

Einige Broker erstellen so genannte Snapshots, um die Ausführung von Limitern mehr oder weniger zu garantieren, ohne sie umzuleiten. So wird beispielsweise ein Preis nur dann in den Feed aufgenommen, wenn er von drei Liquiditätsanbietern gleichzeitig verfügbar ist.

Außerdem haben ECNs fast nichts mit DCs zu tun, sie handeln nicht. Bei transparenten Brokern erhält der Händler einen positiven Slippage. Wenn Sie ein Limit zu einem schlechteren Preis als dem aktuellen setzen, wird es immer einen positiven Slippage geben. Und es wäre ziemlich ungehörig, wenn der Makler sie nicht zurückgeben würde. Natürlich gibt es auch Broker, die nur einen Teil des positiven Slippage auszahlen. Aber es ist besser, sich von ihnen fernzuhalten.

 
Entwickler: Ich frage mich, ob wir in dieser Hinsicht mit der Entwicklung der Plattform rechnen können (in diesem Thread angesprochene Probleme, Erweiterung der Begrenzer usw.)?
 
hrenfx:

Es gibt viele Einsätze: intern (ECN) und extern (jeder angeschlossene Liquiditätsanbieter). Es gibt kein gemeinsames Tarifbuch.

Ich danke Ihnen. Warum können die Aggregatoren dann nicht alle Anbieter in einer gemeinsamen "eigenen" Tasse zusammenfassen und nur den besten Preis auswählen? Ist es nicht das, was sie tun?
 
Andrei01:
Ich danke Ihnen. Warum können die Aggregatoren dann nicht alle Anbieter in einer gemeinsamen "eigenen" Tasse zusammenfassen und nur den besten Preis auswählen? Ist es nicht das, was sie tun?

Sie scheinen einige komplizierte Marktgesetze zu sehen, während in Wirklichkeit alles ganz einfach ist.

Die Behauptung, ein Maklerhaus sei nicht marktorientiert, ist fast schon eine Lüge. Wenn ein Maklerunternehmen fast keine Positionen ausführt, heißt das nicht, dass es nicht am Markt tätig ist. Das ist nicht der Fall.

Sich nicht zurückzuziehen und die Risiken selbst zu tragen, während man immer noch Market Maker ist, oder sich zurückzuziehen - all das ist der Markt. Beide Systeme werden von praktisch allen Büros verwendet, von kleinen Einzelhändlern bis hin zu großen institutionellen Unternehmen.

Ein Aggregator ist einfach eine Zusammenfassung von Handelskonditionen durch eine Person in einer Reihe von Büros zur gleichen Zeit. In der Regel wissen diese Unternehmen nicht einmal, dass jemand sie irgendwo sammelt. Zum Beispiel können Sie mit MQL+WinAPI viele Broker auf Metatrader leicht kombinieren. Sie werden eine Art Marktplatz haben. Das Problem wird jedoch sein, dass die Makler selbst keine Kunden dieses Systems sind. Sie senden keine Aufträge an Ihren Markt, sondern Sie bilden einen virtuellen Marktplatz für Ihren eigenen Bedarf - entweder für den Handel oder für das Broking.

Daher ist der echte ECN-Markt möglicherweise kein virtueller Marktplatz (STP), sondern ein echter Marktplatz nur für die Aufträge, die an ihn gesendet werden. Im Falle eines Maklers kann es sich nur um eigene Kundenaufträge handeln, die nicht so zahlreich sind.

Es gibt Vor- und Nachteile. Der Vorteil ist zum Beispiel, dass niemand von der Außenwelt Ihre Limits sieht. Daher kann Ihre Strategie nicht verstanden und manipuliert werden. Und Ihre Grenzen befinden sich auf dem Stapel der Grenzen anderer Kunden, so dass von der Außenwelt nichts zu sehen ist.

 

hrenfx:

Das hat Vor- und Nachteile. Positiv ist zum Beispiel, dass niemand von außen Ihre voreingestellten Begrenzer sehen kann. Folglich können sie Ihre Strategie, Sie zu manipulieren, nicht durchschauen. Außerdem befinden sich Ihre Limits im Stapel der Limits der anderen Kunden, so dass es nach außen hin nichts zu sehen gibt.

Dennoch verstehe ich nach dieser Erklärung den nächsten Punkt über den Liquiditätsaggregator nicht, unabhängig davon, wer es ist. Angenommen, es gibt mehrere Liquiditätsanbieter mit eigenen Anteilen, die ich in meinem Haus zu einem neuen Aggregator zusammenführen möchte. Um diese Verschmelzung ohne Verschlechterung der Marktbedingungen mit einem Fehler der Zugriffszeit auf den externen Marktstapel, der ein Bruchteil einer Sekunde ist, vollständig gleichwertig zu machen, reicht es anscheinend aus, die Stapel bis zu einer ausreichenden Tiefe zu verschmelzen, und die Begrenzer und im Allgemeinen alle anhängigen Aufträge, die sich in externen Stapeln befinden, erscheinen automatisch im externen Stapel und infolgedessen im internen, verschmolzenen Stapel, weil die anhängigen Aufträge und jeden Stapel bilden.

Da die ausstehenden Aufträge jedoch in der Regel im Voraus festgelegt werden, d.h. viel länger als die Zeit der Bindung zwischen den Gläsern, kann es hier im Prinzip keine Vorhersage geben, da sie alle bereits im internen Glas aus dem externen aggregiert werden.

 

Das Schema sieht grob wie folgt aus:

  1. Sie geben eine Order im Voraus auf, sie geht in den internen Marktplatz aus den Orders der Kunden Ihres ECN-Brokers ein.
  2. Ihr Broker zeigt Ihnen jedoch den virtuellen Stapel = interner Stapel (ECN) + externer Stapel (STP).
  3. Wenn die entgegengesetzte Order im internen ECN auftaucht, werden beide fast sofort garantiert mit dem Volumen min(Limit1, Limit2) ausgeführt (ohne Slippage), und der Broker erhält die doppelte Provision (von jeder Order).
  4. Wenn ein Preis, der Ihren Auftrag erfüllt, von außen kommt (zum Beispiel von einem dritten Liquiditätsanbieter - LP3), dann
  5. Ihr Auftrag wird aus dem internen ECN-Stapel gelöscht (eingefroren).
  6. Wird mit einer bestimmten LiveTime (normalerweise einige zehn oder hundert Millisekunden) an LP3 gesendet.
  7. Wenn Ihre Bestellung in LP3 eingeht, ist der Preis normalerweise schlechter als der aktuelle Preis in LP3. Daher wird es einen entsprechenden positiven Ausrutscher geben.
  8. Wenn Ihr Gebotspreis besser ist als der aktuelle Preis bei LP3 (er kann sich während der Versand- und Lieferfrist geändert haben), gibt es einen Rabatt, wenn der LiveTime-Preis nicht zufriedenstellend ist.
  9. Durch LiveTime wird der Saldo (bei Teilausführung) Ihres Auftrags aus LP3 entfernt und im internen ECN platziert (nicht eingefroren).
  10. Bei externer Ausführung erhält der Makler die gleiche Provision abzüglich der Provision von LP3 (der Makler ist für LP3 einfach ein Kunde, der im Namen seiner Kunden handelt). Und Sie erhalten einen potenziellen positiven Abschlag oder Rabatt.

Infolgedessen gibt es im ECN/STP-Schema günstigere Preise aufgrund des internen ECN und des Vorteils der doppelten Provision für den Makler, und es gibt günstigere Preise bei der Aggregation (STP) mehrerer Liquiditätsanbieter, während es die Möglichkeit gibt, Ihre Strategie vor ihnen zu tarnen und potenziell positive Slippage (und Redirects).

P.S. Interessehalber können Sie versuchen, Ihren eigenen MT-Aggregator zu schreiben. Es ist wirklich sehr einfach. Aber wenn Sie anfangen, durch sie zu handeln, werden Sie eine große Anzahl von Fallstricken, die in der groben Schema oben, natürlich, sind nicht angegeben sehen.

 
hrenfx:

Das Schema sieht grob wie folgt aus

Ich danke Ihnen für die Regelung, aber es gibt noch Fragen, die schon früher aufgeworfen wurden.

1. Ist dies die einzige Möglichkeit, das Aggregationsverfahren umzusetzen?

2. Warum ist es nicht möglich, die Zuhaltungen zu einer einzigen Zuhaltung zusammenzufassen, wie ich es beschrieben habe? Schließlich ist die Interaktion mit einem externen Stapel kontinuierlich, um einen einzigen Stapel zu bilden, nicht nur zum Zeitpunkt der Auslösung der Anfrage, die eine unnötige Verzögerung einführt, die unweigerlich die Bedingungen der Ausführung verschlechtern muss? Außerdem gibt es nach Ihrem Schema keinen Unterschied zwischen einem schwebenden Auftrag und einem Marktauftrag, da alles erst im letzten Moment ausgeführt wird und es keinen Sinn macht, einen schwebenden Auftrag im Voraus zu senden, da er erst im allerletzten Moment auf den externen Markt gelangt.

 
Andrei01:

1. Ist dies das einzige System zur Umsetzung eines Aggregationsverfahrens?

Grob gesagt, ja.

2. Warum ist es unmöglich, das von mir beschriebene Aggregationsschema umzusetzen?

Denn alle Liquiditätsanbieter müssen Kunden Ihres ECN-Systems werden. Es gibt einen solchen Makler - LMAX. Es ist praktisch ein reines ECN (MTF-Träger), bei dem die Liquiditätsanbieter Kunden des geschaffenen Systems sind. D.h. es gibt eine Art von Vereinbarungen mit einigen Banken, dass sie solche Bedingungen akzeptieren. LastLook habe ich oben bereits erwähnt, daneben gibt es noch andere Gründe, warum viele Banken nicht auf solche Konditionen setzen.

Schließlich erfolgt die Interaktion mit dem externen Stapel die ganze Zeit über, um einen einzigen Stapel zu bilden, und nicht nur in dem Moment, in dem der Auftrag ausgelöst wird, was eine unnötige Verzögerung mit sich bringt, die die Ausführungsbedingungen unweigerlich verschlechtern würde.

Ja, es gibt keine garantierte Ausführung mit Aggregation. Es gibt verschiedene Möglichkeiten, die Ausführung durch Schnappschüsse (Filter) zu verbessern, aber das ist nur die eine Seite der Medaille. Die Vorteile der Aggregation wurden oben bereits mehrfach genannt.

Außerdem gibt es nach Ihrem Schema keinen Unterschied zwischen einem schwebenden Auftrag und einem Marktauftrag, da alles erst im letzten Moment ausgeführt wird und es keinen Grund gibt, einen schwebenden Auftrag im Voraus zu senden, da er erst im allerletzten Moment in das äußere Glas gelangt.

Es gibt einen großen Unterschied: Ein Marktauftrag wird mit Slippage in beide Richtungen ausgeführt, ein Limitauftrag nur in die positive Richtung, oder er wird nicht ausgeführt. Das Setzen einer Pending Order im Voraus (mindestens eine Sekunde vorher) ermöglicht es uns, die Abhängigkeit vom Terminal<->Handelsserver<->Aggregator zu vermeiden, bzw. die für die Ausführung benötigte Zeit zu reduzieren und somit die Ausführung selbst zu verbessern.