MetaTrader 5 Python User Group - wie man Python in Metatrader verwendet - Seite 85
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
Seltsam, aber es kommt auch ein leerer Tisch an. Es ist nicht nötig, im Terminal selbst etwas zu öffnen, wie in Quicksilver, damit das Entladen funktioniert?
Ein beliebiges Diagramm mit dem gewünschten Paar (für Ticks).
Kann jemand dies bestätigen? Gibt es eine Möglichkeit, eine Stellungnahme des Maklers zu erhalten?
Würden Sie der Dokumentation eine Beschreibung hinzufügen?
Hinzugefügt
Ich möchte eine virtuelle Handelsbuchhaltung in Python organisieren. Ich brauche sie, um die Merkmale verschiedener Handelsstrategien zu unterscheiden. Der verwendete Makler ist Otkritie. Es gibt keine Netze. Es gibt eine gemeinsame Position für das Instrument, Stop und Take der Position ist gemeinsam. Ich beschloss, dies zu tun: Ich eröffne einen Handel durch eine beliebige Strategie von Markt mit einem beliebigen Volumen, ohne Stop und Take. Stattdessen habe ich einen Stopp- und einen Limit-Auftrag in der gleichen Größe platziert. Ich merke mir die Aufträge in der Tabelle separat. In jedem bestimmten Zeitraum platziere ich orders = mt5.orders_get(symbol=symb) und erhalte eine Liste der bekannten ticket orders.ticket.tolist().
Dann gehe ich meine Handelstabelle durch und prüfe, ob in der Liste der eingegangenen offenen Aufträge noch ein Stop- oder Limit-Order-Ticket vorhanden ist. Wenn kein Stop-Loss vorhanden ist, bedeutet dies, dass ein Stop-Loss praktisch ausgelöst wurde; wenn kein Limit vorhanden ist, bedeutet dies einen Take-Profit. Dann lösche ich die Einträge für diesen Handel aus meiner Tabelle und lösche die verbleibende Pending Order für diesen Handel. Und alles funktioniert, bis auf eine Ausnahme: Ich weiß nicht, wie ich den virtuellen Gewinn bei diesem Geschäft berechnen soll. Auf dem Bild können Sie sehen, dass der Verkaufsstopp bei 141430 gesetzt wurde, aber in Wirklichkeit gab es einen Slippage und der Eröffnungskurs liegt bei 141350. Ich fordere die Anfrage für eine ausgelöste Position an: deals = mt5.history_orders_get(ticket=246525084) (dieses Ticket wurde vom System bei der Platzierung gespeichert), aber in der Antwort sehe ich keine Informationen über die Platzierung der Order, nur Informationen über ihre Platzierung. Die Historie zeigt, dass der Verkaufsstopp im Ticket 15215696 tatsächlich ausgeführt wurde und ich in diesem Ticket den richtigen Preis verlangen kann. Aber zuerst muss ich das Ticket aus dem Handel finden. Wie kann ich dieses Ticket mit dem Ticket für den schwebenden Auftrag (Verkaufsstopp) abgleichen?
order_send und order_check geben keine zurück. Ich weiß nicht, wo ich suchen soll. Bitte sagen Sie mir, was los ist. Ich bitte Sie.
Code
Ausgabe
Es ist mir gelungen, das Problem zu lösen. In der Anfrage sollten die Felder volume, price, sl, tp den Typ float haben. Das funktioniert folgendermaßen
Kolleginnen und Kollegen, bitte um Rat:
1. Wie kann ich verfügbare Handelssitzungsintervalle nach Instrument von mt5 in Python ziehen und sie regelmäßig aktualisieren?
2. Erwarte ich eine Methode in der Bibliothek, um den Trailing Stop für offene Positionen anzufordern und zu ändern?