Asynchrone und mehrfädige Programmierung in MQL - Seite 29

 
Реter Konow:

Funktioniert die Kommunikation über Ressourcen mit Kopien auf normalen Diagrammen (nicht OBJ_CHART)? Oder gibt es da irgendeine Einschränkung?

Nicht sicher. Wenn Sie ein solches Experiment durchführen, lassen Sie mich die Ergebnisse hier wissen.

 
Andrey Barinov:

Verstehe ich das richtig, dass bei dieser Umsetzung der OnTrade-Ansatz nicht mehr in Frage kommt? Sie sollten auf das Ergebnis der Handelsaufträge in einem Sklaven warten?

 
fxsaber:

Verstehe ich das richtig, dass bei dieser Umsetzung der OnTrade-Ansatz nicht mehr in Frage kommt? Und es ist notwendig, für das Ergebnis der Handelsaufträge in der Slave warten?

Ich verwende OnTrade nicht (ich schreibe plattformübergreifenden Code, und MT4 hat das nicht). Aber ich warte auch nicht viel (ich benutze nicht sleep und while). Ich habe genug von dem, was OrderSend() zurückgibt

 
Реter Konow:

Funktioniert die Kommunikation über Ressourcen mit Kopien auf normalen Diagrammen (nicht OBJ_CHART)? Oder gibt es dort irgendwelche Einschränkungen?

Jede EA-Agentenkopie muss nur ihre eigene Nummer kennen, um einen eindeutigen Ressourcennamen zu erstellen.

 
Andrey Barinov:

Was OrderSend() zurückgibt, ist für mich ausreichend

Ergebnis.deal = 0 - genug? Und die Probleme mit der unsynchronisierten Handelshistorie direkt nach OrderSend im MT5.

OnTrade scheint in 4. zu funktionieren.

 
fxsaber:

Ergebnis.deal = 0 - ist das genug?

Ich hatte noch keine (result.order ==0 && result.deal==0)

https://docs.mql4.com/ru/runtime/running
Выполнение программ - Программы MQL4 - Справочник MQL4
Выполнение программ - Программы MQL4 - Справочник MQL4
  • docs.mql4.com
Каждый скрипт и каждый эксперт работает в собственном отдельном потоке. Все индикаторы работают в одном интерфейсном потоке терминала. Обработка тиков и синхронизация истории также производится в интерфейсном потоке. Если пользовательский индикатор вызван при помощи функции iCustom(), то этот индикатор работает в потоке вызвавшей его программы...
 
Andrey Barinov:

Ich weiß es nicht. Wenn Sie ein solches Experiment durchführen, lassen Sie mich die Ergebnisse hier wissen.

Das werde ich.

Im Allgemeinen ist dies eine seltsame Situation. Wenn Sie Daten über Ressourcen lesen, müssen Sie die Adresse des Programms angeben, in dem sich die Ressource befindet. Da jedoch mehrere Kopien desselben EA laufen, haben sie dieselbe Adresse. Wie werden in diesem Fall die Daten gelesen und geschrieben? Seltsam...

 
fxsaber:

Jede EA-Agentenkopie muss nur ihre eigene Nummer kennen, um einen eindeutigen Ressourcennamen zu erstellen.

Einverstanden.
 
Andrey Barinov:

Ich hatte noch keine (result.order ==0 && result.deal==0)

Es geht um einen Fünfer.

 
fxsaber:

Es geht um einen Fünfer.

Das ist es, wovon ich spreche.

Ich habe den Link zu vier als Antwort auf den Kommentar gegeben, dass OnTrade in vier funktioniert.

Grund der Beschwerde: