Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 762
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
Und es sind nicht Positionen oder Geschäfte, die geprüft werden müssen, sondern Aufträge, denn ein Auftrag kommt zuerst, dann ein Geschäft, dann eine Position.
Warum nur Bestellungen? Hat ein Geschäft nicht eine Positions-ID (Ticket)?
DEAL_POSITION_ID
Warum nur Bestellungen? Hat ein Geschäft nicht eine Positions-ID (Ticket)?
DEAL_POSITION_ID
Ja, Sie haben Recht. Sowohl Aufträge als auch Geschäfte haben eine Positionskennung. Im allgemeinen Fall sollten wir jedoch wissen, dass der Position eine Kennung der ersten Bestellung zugewiesen wird, die das Geschäft eingeleitet hat. Dementsprechend ist die "Einheit", die die Position initiiert, der Auftrag und nicht das Geschäft. Und es sind Aufträge, nicht Geschäfte, nach denen gesucht werden sollte.
Aus der Dokumentation:
Die Positionskennung ist eine eindeutige Nummer, die jeder neu eröffneten Position zugewiesen wird und sich während ihrer gesamten Lebensdauer nicht ändert. Sie entspricht dem Ticket des Auftrags, mit dem die Position eröffnet wurde.
Die Positionskennung wird in jedem Auftrag (ORDER_POSITION_ID) und jedem Geschäft (DEAL_POSITION_ID) angegeben, mit dem er eröffnet, geändert oder geschlossen wurde. Verwenden Sie diese Eigenschaft, um nach Aufträgen und Geschäften zu suchen, die sich auf die Position beziehen.
Ja, Sie haben Recht. Sowohl Aufträge als auch Abschlüsse haben eine Positionskennung. Im Allgemeinen sollten Sie jedoch wissen, dass der Position die Kennung des ersten Auftrags zugewiesen wird, der den Handel eingeleitet hat. Dementsprechend ist die "Einheit", die die Position initiiert, der Auftrag und nicht das Geschäft. Und es sind Aufträge, nicht Geschäfte, nach denen gesucht werden sollte.
Aus der Dokumentation:
Ich werde nicht widersprechen, das ist genau das, was in der Dokumentation steht. An anderer Stelle in derselben Dokumentation heißt es jedoch"In der Regel...", was bedeutet, dass es Unstimmigkeiten geben kann. Und das ist das "in der Regel", dem ich einmal begegnet bin...
Position
Die Stelle Ticket. Sie sollte ausgefüllt werden, wenn eine Position geändert und geschlossen wird, damit sie eindeutig identifiziert werden kann. Sie entspricht in der Regel dem Ticket des Auftrags, aufgrund dessen die Position eröffnet wurde.
Bitte teilen Sie mir mit, wie ich das Ticket, das für den Handel verwendet wurde, wiederfinden kann. Auf dem Bildschirmfoto ist es "63214735".
Hier suchen Siedie Nummer der Position in der Liste der Deals, sonst ist sie falsch.
Das folgende Skript zeigt, was HistorySelectByPosition leistet
Und so sieht das Ergebnis aus:
0 = Offene Position
1 = Position schließen
Wenn Sie es nicht bekommen = Sie haben keine Ticketposition eingegeben
Das gleiche Ergebnis erhalten wir, wenn wir mit dem Deal Ticket beginnen:
Für die Funktion HistoryDealGetInteger()
ENUM_DEAL_PROPERTY_INTEGER
Kennung
Beschreibung
Typ
DEAL_TICKET
Deal-Ticket. Eindeutige Nummer, die jedem Geschäft zugewiesen wird
lang
DEAL_ORDER
Auftrag, auf dessen Grundlage der Handel ausgeführt wurde
lang
DEAL_TIME
Ausführungszeit des Geschäfts
datetime
DEAL_TIME_MSC
Ausführungszeit des Geschäfts in Millisekunden ab 01.01.1970
lang
DEAL_TYPE
Art des Geschäfts
ENUM_DEAL_TYPE
DEAL_ENTRY
Geschäftsrichtung - Markteintritt, Marktaustritt oder Umkehrung
ENUM_DEAL_ENTRY
DEAL_MAGIC
Magische Zahl für das Geschäft (siehe ORDER_MAGIC)
lang
DEAL_REASON
Grund oder Quelle des Geschäfts
ENUM_DEAL_REASON
DEAL_POSITION_ID
Die Kennung der Position, an deren Eröffnung, Änderung oder Schließung dieses Geschäft beteiligt war. Jede Position hat eine eindeutige Kennung, die allen Geschäften zugewiesen wird, die während der Laufzeit der Position mit dem Instrument getätigt werden.
lang
Ich danke Ihnen!
Ich brauchte dies:HistoryOrderGetTicket
Ich danke Ihnen!
Ich brauchte dies:HistoryOrderGetTicket
Der Auftrag kann 1,0 Lot betragen. Er kann jedoch teilweise ausgeführt werden, z. B. Los 0,9 - der Rest wird abgelehnt (je nach Ausführungsmodus). Dann wird der Handel mit Lot 0,9 durchgeführt. Und wenn Sie anfangen, nach Lots für den Auftrag zu suchen, wird es Unstimmigkeiten geben.
Bitte helfen Sie - ich brauche einen vernünftigen Code, um den OHLC-Umgebungswert zu erhalten - die vorhandenen sind sehr langsam
Option 1
Option 2
Bitte helfen Sie - ich brauche einen vernünftigen Code, um den OHLC-Umgebungswert zu erhalten - die vorhandenen sind sehr langsam
Option 1
Option 2
Posten Sie ein Stück Code, wie Sie sie anwenden
Ich weiß nicht, welcher Teil sich verlangsamt - ich wende sie auf unterschiedliche Weise an, auch in Schleifen...
Hier ist ein Beispiel
Ich weiß nicht, welcher Teil sich verlangsamt - ich wende ihn auf unterschiedliche Weise an, auch in Schleifen...
In Schleifen sieht es so aus, und man kann auf die Funktion verzichten