Ordereigenschaften

Befehlsanweisungen, Handelsoperationen durchzuführen, werden als Order formalisiert. Jede Order hat eine Menge der Eigenschaften für Lesen, die Information über die kann durch die Funktionen OrderGet...() und HistoryOrderGet...() erhalten werden.

für die Funktionen OrderGetInteger() und HistoryOrderGetInteger()

ENUM_ORDER_PROPERTY_INTEGER

Identifikator

Beschreibung

Typ

ORDER_TICKET

Das Ticket der Order. Das ist eine einmalige Nummer, die jeder Order zugewiesen wird.

long

ORDER_TIME_SETUP

Set-up Zeit des Orders

datetime

ORDER_TYPE

Ordertyp

ENUM_ORDER_TYPE

ORDER_STATE

Orderstatus

ENUM_ORDER_STATE

ORDER_TIME_EXPIRATION

Ablauffrist einer Order

datetime

ORDER_TIME_DONE

Durchführungszeit oder Annullieren einer Order

datetime

ORDER_TIME_SETUP_MSC

Zeitpunkt der Erstellung von Order in Millisekunden seit 01.01.1970

long

ORDER_TIME_DONE_MSC

Zeit der Ausführung/Abschiebung des Orders in Millisekunden seit 01.01.1970

long

ORDER_TYPE_FILLING

Durchführungstyp nach dem Rest

ENUM_ORDER_TYPE_FILLING

ORDER_TYPE_TIME

Lebenszeit des Orders

ENUM_ORDER_TYPE_TIME

ORDER_MAGIC

Identifikator des Experten, der Order gestellt hat (bestimmt dafür, dass jeder Expert seine eigene unikale Nummer stellt)

long

ORDER_REASON

Grund oder Quelle der Platzierung einer Order

ENUM_ORDER_REASON

ORDER_POSITION_ID

Identifikator der Position, den Order nach seine Durchführung erhält. Jede durchgeführte Order erzeugt einen Deal, das eine neue Position eroeffnet oder eine schon existierende Position verändert. Durchgeführte Order erhält eben diesen Identifikator dieser Position.

long

ORDER_POSITION_BY_ID

Der Identifikator der Gegenposition für die Orders vom Typ ORDER_TYPE_CLOSE_BY.

long

für die Funktionen OrderGetDouble() und HistoryOrderGetDouble()

ENUM_ORDER_PROPERTY_DOUBLE

Identifikator

Beschreibung

Typ

ORDER_VOLUME_INITIAL

Initialvolumen bei der Orderstellung

double

ORDER_VOLUME_CURRENT

eine nicht durchgeführte Order

double

ORDER_PRICE_OPEN

Preis angegeben in Order

double

ORDER_SL

Level Stop Loss

double

ORDER_TP

Level Take Profit

double

ORDER_PRICE_CURRENT

Laufender Preis des Ordersymbols

double

ORDER_PRICE_STOPLIMIT

Preis der Aufstellung der  Limit Order bei Auslösung von StopLimit Order

double

für die Funktionen OrderGetString() und HistoryOrderGetString()

ENUM_ORDER_PROPERTY_STRING

Identifikator

Beschreibung

Typ

ORDER_SYMBOL

Symbol der Order

string

ORDER_COMMENT

Orderkommentar

string

ORDER_EXTERNAL_ID

ID der Order im Außenhandelssystem (an der Börse)

string

 

Beim Senden einer Handelsanforderung durch die Funktion OrderSend() muss für einige Operationen Ordertyp angegeben werden. Ordertyp wird im Feld type der speziellen Struktur MqlTradeRequest angegeben, und kann verschiedene Werte aus der Enumeration ENUM_ORDER_TYPE annehmen.

ENUM_ORDER_TYPE

Identifikator

Beschreibung

ORDER_TYPE_BUY

Marktkauforder

ORDER_TYPE_SELL

Martverkauforder

ORDER_TYPE_BUY_LIMIT

Schwebende Order Buy Limit

ORDER_TYPE_SELL_LIMIT

Schwebende Order Sell Limit

ORDER_TYPE_BUY_STOP

Schwebende Order Buy Stop

ORDER_TYPE_SELL_STOP

Schwebende Order Sell Stop

ORDER_TYPE_BUY_STOP_LIMIT

Beim Erreichen des Orderpreises wird eine Warteorder Buy Limit zum Preis  StopLimit gestellt

ORDER_TYPE_SELL_STOP_LIMIT

Beim Erreichen des Orderpreises wird eine Warteorder Sell Limit zum Preis StopLimit gestellt

ORDER_TYPE_CLOSE_BY

Order zum Schließen zur Gegenposition

 

Jede Order hat einen Status, der seinen Stand beschreibt. Für die Erhaltung der Information verwenden Sie die Funktion OrderGetInteger() oder HistoryOrderGetInteger() mit dem Modifikator ORDER_STATE. Zulaessige Werte werden in der Enumeration  ENUM_ORDER_STATE aufbewahren.

ENUM_ORDER_STATE

Identifikator

Beschreibung

ORDER_STATE_STARTED

Order geprüft, aber vom Broker noch nicht angenommen

ORDER_STATE_PLACED

Order angenommen

ORDER_STATE_CANCELED

Order ist vom Kunden abgelehnt

ORDER_STATE_PARTIAL

Order ist teilweise durchgeführt

ORDER_STATE_FILLED

Order ist vollständig durchgeführt

ORDER_STATE_REJECTED

Order abgelehnt

ORDER_STATE_EXPIRED

Order ist nach Ablauffrist abgelehnt

ORDER_STATE_REQUEST_ADD

Order ist im Registrierungsstatus (Aussetzung in Handelssystem)

ORDER_STATE_REQUEST_MODIFY

Order ist im Änderungsstatus (Verändern von Parametern)

ORDER_STATE_REQUEST_CANCEL

Order ist im Löschungsstatus (Löschung aus dem Handelssystem)

 

Beim Senden einer Handelsanforderung durch die Funktion OrderSend() kann für Order Ausfüllungspolitik im Feld type_filling in der speziellen Struktur MqlTradeRequest vorgegeben werden, zulässig sind Werte aus der Enumeration ENUM_ORDER_TYPE_FILLING. Für Erhaltung des Werte dieser Eigenschaft verwenden Sie die Funktion OrderGetInteger() oder HistoryOrderGetInteger() mit dem Modifikator ORDER_TYPE_FILLING.

ENUM_ORDER_TYPE_FILLING

Identifikator

Beschreibung

ORDER_FILLING_FOK

Diese Ausfüllungspolitik bedeutet, dass eine Order nur in der angegebenen Menge gefüllt werden kann. Wenn die notwendige Menge eines Finanzinstruments ist auf dem Markt derzeit nicht verfügbar, wird die Order nicht ausgefüllt werden. Das erforderliche Volumen kann mit mehreren Angeboten, die im Moment auf dem Markt verfügbar sind, gefüllt werden.

ORDER_FILLING_IOC

Dieser Modus bedeutet, dass der Trader mit einem Deal mit dem maximalen auf dem Markt verfügbaren Volumen innerhalb der Order einverstanden ist. Falls das gesamte Volumen einer Order nicht gefüllt werden kann, wird das verfügbare Volumen davon gefüllt werden und das restliche Volumen wird abgebrochen.

ORDER_FILLING_RETURN

Dieses Modus wird für die Markt- (ORDER_TYPE_BUY undORDER_TYPE_SELL), Limit- und Stop-Limit-Orders (ORDER_TYPE_BUY_LIMIT, ORDER_TYPE_SELL_LIMIT, ORDER_TYPE_BUY_STOP_LIMIT und ORDER_TYPE_SELL_STOP_LIMIT) und nur in Modi "Markt Ausführung " und "Börse Ausführung" verwendet. Im Falle einer teilweisen Ausführung wird die Markt- oder Limit-Order mit verbleibende Volumen nicht annulliert, sondern weiter verarbeitet.

Für die Aktivierung der Ordern ORDER_TYPE_BUY_STOP_LIMIT und ORDER_TYPE_SELL_STOP_LIMIT wird eine entsprechende Limit-Order ORDER_TYPE_BUY_LIMIT/ORDER_TYPE_SELL_LIMIT mit Ausfüllungstyp ORDER_FILLING_RETURN erstellt werden.

 

Gültigkeitsfrist einer Order kann im Feld type_time der speziellen Struktur MqlTradeRequest angegeben werden beim Senden der Handelsanforderung durch die Funktion OrderSend(). Zulässig sind Werte aus der Enumeration  ENUM_ORDER_TYPE_TIME. Für die Erhaltung des Wertes dieser Eigenschaft verwenden Sie die Funktion OrderGetInteger() oder HistoryOrderGetInteger() mit dem Modifikator ORDER_TYPE_TIME.

ENUM_ORDER_TYPE_TIME

Identifikator

Beschreibung

ORDER_TIME_GTC

Warteorder vor der Ablehnung

ORDER_TIME_DAY

Order wird nur innerhalb des Handelstages gültig

ORDER_TIME_SPECIFIED

Order wird bis zum Ablauffrist gültig

ORDER_TIME_SPECIFIED_DAY

Order wird bis 23:59:59 Uhr am angegebenen Datum gültig. Wird diese Zeit nicht auf dem Handelszeit fallen, wird der Ablauf in naher den Handelszeit auftreten.

 

Die Eigenschaft ORDER_REASON beinhaltet den Grund der Platzierung einer Order. Eine Order kann mithilfe eines MQL5-Programms, in einer mobilen Anwendung oder infolge eines StopOut Ereignisses usw. platziert werden. Die möglichen Werte von ORDER_REASON sind in der Aufzählung ENUM_ORDER_REASON beschrieben.

ENUM_ORDER_REASON

Identifier

Beschreibung

ORDER_REASON_CLIENT

Die Order wurde in einem Desktop-Terminal platziert

ORDER_REASON_MOBILE

Die Order wurde in einer mobilen Anwendung platziert

ORDER_REASON_WEB

Die Order wurde auf der Webplattform platziert

ORDER_REASON_EXPERT

Die Order wurde durch ein MQL5-Programm platziert - einen Expert Advisor oder Script

ORDER_REASON_SL

Die Order wurde infolge der Auslösung von Stop Loss platziert

ORDER_REASON_TP

Die Order wurde infolge der Auslösung von Take Profit platziert

ORDER_REASON_SO

Die Order wurde infolge des Ereginisses Stop Out platziert