Diskussion zum Artikel "Die optimale Berechnungsmethode für das Gesamtvolumen an Positions nach der festgelegten Magischen Zahl"

 

Neuer Artikel Die optimale Berechnungsmethode für das Gesamtvolumen an Positions nach der festgelegten Magischen Zahl :

In diesem Beitrag geht es um das Problem der Berechnung des Gesamtvolumen an Positions nach festgelegtem Symbol und magischer Zahl. Die hier vorgestellte Methode verlangt nur den minimal notwendigen Teil der Abschluss-History, ermittelt den nächsten Zeitpunkt, als die Gesamtposition gleich Null war und führt Berechnungen an den jüngsten Abschlüssen aus. Des Weiteren wird hier ebenfalls die Arbeit mit globalen Variablen des Client-Terminals behandelt.

Der MetaTrader 5 Client-Terminal gestattet das parallele Arbeiten mehrerer Expert Advisors mit einem Symbol. Das geht leicht - man öffnet einfach mehrere Charts und hängt dort Expert Advisors an. Es wäre schön, wenn jeder Expert Advisor unabhängig von den anderen Expert Advisors, die mit dem gleichen Symbol arbeiten, funktionieren würde (dieses Problem taucht bei Expert Advisors, die mit verschiedenen Symbolen arbeiten, nicht auf).

Zunächst kann ein Expert Advisor in kompletter Kompatibilität mit seiner Testleistung und Optimierung im Strategie- Tester Handel ausführen. Die Bedingungen zum Öffnen einer Position können von der Größe oder des Nichtvorhandenseins bereits geöffneter Positions abhängen. Wenn mehrere Expert Advisors mit dem gleichen Symbol arbeiten, beeinflussen sie sich gegenseitig.

Der zweite, und vielleicht wichtigere Punkt ist, Experts Adivors zu gestatten, verschiedene Geldmanagement-Systeme zu verwenden, je nach den, in den Expert Advisors implementierten, Handelsstrategien. Und schließlich sollte es auch die Möglichkeit geben, die Ergebnisse jedes Expert Advisors zu kontrollieren und ihn ggf. abzustellen.

Autor: Dmitry Fedoseev

 

Es stellt sich eine Frage: Was passiert, wenn ein EA die gesamte Historie lädt und mit dem Zählen von Position 1000 bis 0 beginnt, und der andere, der zu diesem Zeitpunkt bereits gestartet wurde, das Laden von der ihm bekannten Stelle aus anfordert (z. B. von 1000 bis 900), wird die Historie abgeschnitten, und der erste wird bei Position 900 stehen bleiben und nicht weitergehen.

Daher rate ich Ihnen, den Algorithmus in Richtung des vollständigen Ladens der Historie zu überdenken (oder irgendwie für eine Synchronisation zu sorgen, damit die zweite keine Historie anfordert, solange die erste ihre Berechnungen nicht abgeschlossen hat).

 
Urain:

Es stellt sich die Frage, was passiert, wenn ein EA die gesamte Historie lädt und mit dem Zählen von Position 1000 bis 0 beginnt, und der andere, der zu diesem Zeitpunkt bereits gestartet wurde, das Laden von der ihm bekannten Stelle aus anfordert (z. B. von 1000 bis 900), die Historie abgeschnitten wird und der erste bei Position 900 stehen bleibt und nicht weitergeht.

Daher rate ich Ihnen, den Algorithmus in Richtung des vollständigen Ladens der Historie zu überdenken (oder irgendwie für eine Synchronisation zu sorgen, damit der zweite nicht die Historie anfordert, solange der erste seine Berechnungen nicht abgeschlossen hat).

Dann wird alles gut! Und wenn nicht, wird alles sehr schlecht sein. © "Der letzte gepanzerte Zug".

Glauben Sie, dass die Aufgaben zeilenweise parallelisiert werden?

Ich habe jetzt versucht, eine lange Schleife auf einem Symbol in zwei Expert Advisors laufen zu lassen, es kommt zu keiner Verkeilung.


 
Integer:

Alles wird gut werden! Und wenn nicht, dann wird alles sehr schlecht sein. © "Der letzte gepanzerte Zug".

Glaubst du, dass die Aufgaben zeilenweise parallelisiert werden?

Ich habe versucht, eine lange Schleife auf einem Symbol in zwei Expert Advisors laufen zu lassen, es kommt zu keiner Verkeilung.

Lotterie, deshalb habe ich den Ansatz des teilweisen Ladens der Historie aufgegeben, als ein ähnliches Problem auftrat.

ZY im Allgemeinen, achten Sie auf das Problem gibt, um es zu testen, machen Sie einen Expert Advisor, dass bei jedem Tick wird Geschichte in zufälliger Tiefe zu laden, öffnen Sie die Registerkarte Geschichte mit dem laufenden Expert Advisor und sehen, was passiert.

 
Urain:

Lotterie, das ist, warum ich den Ansatz der partiellen Geschichte Laden aufgegeben, wenn ein ähnliches Problem begann zu erscheinen.

ZY im Allgemeinen, achten Sie auf das Problem gibt, um es zu testen, machen Sie einen Expert Advisor, dass auf jedem Tick wird Geschichte zu einer zufälligen Tiefe laden, öffnen Sie die Registerkarte Geschichte mit dem laufenden Expert Advisor und sehen, was passiert.

Lassen Sie alles passieren dort, die Hauptsache ist, dass andere EAs nicht mit der Arbeit des Zyklus stören.

 
Integer:

Da kann alles passieren, Hauptsache, es gibt keine Einmischung anderer Expert Advisors in die Arbeit des Zyklus.

Das kann nur gewährleistet werden, wenn alle EAs im gleichen Thread arbeiten,

dies ist aber nicht der Fall und jeder EA arbeitet in seinem eigenen, so dass es nur eine Frage der Zeit ist, bis Probleme auftreten.

 
Urain:

Es kann nur dann eine Garantie geben, wenn alle Berater im selben Thread arbeiten,

Das ist aber nicht der Fall, und jeder EA läuft in seinem eigenen, so dass es nur eine Frage der Zeit ist, bis Probleme auftreten.

Man kann endlos darüber phantasieren, wie ein Computer funktioniert.

 
Integer:

Sie können endlos darüber phantasieren, wie ein Computer funktioniert.

Ich verstehe Ihren Standpunkt nicht, soll ich Ihnen einen Code geben, in dem dieses Problem explizit ausgedrückt wird? (damit ich meine Zeit nicht damit verschwende).

Ich habe Ihnen die Schwachstelle aufgezeigt, in der ich selbst falsch lag (und mehr als einen Tag damit verbracht, den Fehler zu finden), und es ist Ihr Recht, darauf zu reagieren oder nicht.

 
Urain:

Ich verstehe Ihre Position nicht, Sie wollen, dass ich Ihnen einen Code gebe, in dem dieses Problem explizit ausgedrückt wird (damit ich meine Zeit nicht damit verschwende).

Ich habe Ihnen die Schwachstelle aufgezeigt, in der ich selbst zu meiner Zeit falsch lag (und mehr als einen Tag damit verbracht, den Fehler zu finden), und es ist Ihr Recht, darauf zu reagieren oder nicht.

Eben. Wenn man etwas behauptet, muss man es auch beweisen.

 
Integer

Da es kein Problem gibt, wird die Frage fallen gelassen.
 

Wenn mehrere Expert Advisors auf einem Symbol arbeiten, stellt sich das im allgemeinen Fall unlösbare Problem "Zählen des festen Gewinns durch jeden Expert Advisor separat". In einem speziellen Fall (wenn ein Paar eine Depotwährung enthält) ist das Problem gelöst.

Das Problem ist nicht sehr schwerwiegend, aber, wie man sagt, der Rest bleibt....

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете - Документация по MQL5