MetaTrader 5 Python User Group - wie man Python in Metatrader verwendet - Seite 55

 
Vladimir Perervenko:

Ich beobachte Pypi. Die Entwickler warten auf Kommentare von uns für die Weiterführung/Verbesserung. Bislang sehen wir jedoch keine Aktivitäten der Nutzer in diesem Bereich.

Ich denke, dass wir in einem separaten Zweig gemeinsame Infrastrukturfragen für komplexe Handelssysteme (Terminal (MT4/MT5) <-> TS (auf verschiedenen IPs) <_> Datenbanken sind unterschiedlich) diskutieren müssen. Verschiedene Konfigurationen, Probleme, Schwierigkeiten und Vorteile.

Viel Glück!

Das Erscheinen der Neuerscheinung - ja, ich bin auch dabei.

Und was ist das Neue daran, zumindest, was betrifft es?

 
Дмитрий Прокопьев:

Die Ankunft der Neuerscheinung - ja, ich bin auch dabei.

Aber was ist das Neue daran, was betrifft es?

Nichts Drastisches, was mich betrifft. Es ist nur eine kleine Aufräumaktion. Wir haben genug Befehle für die Interaktion mit dem Terminal, um es zu benutzen.

Wir werden ein wenig mit verschiedenen Varianten arbeiten und das Bild wird klarer werden.

 
Vladimir Perervenko:

Meiner Meinung nach nichts Drastisches. Es sind nur die kleinen Dinge, die aufgeräumt wurden. Die Befehle für die Interaktion mit dem Terminal reichen aus, um es zu benutzen.

Lassen Sie uns ein wenig mit verschiedenen Varianten arbeiten, dann wird das Bild klar.

Im Prinzip ja, ich stimme zu :) genug, aber ich hoffe auf ein leckeres ... :)

Hat etwas für die Arbeit mit benannten Tupel erschienen (wieTradeDeal), zum Beispiel um sie als eine Liste von _asdict() zu erhalten?

 

Bitte beraten Sie mich, wie ich den Pfad für die Initialisierung richtig einstelle.

Ich tue dies:

if not mt5.initialize("C:\Program Files\MetaTrader5\terminal64.exe"):
    print("initialize() failed, error code =",mt5.last_error())
    quit()

Ich erhalte eine Fehlermeldung:

MetaTrader5 package author:  MetaQuotes Software Corp.
MetaTrader5 package version:  5.0.29
initialize() failed, error code = [-10003, "IPC initialize failed, Process create failed 'C:\\Program Files\\MetaTrader5\terminal64.exe'"]

Umgebung: Python 3.8 (64-bit)

OS: Win10 (x64)

Документация по MQL5: Интеграция / MetaTrader для Python / initialize
Документация по MQL5: Интеграция / MetaTrader для Python / initialize
  • www.mql5.com
[in]  Путь к файлу metatrader.exe или metatrader64.exe. Необязательный неименованный параметр. Указывается первым без имени параметра. Если путь не указан, модуль попытается найти исполняемый файл самостоятельно. [in]  Таймаут в миллисекундах, который дается на подключение. Необязательный именованный параметр. Если не указан, то будет...
 
Denis Kirichenko:

Bitte beraten Sie mich, wie ich den Pfad für die Initialisierung richtig einstelle.

Ich tue dies:

Ich erhalte eine Fehlermeldung:

Umgebung: Python 3.8 (64-bit)

OS: Win10 (x64)

Hier ist der Kopf, 2 Ohren... Überwunden. Sie müssen den Pfad so schreiben:

'C:\\Program Files\\MetaTrader5\\terminal64.exe'
Diesymbolischen Konstanten dürfen nicht vergessen werden...
Документация по MQL5: Основы языка / Типы данных / Целые типы / Символьные константы
Документация по MQL5: Основы языка / Типы данных / Целые типы / Символьные константы
  • www.mql5.com
Символы, как элемент строки, в MQL5 - это индексы в наборе символов Unicode. Они являются 16-разрядными значениями, которые можно преобразовывать в целые числа и с которыми можно манипулировать целочисленными операциями, такими как сложение и вычитание. Любой одиночный символ, заключенный в одинарные кавычки, или шестнадцатеричный ASCII-код...
 
Denis Kirichenko:

Hier ist der Kopf, zwei Ohren... Ich hab's kapiert. Sie müssen den Pfad wie folgt schreiben:

'C:\\Program Files\\MetaTrader5\\terminal64.exe'
DieZeichenkonstanten sollten nicht vergessen werden...

Richtig so: 'C:\\\Programme\\MetaTrader5\\terminal64.exe', vergessen Sie nicht die Quota \\.

Es gibt noch eine weitere Sache, Version 5.0.27 von MetaTrader5 wird nicht korrekt mit dem Build 2366 Terminal funktionieren, nur 5.0.28

Auch bei der Initialisierung wird es Probleme geben, es ist notwendig, das Update der Libas zu ziehen. Umgekehrt - 5.0.28 mit einer früheren Version des Terminals - habe ich noch keine Schwierigkeiten festgestellt.

 
Дмитрий Прокопьев:

Der richtige Weg ist: 'C:\\\Programme\\MetaTrader5\\terminal64.exe', vergessen Sie nicht die Quota \\\.

Es gibt noch eine weitere Sache, Version 5.0.27 von MetaTrader5 wird nicht korrekt mit Build 2366 Terminal arbeiten, nur 5.0.28

Auch bei der Initialisierung wird es Probleme geben, es ist notwendig, das Update der Libas zu ziehen. Umgekehrt - 5.0.28 mit einer früheren Version des Terminals, noch keine Schwierigkeiten festgestellt.

Die neueste Version ist 5.0.29.

Wie viele Terminals haben Sie im MT5? Nur interessehalber.

 

In drei Fällen kann ein zusätzliches Terminal erforderlich sein:

-ein anderer Makler und ein anderes Konto

-Anderes Konto bei demselben Makler

- oder die Anzahl der an das Terminal angeschlossenen Strategien ist zu hoch.

Vielleicht hat jemand versucht, das Terminal mit Skripten zu laden, um dieses Maximum zu erkennen? Ich werde es später ausprobieren.

 
Vladimir Perervenko:

Die neueste Version ist 5.0.29.

Wie viele MT5-Terminals haben Sie? Nur so aus Interesse.

Ja, richtig, danke.

Nach der Geschäftsordnung gibt es 6 Jungfrauen und 3 Prod.
 
Vladimir Perervenko:

In drei Fällen kann ein zusätzliches Terminal erforderlich sein:

-ein anderer Makler und ein anderes Konto

-Anderes Konto bei demselben Makler

- oder die Anzahl der an das Terminal angeschlossenen Strategien ist zu hoch.

Vielleicht hat jemand versucht, das Terminal mit Skripten zu laden, um dieses Maximum zu erkennen? Ich werde es später versuchen.

Ich habe es ausprobiert, es hängt alles von der Hardware ab, auf der ich es ausführe.

Eine Instanz verbraucht etwa 45-50Mb RAM + 2,5-4% CPU. (Ja, % CPU hängt vom CPU-Typ ab, in meinem Fall ist es ein Intel Xeon L5640 @ 2.27GHz)

Dasselbe, eine Instanz von python.

Wenn Python mit History läuft, + 200-300Mb RAM. Die CPU ist fast nicht ausgelastet.

Nun, wofür, das hängt von TOR oder der Idee ab.