Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1097
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
Nach der Ausführung eines Handelsauftrags erscheint eine POSITION, nicht ein ORDER!
Es gibt Server, auf denen Sie eine solche Situation reproduzieren können
D.h. wir haben gleichzeitig den folgenden Auftrag im Terminal
und die gleiche Position davon
Beschreiben Sie also zunächst in Worten, was Sie tun und was Sie erreichen wollen. Verwenden Sie "BUY trade order" und "SELL trade order" anstelle von ORDER. Das Ergebnis ist eine "KAUFEN-Position" oder eine "VERKAUFEN-Position".
OK, vereinfachen wir unsere Diskussion auf Code-Beispiele. Hier ist der in MQL4 geschriebene Code - ich interessiere mich für die Tester-Version, d.h. die Mindestprüfungen usw:
Die Essenz von TS: wenn Sie einen Kaufauftrag öffnen, fangen Sie an und merken Sie sich das Ticket des Auftrags (arbeiten Sie auf dem Ticket), dann prüfen Sie, ob der Auftrag geschlossen ist - sehen Sie, welche Art von Auftrag und setzen Sie den entgegengesetzten Auftrag und merken Sie sich das Ticket und so weiter rund
Ich benötige ein ähnliches Beispiel, das in MQL5 mit SB CTrade reproduziert werden kann.
OK, lassen Sie uns unsere Diskussion zu Beispielen in den Code zu vereinfachen, hier ist der Code in MQL4 geschrieben - Ich interessiere mich für die Version für Tester, dh ein Minimum von Prüfungen, etc:
Die Essenz von TS: wenn Sie einen Kaufauftrag öffnen, fangen Sie an und merken Sie sich das Ticket des Auftrags (arbeiten Sie auf dem Ticket), dann prüfen Sie, ob der Auftrag geschlossen ist - sehen Sie, welche Art von Auftrag und setzen Sie den entgegengesetzten Auftrag und merken Sie sich das Ticket und so weiter rund
Ich benötige ein ähnliches Beispiel, das in MQL5 mit SB CTrade reproduziert werden kann.
Jetzt wird dir der kleine Trommler sagen, was er von dir hält))))
lassen Sie sie sprechen, aber wir müssen wissen, ob die Ticketnummer offen oder geschlossen ist, wenn sie geschlossen ist, müssen wir wissen, welche Art vonHandelsauftrag die geschlossene Position hatte
(fett gedruckt - es handelt sich ohnehin um einen Auftrag! - weil in der TZ-Kopfbuchhaltung)
OK, vereinfachen wir unsere Diskussion auf Code-Beispiele. Ich habe einen Code in MQL4 geschrieben - mich interessiert die Tester-Version, d. h. das Minimum an Prüfungen usw:
Ich benötige ein ähnliches Beispiel, das in MQL5 mit CTrade SB reproduziert werden kann.
Ich benötige ein ähnliches Beispiel, das in MQL5 mit CTrade SB reproduziert werden kann.
Die Grundlagen sind also derPOSITION_IDENTIFIER, aber nicht das Positionsticket. Dies ist gerade wegen des Netzes wichtig:
POSITIONSNUMMER
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.
Wenn eine Position im Netting-Modus storniert wird (ein einzelnes In/Out-Geschäft), wird die POSITION_IDENTIFIER-Kennung der Position nicht geändert. POSITION_TICKET wird jedoch in das Auftragsticket geändert, das zum Storno geführt hat. Im Absicherungsmodus gibt es keine Positionsumkehr.
lang
Wir müssen also den Positionsbezeichner (POSITION_IDENTIFIER) im Auge behalten.
Nun eine genauere Aufgabe: Beim ersten Durchlauf eröffnen wir eine KAUFPOSITION und speichern sie (ACHTUNG: wir sollten uns die Positions-ID merken, nicht das Ticket). Wenn die Position geschlossen wurde, eröffnen wir eine entgegengesetzte Position: z. B. gab es einmal eine KAUF-Position, dann wurde sie geschlossen, was bedeutet, dass wir sofort eine VERKAUF-Position eröffnen.
Jetzt wird es viel einfacher sein, das Problem zu lösen.
Jetzt wird es viel einfacher sein, das Problem zu lösen.
Schauen Sie beim Schreiben des Beispiels ein wenig voraus.
Der zweite OrderSend enthält einen Fehler. Ich brauche keine Normalisierung. Im Forum (und nicht nur dort) ist es einfacher, den Code zu lesen, wenn er kürzer ist.
Ja, ich sehe, ich schrieb den Code auf der fliegenden - lief es in den Tester - es funktioniert, kopiert es in das Forum
Sie müssen sich ein bisschen mehr anstrengen.
Deshalb habe ich im Forum um Hilfe gebeten! - Ich beschloss, die Möglichkeiten von SB CTrade einzuschätzen - ich nahm eine elementare Aufgabe als Beispiel und bisher war das Ergebnis negativ!
Jetzt wird es viel einfacher sein, das Problem zu lösen.
Ich kenne Sie als aktives Mitglied des Forums. Könnten Sie meinen bzw. den korrigiertenfxsaber-Code mit CTrade Server unter MQL5 reproduzieren?
Ja, ich sehe, ich schrieb den Code auf der fliegenden - lief es in den Tester - es funktioniert, kopiert es in das Forum
Wenn ich einen EA schreibe, beginne ich immer mit einem leeren Blatt (ich empfehle es). Wahrscheinlich beginnen die meisten mit einer Kopfzeile mit On-Funktionen.
Deshalb habe ich im Forum um Hilfe gebeten! - Ich beschloss, die Fähigkeiten von CTrade zu bewerten - ich nahm eine elementare Aufgabe als Beispiel und bisher war das Ergebnis negativ!
Es gibt ein noch kürzeres Beispiel.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Merkmale der Sprache mql5, Feinheiten und Tricks
fxsaber, 2018.02.15 11:48
Im MT5 ist es schwer, damit umzugehen, wenn nicht im Tester.