Wednesday, 28 June 2017

Metatrader 5 Hedging Devisen


MetaTrader 5 - Trading MetaTrader 5 verfügt über ein Hedging Position Accounting System Die MetaTrader 5 Plattform wurde ursprünglich für den Handel innerhalb des Netting Position Accounting System konzipiert. Das Netting-System ermöglicht nur eine Position pro Finanzinstrument, so dass alle weiteren Operationen an diesem Instrument nur zum Schließen, Umkehren oder Ändern des Volumens der bereits vorhandenen Position führen. Um die Möglichkeiten der Retail-Devisenhändler zu erweitern, haben wir die zweite Buchhaltungssystem-Hedging hinzugefügt. Nun ist es möglich, mehrere Positionen pro Symbol zu haben, einschließlich entgegengesetzt gerichteter. Dies ebnet den Weg zur Umsetzung von Handelsstrategien auf der Grundlage der sogenannten Sperrung, wenn der Preis sich gegen einen Händler bewegt, können sie eine Position in die entgegengesetzte Richtung zu öffnen. Da das neue System dem von MetaTrader 4 ähnelt, ist es den Händlern vertraut. Zur gleichen Zeit werden Händler in der Lage, alle Vorteile der fünften Plattform Version Abfüllung Bestellungen mit mehreren Angeboten (einschließlich Teilfills), Multicurrency und Multithread-Tester mit Unterstützung für MQL5 Cloud Network genießen. und vieles mehr. Jetzt können Sie ein Konto verwenden, um die Märkte zu handeln, die sich an das Netting-System und erlauben nur eine Position pro Instrument, und verwenden Sie ein anderes Konto auf der gleichen Plattform zu handeln Forex und Hedging. Dieser Artikel beschreibt die Netze und Hedging-Systeme im Detail sowie die Auswirkungen auf die Änderungen im Zusammenhang mit der Umsetzung des zweiten Buchhaltungssystems. Positionsbuchhaltung hängt von einem Handelskonto ab Ein Positionsrechnungssystem wird auf Kontoebene gesetzt und im Terminalfensterkopf und im Journal angezeigt: Um ein Demokonto mit Hedging zu öffnen, aktivieren Sie die entsprechende Option: Um ein reales Konto mit Hedging zu öffnen, setzen Sie sich mit uns in Verbindung Ihr Broker. Netting-System Mit diesem System können Sie nur eine gemeinsame Position für ein Symbol gleichzeitig haben: Wenn es eine offene Position für ein Symbol gibt, erhöht die Ausführung einer Transaktion in der gleichen Richtung die Lautstärke dieser Position. Wenn ein Deal in der entgegengesetzten Richtung ausgeführt wird, kann das Volumen der bestehenden Position verringert werden, die Position kann geschlossen werden (wenn das Dealvolumen gleich dem Positionsvolumen ist) oder umgekehrt (wenn das Volumen des gegenüberliegenden Deals größer ist als Die aktuelle Position). Es spielt keine Rolle, was hat das Gegenteil eine ausgeführte Marktordnung oder eine ausgelöste ausstehende Bestellung verursacht. Das nachstehende Beispiel zeigt die Ausführung von zwei EURUSD-Buy-Angeboten jeweils 0,5 Lose: Die Ausführung beider Deals führte zu einer gemeinsamen Position von 1 Los. Hedging-System Mit diesem System können Sie mehrere offene Positionen von ein und demselben Symbol, einschließlich entgegengesetzter Positionen, haben. Wenn Sie eine offene Position für ein Symbol haben und einen neuen Deal (oder einen ausstehenden Trigger) ausführen, wird zusätzlich eine neue Position geöffnet. Ihre aktuelle Position ändert sich nicht. Das folgende Beispiel zeigt die Ausführung von zwei EURUSD Buy Deals 0,5 Lots pro Stück: Die Ausführung dieser Deals führte zur Eröffnung von zwei separaten Positionen. Auswirkungen des gewählten Systems Abhängig von der Positionsrechnungslegung können einige der Plattformfunktionen unterschiedliche Verhaltensweisen haben: Regelungen zum Stoppen und Vererben von Gewinnverhältnissen ändern. Um eine Position im Netting-System zu schließen, sollten Sie einen gegensätzlichen Handel für dasselbe Symbol und das gleiche Volumen durchführen. Um eine Position im Hedging-System zu schließen, wählen Sie im Kontextmenü der Position explizit den Befehl Position schließen. Eine Position kann im Hedging nicht rückgängig gemacht werden. In diesem Fall wird die aktuelle Position geschlossen und ein neues mit dem verbleibenden Volumen wird geöffnet. Im Hedging-System ist eine neue Bedingung für die Margin-Berechnung Hedged Margin verfügbar. Neue Handelsoperationsart - Close By Die neue Handelsvorgangstyp wurde hinzugefügt, um Hedging-Konten eine Position gegenüber einer anderen Position zu schließen. Dieser Vorgang ermöglicht das Schließen von zwei entgegengesetzt gerichteten Positionen an einem einzigen Symbol. Wenn die entgegengesetzten Positionen eine unterschiedliche Anzahl von Losen haben, bleibt nur eine der beiden Reihen offen. Sein Volumen ist gleich der Differenz der Lose der geschlossenen Positionen, während die Positionsrichtung und der offene Preis (von Volumen) die größere der geschlossenen Positionen übereinstimmen. Im Vergleich zu einem einzigen Verschluss der beiden Positionen ermöglicht das Schließen durch eine entgegengesetzte Position den Händlern, einen Spread zu sparen: Bei einem einzigen Schließen müssen die Händler einen Spread zweimal bezahlen: Beim Schließen einer Kaufposition zu einem niedrigeren Preis (Bid) Und eine Verkaufsposition bei einer höheren zu schließen (Ask). Wenn eine entgegengesetzte Position verwendet wird, wird ein offener Preis der zweiten Position verwendet, um die erste zu schließen, während ein offener Preis der ersten Position verwendet wird, um die zweite zu schließen. Im letzteren Fall wird eine enge Ordnung gelegt. Tickets von geschlossenen Positionen sind in ihrem Kommentar angegeben. Ein Paar von entgegengesetzten Positionen wird durch zwei out durch Abkommen geschlossen. Der Gesamtgewinn, der sich aus der Schließung der beiden Positionen ergibt, wird nur in einem Deal festgelegt. Marginberechnung im Hedging-System der Positionsabrechnung Wenn das Hedging-Positionsrechnungssystem verwendet wird, wird die Marge nach den oben beschriebenen Formeln und Prinzipien berechnet. Es gibt jedoch einige zusätzliche Funktionen für mehrere Positionen des gleichen Symbols. Positionsorders öffnen sich in die gleiche Richtung Die Volumina werden zusammengefasst und der gewogene durchschnittliche offene Kurs berechnet. Die resultierenden Werte werden für die Berechnung des Randes durch die Formel verwendet, die dem Symboltyp entspricht. Bei ausstehenden Aufträgen (wenn das Margin-Verhältnis nicht Null ist) wird die Marge separat berechnet. Gegenüberliegende offene Positionen desselben Symbols werden als abgesichert oder abgedeckt betrachtet. Für solche Positionen sind zwei Berechnungsmethoden möglich. Die Berechnungsmethode wird vom Broker bestimmt. Verwenden des größeren Beines Wird verwendet, wenn die Berechnung mit einem größeren Bein nicht im Hedged-Margin-Feld der Vertragsspezifikation angegeben ist. Die Berechnung erfolgt in mehreren Schritten: Bei aufgedecktem Volumen Bei gedecktem Volumen (wenn gesicherte Margengröße angegeben ist) Für ausstehende Aufträge Der resultierende Marginwert wird als Summe der bei jedem Schritt berechneten Margen berechnet. Berechnung für ungedecktes Volumen Berechnung des Gesamtvolumens Alle Positionen und Marktaufträge für jedes der Beine kaufen und verkaufen. Berechnung der gewogenen durchschnittlichen Position und Marktordnung Offener Preis für jedes Bein: (offener Preis der Position oder Bestellung 1 Positions - oder Auftragsvolumen 1. offener Preis der Position oder der Bestellung N Positions - oder Auftragsvolumen N) (Positions - bzw 1. Volumen der Position oder Ordnung N). Berechnung des nicht aufgedeckten Volumens (kleineres Beinvolumen wird vom größeren abgezogen). Das berechnete Volumen und der gewichtete Durchschnittspreis werden dann verwendet, um die Marge durch die entsprechende Formel entsprechend dem Symboltyp zu berechnen. Der gewichtete Durchschnittswert des Verhältnisses und der Quote wird unter Berücksichtigung der Margin-Ratio und der Umwandlung der Margin-Währung in die Devisentermingeschäfte herangezogen. Berechnung für Deckungsvolumen Wird verwendet, wenn der Hedged Margin-Wert in einer Kontraktspezifikation angegeben ist. In diesem Fall wird die Margin für abgesichertes sowie aufgedecktes Volumen berechnet. Wird die Anfangsspanne für ein Symbol angegeben, wird die gesicherte Marge als absoluter Wert (monetär) angegeben. Wenn der Anfangsrand nicht angegeben ist (gleich 0), wird die Kontraktgröße im Feld Hedged angegeben. Die Marge wird durch die entsprechende Formel in Übereinstimmung mit der Art des Finanzinstruments unter Verwendung der festgelegten Kontraktgröße berechnet. Zum Beispiel haben wir zwei Positionen Kaufen EURUSD 1 Los und Verkauf EURUSD 1 Los, die Kontraktgröße ist 100.000. Wenn der Wert von 100.000 im Hedged-Feld angegeben ist, wird der Margin für die beiden Positionen gemäß 1 Los berechnet. Wenn Sie 0 angeben, wird für das abgesicherte (abgedeckte) Volumen kein Margin berechnet. Für jede abgesicherte Position wird die Marge gemäß dem im Hedged Margin-Feld in der Kontraktspezifikation angegebenen Wert belastet: Berechnung des abgesicherten Volumens für alle offenen Positionen und Marktaufträge (nicht aufgedecktes Volumen wird vom größeren Bein abgezogen). Berechnung der gewogenen durchschnittlichen Position und der Marktordnung Offener Preis: (offener Preis der Position oder Bestellung 1 Positions - oder Auftragsvolumen 1. offener Preis der Position oder Bestellung N Positions - oder Auftragsvolumen N) (Positions - bzw Der Position oder der Ordnung N). Das berechnete Volumen, der gewichtete Durchschnittspreis und der abgesicherte Marginwert werden dann verwendet, um die Marge durch die entsprechende Formel entsprechend dem Symboltyp zu berechnen. Der gewichtete Durchschnittswert des Verhältnisses und der Quote wird unter Berücksichtigung der Margin-Ratio und der Umwandlung der Margin-Währung in die Devisentermingeschäfte herangezogen. Berechnung für ausstehende Aufträge Berechnung der Marge für jede ausstehende Auftragsart getrennt (Buy Limit, Sell Limit, etc.). Der gewichtete durchschnittliche Wert des Verhältnisses und der Rate für jede anstehende Auftragsart wird unter Berücksichtigung der Margin Ratio und der Umwandlung der Marginwährung in die Devisentermingeschäfte verwendet. Wird verwendet, wenn die Berechnung mit einem größeren Bein im Feld "Hedged Margin" der Vertragsspezifikation angegeben ist. Berechnung der Marge für kürzere und längere Strecken für alle offenen Positionen und Marktaufträge. Berechnung der Marge für jede ausstehende Auftragsart separat (Buy Limit, Sell Limit, etc.). Fassen Sie einen längeren Beinabstand zusammen: Langpositionen und Marktaufträge lang ausstehende Aufträge. Summiert eine kürzere Bein-Marge: Short-Positionen und Marktaufträge kurz ausstehende Aufträge. Der größte aller berechneten Werte wird als endgültiger Grenzwert verwendet. Änderungen in MQL5 Jetzt hat jede Position ein einzigartiges Ticket. Es entspricht in der Regel dem Ticket eines Auftrags, der verwendet wird, um die Position zu öffnen. Ein Ticket wird nach der Terminalaktualisierung automatisch allen verfügbaren Positionen zugewiesen. Wenn Sie eine Position im Hedging-System ändern oder schließen, müssen Sie dessen Ticket angeben (MqlTradeRequest :: ticket). Sie können auch ein Ticket im Netting-System angeben, die Positionen werden jedoch durch einen Symbolnamen gekennzeichnet. Positionspositionsausweis. Füllen Sie sie beim Wechseln und Schließen einer Position für ihre klare Identifikation. Es entspricht normalerweise dem Ticket eines Auftrags, der verwendet wird, um die Position zu öffnen. Position durch gegenüberliegendes Positionsticket. Es wird verwendet, wenn eine Position durch eine entgegengesetzte geschlossen wird (geöffnet auf dem gleichen Symbol, aber in die entgegengesetzte Richtung). MqlTradeTransaction enthält außerdem die beiden ähnlichen Felder: Positionsticket einer Position, die von Transaktion betroffen ist. Es ist für Transaktionen im Zusammenhang mit der Abwicklung von Marktaufträgen (TRADETRANSACTIONORDER außer TRADETRANSACTIONORDERADD, wo noch kein Positionsticket zugewiesen ist) und Auftragsverlauf (TRADETRANSACTIONHISTORY) gefüllt. Position durch gegenüberliegendes Positionsticket. Es wird verwendet, wenn eine Position durch eine entgegengesetzte geschlossen wird (geöffnet auf dem gleichen Symbol, aber in die entgegengesetzte Richtung). Es wird nur für Aufträge gefüllt, die eine Position durch eine entgegengesetzte (in der Nähe) schließen und schließt durch eine entgegengesetzte (out by). Die neue Funktion PositionGetTicket gibt ein Positionsticket durch einen Index in der Liste der offenen Positionen zurück und wählt diese Position automatisch für die weitere Arbeit mit dem Positionsstatus. PositionGetInteger. Und PositionGetString-Funktionen. Die neue PositionSelectByTicket-Funktion wählt eine offene Position für die weitere Arbeit durch ein bestimmtes Ticket aus. PositionSelect wählt eine Position durch einen Symbolnamen für die weitere Arbeit mit dem PositionsmodusDouble aus. PositionGetInteger. Und PositionGetString-Funktionen. Im Hedging-System (wo es mehrere Positionen an einem einzigen Symbol geben kann) wählt die Funktion eine Position mit dem niedrigsten Ticket aus. Die neue Eigenschaft ACCOUNTMARGINMODE ermöglicht den Erhalt der Margin - und Positionskalkulation auf einem Handelskonto: MetaTrader 5 Build 1325: Hedging-Option und Testen an realen Ticks Wir haben die zweite Hedging-Rechnung eingeführt, die die Möglichkeiten der Retail-Devisenhändler erweitert. Nun ist es möglich, mehrere Positionen pro Symbol zu haben, einschließlich entgegengesetzt gerichteter. Dies ebnet den Weg zur Umsetzung von Handelsstrategien auf der Grundlage der sogenannten Sperrung, wenn der Preis sich gegen einen Händler bewegt, können sie eine Position in die entgegengesetzte Richtung zu öffnen. Da das neue System dem von MetaTrader 4 ähnelt, ist es den Händlern vertraut. Zur gleichen Zeit werden Händler in der Lage, alle Vorteile der fünften Plattform Version Abfüllung Bestellungen mit mehreren Angeboten (einschließlich Teilfills), Multicurrency und Multithread-Tester mit Unterstützung für MQL5 Cloud Network genießen. und vieles mehr. Jetzt können Sie ein Konto verwenden, um die Märkte zu handeln, die sich an das Netting-System und erlauben nur eine Position pro Instrument, und verwenden Sie ein anderes Konto auf der gleichen Plattform zu handeln Forex und Hedging. Eröffnen eines Hedge-Kontos und eines Sichtpositions-Buchhaltungs-Typs Ein Positions-Buchhaltungssystem wird auf Kontoebene gesetzt und im Terminalfenster-Header und im Journal angezeigt: Um ein Demokonto mit Hedging zu öffnen, aktivieren Sie die entsprechende Option: Netting-System Mit diesem System können Sie Kann nur gleichzeitig eine gemeinsame Position für ein Symbol haben: Wenn es eine offene Position für ein Symbol gibt, erhöht die Ausführung eines Deals in derselben Richtung das Volumen dieser Position. Wenn ein Deal in der entgegengesetzten Richtung ausgeführt wird, kann das Volumen der bestehenden Position verringert werden, die Position kann geschlossen werden (wenn das Dealvolumen gleich dem Positionsvolumen ist) oder umgekehrt (wenn das Volumen des gegenüberliegenden Deals größer ist als Die aktuelle Position). Es spielt keine Rolle, was hat das Gegenteil eine ausgeführte Marktordnung oder eine ausgelöste ausstehende Bestellung verursacht. Das nachstehende Beispiel zeigt die Ausführung von zwei EURUSD-Buy-Angeboten jeweils 0,5 Lose: Die Ausführung beider Deals führte zu einer gemeinsamen Position von 1 Los. Hedging-System Mit diesem System können Sie mehrere offene Positionen von ein und demselben Symbol, einschließlich der entgegengesetzten Position, haben. Wenn Sie eine offene Position für ein Symbol haben und einen neuen Deal (oder einen ausstehenden Trigger) ausführen, wird zusätzlich eine neue Position geöffnet. Ihre aktuelle Position ändert sich nicht. Das folgende Beispiel zeigt die Ausführung von zwei EURUSD Buy Deals 0,5 Lots pro Stück: Die Ausführung dieser Deals führte zur Eröffnung von zwei separaten Positionen. Neue Handelsoperationsart - Close By Die neue Handelsvorgangstyp wurde hinzugefügt, um Hedging-Konten eine Position gegenüber einer anderen Position zu schließen. Dieser Vorgang ermöglicht das Schließen von zwei entgegengesetzt gerichteten Positionen an einem einzigen Symbol. Wenn die entgegengesetzten Positionen eine unterschiedliche Anzahl von Losen haben, bleibt nur eine der beiden Reihen offen. Sein Volumen ist gleich der Differenz der Lose der geschlossenen Positionen, während die Positionsrichtung und der offene Preis (von Volumen) die größere der geschlossenen Positionen übereinstimmen. Im Vergleich zu einem einzigen Verschluss der beiden Positionen ermöglicht das Schließen durch eine entgegengesetzte Position den Händlern, einen Spread zu sparen: Bei einem einzigen Schließen müssen die Händler einen Spread zweimal bezahlen: Beim Schließen einer Kaufposition zu einem niedrigeren Preis (Bid) Und eine Verkaufsposition bei einer höheren zu schließen (Ask). Wenn eine entgegengesetzte Position verwendet wird, wird ein offener Preis der zweiten Position verwendet, um die erste zu schließen, während ein offener Preis der ersten Position verwendet wird, um die zweite zu schließen. Im letzteren Fall wird eine enge Ordnung gelegt. Tickets von geschlossenen Positionen sind in ihrem Kommentar angegeben. Ein Paar von entgegengesetzten Positionen wird durch zwei out durch Abkommen geschlossen. Der Gesamtgewinn, der sich aus der Schließung der beiden Positionen ergibt, wird nur in einem Deal festgelegt. Zusätzlich zur Sicherungsunterstützung bietet die neue Plattformversion erweiterte Möglichkeiten für die Migration von Konten von MetaTrader 4. Jetzt können Makler automatisch Konten auf MetaTrader 5 übertragen, einschließlich aller Operationen: offene und ausstehende Aufträge und komplette Handelshistorie Erste Verbindung zu dem von MetaTrader 4 migrierten Konto. Die Datenübertragung wird während der Migration sicher verschlüsselt. Geben Sie das Kennwort für Ihr Konto an, das Sie in MetaTrader 4 verwendet haben, und legen Sie dann ein neues Kennwort fest. Sobald die Verbindung hergestellt ist, können Sie Ihr Konto weiterhin verwenden, so als ob es in MetaTrader 5 geöffnet wurde. Der gesamte Verlauf aller Trades von MetaTrader 4 wird automatisch dem neuen Konto hinzugefügt. Die Tickets von Aufträgen und Positionen (einschließlich Verlaufsaufträgen) werden beim Import nicht beibehalten, da ein Historiensatz aus MetaTrader 4 als bis zu 4 Historienoperationen in MetaTrader 5 importiert werden kann. Neue Tickets werden allen Handelsdatensätzen zugewiesen. Die Kontonummern können aufbewahrt oder ersetzt werden, je nachdem, wie der Broker sie importiert. Der Chat wurde hinzugefügt. Jetzt können Sie mit Ihren Freunden und Kollegen MQL5munity kommunizieren. Der Chat zeigt alle persönlichen Nachrichten von Ihrem MQL5-Konto an. Um die Kommunikation zu starten, melden Sie sich direkt im Chat-Fenster oder über die Plattform-Einstellungen an: Tools - gt Optionen - gt Community. Vereinfachtes Demo-Konto-Erstellungsdialog, Möglichkeit zur Erstellung von Hedge-Accounts. Sie müssen das große Formular nicht mehr füllen. Geben Sie einfach die Basisdaten an und wählen Sie die Handelsparameter aus: Kontotyp, Depot, Hebel und Hedging-Fähigkeit. Automatische Zuordnung eines Demokontos für den Schnellstart. Wenn die Plattform noch keine Konten hat, wird ein Demokonto auf dem ersten verfügbaren Handelsserver während des Ladens zugeteilt. Nach erfolgreichem Öffnen wird die Verbindung zum Konto sofort aufgebaut. Jetzt hat jede Position ein Ticket eine eindeutige Nummer. Sie entspricht normalerweise dem Ticket eines Auftrags, der verwendet wird, um die Position zu öffnen, außer wenn das Ticket aufgrund von Dienstvorgängen auf dem Server geändert wird, zum Beispiel beim Laden von Swaps mit einer Positionseröffnung. Ein Ticket wird nach der Terminalaktualisierung automatisch allen verfügbaren Positionen zugewiesen. Fixed Einstellung Stop Loss und Take Profit Ebenen bei der Platzierung einer Marktordnung, die zu einer Position Umkehrung. Bis vor kurzem wurden keine geeigneten Ebenen für eine neue Position gesetzt. Feste Anzeige von Preisen mit vier und mehr Dezimalstellen auf den One-Click-Handelspanel-Elementen. Die Anzeige der Nachrichten im Druckvorschau-Fenster wurde behoben. Feste Tick-Chart-Anzeige. Festlegung der Markttiefe nach dem Terminal-Notabschaltung. Eine Überprüfung hinzugefügt, wenn Marktbestellungen bei der Anzeige von Steuerelementen mit einem Klick auf die Handelsplattform erlaubt sind. Optimierte Gewinn - und Margenberechnung bei einer großen Anzahl offener Aufträge und Positionen. Zusätzliche Übersetzung der Benutzeroberfläche in Malay. Völlig überarbeitet das Benutzerhandbuch. Neues Design, interaktive Screenshots und eingebettete Videos erlernen den Handel in MetaTrader 5 mit maximaler Bequemlichkeit: Feste Anzeige von Grafikobjekten im Diagramm im Vordergrundmodus. Zusätzliche Fähigkeit, Handelsroboter und technische Indikatoren in der wirklichen Häckchengeschichte zu prüfen. Testen und Optimieren auf realen Zecken sind so realitätsnah wie möglich. Anstelle von generierten Ticks, die auf winzigen Daten basieren, ist es möglich, von einem Makler akkumulierte echte Ticks zu verwenden. Dies sind Zecken von Börsen und Liquiditätsanbietern. Um den Test oder die Optimierung in echten Ticks zu starten, wählen Sie den entsprechenden Modus im Strategie-Tester aus: Tick-Daten haben eine größere Größe im Vergleich zu Minute eins. Das Herunterladen kann während des ersten Tests sehr lange dauern. Die heruntergeladenen Tickdaten werden monatelang in TKC-Dateien im Namestickssymbolnamen des Basestrade-Servers gespeichert. Test auf echte Zecken Bei der Prüfung auf echte Zecken kann sich eine Ausbreitung innerhalb einer Minute ändern, während bei der Erzeugung von Zecken innerhalb einer Minute ein in der entsprechenden Leiste fixierter Streifen verwendet wird. Wenn die Markttiefe für ein Symbol angezeigt wird, werden die Balken strikt nach dem zuletzt ausgeführten Handelspreis (Last) erstellt. Andernfalls versucht der Tester zuerst, die Stäbe nach Letzten Preisen zu bauen, und im Falle ihrer Abwesenheit verwendet Bid diejenigen. OnTick-Ereignis wird auf alle Zecken ausgelöst, unabhängig davon, ob der letzte Preis vorhanden ist oder nicht. Bitte beachten Sie, dass die Handelsgeschäfte stets von Bid - und Ask-Preisen durchgeführt werden, auch wenn das Chart mit den Letzten Preisen erstellt wird. Wenn zum Beispiel ein Expert Advisor, der nur Bar-offene Preise für den Handel verwendet (d. H. Den eingebauten Moving Average), ein Signal zum Letzten Preis empfängt, führt es einen Handel zu einem anderen Preis durch (Bid oder Ask je nach Richtung). Wenn jeder Tick-Modus verwendet wird, werden die Balken aus Bid-Preisen gebaut, während die Trades von Bid und Ask getätigt werden. Der Ask-Preis wird als Bid Fixed Spread eines entsprechenden Minuten-Bar berechnet. Wenn ein Symbolverlauf einen Minutenbalken ohne Tickdaten enthält, erzeugt der Tester im Tick-Modus alle Ticks. Dies ermöglicht das Testen der EA für einen bestimmten Zeitraum, falls ein Broker-Tick-Datenwert unzureichend ist. Wenn ein Symbolverlauf keinen Minutenbalken aufweist, aber die entsprechenden Tickdaten für die Minute vorhanden sind, werden diese Ticks ignoriert. Die Minutenangaben gelten als zuverlässiger. Test auf reale Ticks im MQL5 Cloud Network Testing auf echten Ticks ist nicht nur auf lokale und Remote-Agenten, sondern auch über das MQL5-Cloud-Netzwerk verfügbar. Optimierung einer Strategie, die Monate dauern könnte, kann in ein paar Stunden mit der Rechenleistung von Tausenden von Computern abgeschlossen werden. Um eine Strategie mithilfe des MQL5-Cloud-Netzwerks zu testen, aktivieren Sie die Verwendung von Cloud-Agenten: Tests auf reale Ticks mit dem MQL5-Cloud-Netzwerk können eine Menge Daten verbrauchen. Dies kann die Zahlung für die Nutzung der Netzleistung erheblich beeinträchtigen. Es wurde ein Fehler behoben, der die Berechnung der Provision auf mehrere Handelssymboltypen behinderte. Feste Abfüllung Expertenfeld für Handelsaufträge aus der SLTP-Aktivierung entsprechend dem Feld Experten der entsprechenden Position. Zuvor war es nicht gefüllt. Feste Umschaltung auf normale und vorwärts Optimierung Ergebnisse Registerkarten. Feste Berechnung und Anzeige der Anzeige Umschläge. Optimierte Sichtprüfung. Optimierte Gewinn - und Margenberechnung bei einer großen Anzahl offener Aufträge und Positionen. Optimierte Handelsgeschäfte im Hochfrequenzhandel. Nun wird die Verlaufssynchronisation nicht ausgeführt, wenn eine Anforderung für nichtkritische Symboleigenschaften (die keine aktuellen Anführungszeichen erfordert) durchgeführt wurde. ZB SYMBOLSELECT, SYMBOLDIGITS, SYMBOLSPREADFLOAT, SYMBOLTRADECALCMODE, SYMBOLTRADEMODE, SYMBOLTRADESTOPSLEVEL, SYMBOLTRADEFREEZELEVEL, SYMBOLTRADEEXEMODE usw. Bisher wurde die nicht-kritische Symbolhistorie bei jeder Anforderung für ihre Eigenschaft synchronisiert. Feste Berechnung der Swaps in Prozent pro Jahr. Das Format der ausführbaren EX5-Dateien wurde geändert, um die neuen Funktionen der MQL5-Sprache und die neue Hedging-Option in MetaTrader 5 zu implementieren. Alle in früheren MetaEditor-Versionen kompilierten EX5-Anwendungen funktionieren nach dem Update ordnungsgemäß, dh die Aufwärtskompatibilität ist vollständig erhalten . EX5-Programme, die in Build 1325 und oben kompiliert wurden, werden nicht in alten Terminal-Builds ausgeführt - Abwärtskompatibilität wird nicht unterstützt. Zusätzliche Unterstützung für abstrakte Klassen und reine virtuelle Funktionen. Klassen für die Erzeugung von generischen Entitäten, die Sie für die Erzeugung von spezifischeren abgeleiteten Klassen verwenden, werden verwendet. Eine abstrakte Klasse kann nur als Basisklasse für eine andere Klasse verwendet werden, deshalb ist es unmöglich, ein Objekt des abstrakten Klassentyps zu erstellen. Eine Klasse, die mindestens eine reine virtuelle Funktion enthält, ist abstrakt. Daher müssen Klassen, die von der abstrakten Klasse abgeleitet werden, alle ihre reinen virtuellen Funktionen implementieren, sonst werden sie auch abstrakte Klassen sein. Eine virtuelle Funktion wird als rein mit der reinen-spezifizierenden Syntax deklariert. Betrachten Sie das Beispiel der CAnimal-Klasse, die nur erstellt wird, um gemeinsame Funktionen bereitzustellen, sind die Objekte des CAnimal-Typs zu allgemein für die praktische Verwendung. Somit ist CAnimal ein gutes Beispiel für eine abstrakte Klasse: Hier ist Sound () eine reine virtuelle Funktion, da sie mit dem Spezifizierer der reinen virtuellen Funktion PURE (0) deklariert ist. Pure virtuelle Funktionen sind nur die virtuellen Funktionen, für die der PURE-Spezifizierer gesetzt ist: (NULL) oder (0). Beispiel für abstrakte Klassendeklaration und Verwendung: Einschränkungen für abstrakte Klassen Wenn der Konstruktor für eine abstrakte Klasse eine reine virtuelle Funktion (entweder direkt oder indirekt) aufruft, ist das Ergebnis undefiniert. Konstruktoren und Destruktoren für abstrakte Klassen können jedoch andere Elementfunktionen aufrufen. Zusätzliche Unterstützung für Zeiger auf Funktionen, um die Anordnung von Ereignismodellen zu vereinfachen. Um einen Zeiger auf eine Funktion zu deklarieren, geben Sie den Zeiger auf einen Funktionstyp an, zum Beispiel: TFunc ist nun ein Typ, und es ist möglich, den Variablenzeiger zu deklarieren Die Funktion: Die funcptr-Variable kann die Funktionsadresse speichern, um sie später zu deklarieren: Zeiger auf Funktionen können als Parameter gespeichert und übergeben werden. Sie können keinen Zeiger auf eine nicht-statische Klassenmethode erhalten. MqlTradeRequest verfügt über zwei neue Felder: Positionsticket. Füllen Sie es beim Ändern und Schließen einer Position für seine klare Identifikation während des Handels im Hedging-Modus. In dem Netting-System hat das Ausfüllen des Feldes nichts, da Positionen durch einen Symbolnamen identifiziert werden. Position durch gegenüberliegendes Positionsticket. Es wird verwendet, wenn eine Position durch eine entgegengesetzte geschlossen wird (geöffnet auf dem gleichen Symbol, aber in die entgegengesetzte Richtung). Das Ticket wird nur im Hedging-System verwendet. Zusätzlicher TRADEACTIONCLOSEBY-Wert für die ENUMTRADEREQUESTACTIONS-Aufzählung von Handelsoperationen schließen eine Position um eine entgegengesetzte. Das Ticket wird nur im Hedging-System verwendet. Handel-Eintrittskarten zu den Aufzählungen der entsprechenden Order-, Deal - und Positionseigenschaften hinzugefügt: Die ORDERTICKET-Eigenschaft wurde dem ENUMORDERPROPERTYINTEGER-Ticket hinzugefügt. Eindeutige Nummer für jede Bestellung. DEALTICKET-Eigenschaft zum ENUMDEALPROPERTYINTEGER-Deal-Ticket hinzugefügt. Eindeutige Nummer zu jedem Geschäft zugeordnet. POSITIONTICKET-Eigenschaft zum ENUMPOSITIONPROPERTYINTEGER Positionsticket hinzugefügt. Eindeutige Nummer für jede neu geöffnete Position. Sie entspricht normalerweise dem Ticket eines Auftrags, der verwendet wird, um die Position zu öffnen, außer wenn das Ticket aufgrund von Dienstvorgängen auf dem Server geändert wird, zum Beispiel beim Laden von Swaps mit einer Positionseröffnung. Um eine Position zu ermitteln, die zum Öffnen einer Position verwendet wird, wenden Sie die Eigenschaft POSITIONIDENTIFIER an. POSITIONTICKET-Wert entspricht MqlTradeRequest :: position. Der ORDERTYPECLOSEBY-Wert wurde der ENUMORDERTYPE-Aufzählung enumeration close by order hinzugefügt. Der ORDERPOSITIONBYID-Wert wurde der ENUMORDERPROPERTYINTEGER-Auftragseigenschaftszählung zugewiesen, die der Positionskennung für ORDERTYPECLOSEBY-Typaufträge entgegengesetzt ist. Der DEALENTRYOUTBY-Wert wurde der ENUMDEALENTRY-Deal-Richtungs-Enumeration hinzugefügt. Ein Deal wird als Ergebnis einer nahen Operation ausgeführt. MqlTradeTransaction enthält außerdem die beiden ähnlichen Felder: Positionsticket einer von Transaktion betroffenen Position. Es ist für Transaktionen im Zusammenhang mit der Abwicklung von Marktaufträgen (TRADETRANSACTIONORDER außer TRADETRANSACTIONORDERADD, wo noch kein Positionsticket zugewiesen ist) und Auftragsverlauf (TRADETRANSACTIONHISTORY) gefüllt. Position durch gegenüberliegendes Positionsticket. Es wird verwendet, wenn eine Position durch eine entgegengesetzte geschlossen wird (geöffnet auf dem gleichen Symbol, aber in die entgegengesetzte Richtung). Es wird nur für Aufträge gefüllt, die eine Position durch eine entgegengesetzte (in der Nähe) schließen und schließt durch eine entgegengesetzte (out by). Added PositionGetTicket-Funktion zurückgeben ein Positionsticket durch einen Index in der Liste der offenen Positionen und automatisch wählen Sie diese Position für die weitere Arbeit mit den Funktionen PositionGetDouble, PositionGetInteger und PositionGetString. Added PositionSelectByTicket-Funktion wählen Sie eine offene Position für die weitere Arbeit von einem bestimmten Ticket. Added SYMBOLMARGINHEDGED-Wert für die ENUMSYMBOLINFODOUBLE-Handelskennzeichen-Eigenschaft Enumeration Größe eines Kontrakts oder Marge für ein Los abgesicherter Positionen (gegenläufig gerichtete Positionen an einem Symbol).Wenn der Anfangsrand (SYMBOLMARGININIAL) für ein Symbol angegeben ist, wird der gesicherte Margin als ein Wert angegeben Absoluten Wert (monetär). Wenn die Anfangsgrenze nicht gesetzt ist (gleich 0), wird eine Kontraktgröße, die in der Marginberechnung verwendet wird, in SYMBOLMARGINHEDGED angegeben. Die Marge wird mit der Gleichung berechnet, die einem Handels-Symboltyp (SYMBOLTRADECALCMODE) entspricht. Die Marginberechnung für abgesicherte Positionen wird in der MetaTrader 5-Handelsplattform Help detailliert beschrieben. Der zugeordnete ACCOUNTMARGINMODE-Wert für den ENUMACCOUNTINFOINTEGER-Account-Enumerationsmodus für die Marginberechnung für das aktuelle Handelskonto: ACCOUNTMARGINMODERETAILNETTING für den Freiverkehrsmarkt, Der Netting-Modus (eine Position pro Symbol). Die Marginberechnung basiert auf einem Symboltyp (SYMBOLTRADECALCMODE). ACCOUNTMARGINMODEEXCHANGE auf den Devisenmärkten. Die Marginberechnung basiert auf den in den Symboleinstellungen festgelegten Rabatten. Rabatte werden vom Broker festgelegt, können jedoch nicht niedriger sein als die Wechselkurs-Set-Werte. ACCOUNTMARGINMODERETAILHEDGING für den Freiverkehrsmarkt mit unabhängiger Positionsabrechnung (Hedging, es können mehrere Positionen an einem einzigen Symbol sein). Die Marginberechnung basiert auf einem Symboltyp (SYMBOLTRADECALCMODE). Die abgesicherte Randgröße (SYMBOLMARGINHEDGED) wird ebenfalls berücksichtigt. Added TERMINALSCREENDPI Wert auf die ENUMTERMINALINFOINTEGER Client-Terminal-Eigenschaft Enumeration Datenanzeige Auflösung wird in Dots per Inch (DPI) gemessen. Die Kenntnis dieses Parameters ermöglicht die Angabe der Größe von grafischen Objekten, sodass sie auf Monitoren mit unterschiedlicher Auflösung gleich aussehen. Der Wert TERMINALPINGLAST für die ENUMTERMINALINFOINTEGER-Client-Terminal-Eigenschaft gibt den letzten bekannten Wert eines Pings an einen Handelsserver in Mikrosekunden an. Eine Sekunde besteht aus einer Million Mikrosekunden. Eine feste Rückkehr des SendFTP-Funktionsaufrufergebnisses. Bisher wurde FALSE nach erfolgreichem Senden anstatt TRUE zurückgegeben. MQL5: Ein Fehler in der Funktion "StringConcatenate" wurde behoben, bei dem gelegentlich der Ausführungsfehler der Zugriffsverletzung verursacht wurde. Bei der Arbeit mit Template-Funktionen traten einige Fehler auf. Die Möglichkeit, Zeilen mit mehr als 4000 Zeichen für die Druck-, Alarm - und Kommentarfunktionen anzuzeigen, wurde hinzugefügt. Es wurde ein Fehler in der ArrayCompare-Funktion behoben, die beim Vergleich eines Arrays mit sich selbst, jedoch mit einer unterschiedlichen Anfangspositionsverschiebung von Anfang an aufgetreten ist. Zusätzliche Unterstützung für die Absicherung der Standardbibliothek: CPosition Added Methoden: SelectByMagic Position durch eine magische Zahl und Symbol für die weitere Arbeit wählen. SelectByTicket Position für ein weiteres Ticket auswählen. CTrade Addierte Methoden: RequestPosition erhält ein Positionsticket. RequestPositionBy erhalten ein entgegengesetztes Positionsticket. PositionCloseBy eine Position mit dem angegebenen Ticket durch eine entgegengesetzte Position schließen. SetMarginMode-Set-Margin-Berechnungsmodus entsprechend den aktuellen Account-Einstellungen. Added overloading für die Methoden: PositionSchließen schließen Position durch Ticket. PositionModify Position durch Ticket ändern. CAccountInfo Die Methoden geändert: MarginMode-Berechnungsmodus. Bis vor kurzem funktionierte die Methode ähnlich wie die neue Methode StopoutMode. MarginDescription empfängt den Margin-Berechnungsmodus als String. Bis vor kurzem funktionierte die Methode ähnlich wie die neue Methode StopoutModeDescription. Zusätzliche Methoden: StopoutMode empfängt den minimalen Randpegel-Spezifikationsmodus. StopoutModeDescription empfängt den minimalen Margin-Level-Spezifikationsmodus als String. CExpert Addierte Methoden: SelectPosition Wählen Sie eine Position für die weitere Arbeit aus. Einige Verbesserungen der Standardbibliothek hinzugefügt. Feste Entladung von DLLs. Unterstützung für Template-Klassenkonstrukteure hinzugefügt. Fixed ein paar Trading-Signale zeigen Display-Fehler. MetaEditor Fixed search of words by files in Match Whole Word Only mode. Added moving to a file by double-clicking on the necessary files compilation result line. Fixed display of some control elements in Windows XP. Updated documentation.

No comments:

Post a Comment