Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 337
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
Krücken, imho.
Guten Tag!
Können Sie uns sagen, wie die Bibliothek als eine Reihe von verwendeten Funktionen funktioniert?
D.h. beim Aufruf der Funktionen aus einer Bibliothek in zwei EAs, die an verschiedenen Paaren hängen - wird für jeden EA eine eigene Instanz der Bibliothek geladen und initialisiert?
Oder erwarten Sie, dass die gleichen (internen) Variablen aus der Bibliothek konkurrierend verwendet werden?
Ich habe einfach einige Funktionen in die Bibliothek eingebaut (*.mqh will ich nicht), und diese Funktionen verwenden Variablen/Arrays, die in der Bibliothek deklariert sind, um aktuelle Daten zu speichern. Diese Daten sind allen Symbolen gemeinsam, können aber zu beliebigen Zeitpunkten von jedem der aktiven EAs geändert werden. Wenn ein EA läuft - alles ist in Ordnung, aber wenn zwei EAs laufen - einige seltsame Scheiße (chaotische Daten) herauskommt, und ich habe den Verdacht, dass der konkurrierende Zugriff auf Variablen ist krumm.
Guten Tag!
Können Sie uns sagen, wie die Bibliothek als eine Reihe von verwendeten Funktionen funktioniert?
D.h. beim Aufruf der Funktionen aus einer Bibliothek in zwei EAs, die an verschiedenen Paaren hängen - wird für jeden EA eine eigene Instanz der Bibliothek geladen und initialisiert?
Oder erwarten Sie, dass die gleichen (internen) Variablen aus der Bibliothek konkurrierend verwendet werden?
Ich habe einfach einige Funktionen in die Bibliothek eingebaut (*.mqh will ich nicht), und diese Funktionen verwenden Variablen/Arrays, die in der Bibliothek deklariert sind, um aktuelle Daten zu speichern. Diese Daten sind allen Symbolen gemeinsam, können aber zu beliebigen Zeitpunkten von jedem der aktiven EAs geändert werden. Wenn ein EA läuft - ist alles in Ordnung, aber wenn zwei EAs laufen - erscheinen einige unverständliche Risse (unordentliche Daten), und ich habe den Verdacht, dass der konkurrierende Zugriff auf die Variablen schief ist.
Wie Sie wissen, enthält die untere Zeile des Terminals z. B. die folgenden Informationen
Saldo: 211721,72 Mittel: 101193,75 Sicherheiten: 55595,98 Frei: 45481,77 Stand: 181,81% -110643, 34 (ungefähr)
Auf einem meiner Terminals wird jedoch bei einem echten Cent-Konto nur die folgende Information angezeigt, obwohl es offene Positionen gibt:
Saldo: 211721,72 Mittel: 101193,75 -110643,34
Was könnte der Grund dafür sein? Ich danke Ihnen für Ihre Aufmerksamkeit.
Im Testgerät funktioniert MarketInfo() nicht, und Bid und Ask sind langsam und verzerrt. Deshalb hole ich sie auf Anraten von Xrust'a aus iClose(NULL,0,0):
Ich habe schon so viel geschrieben, es im Tester laufen lassen, um sicherzustellen, dass es keine Logikfehler gibt, und... Erst jetzt habe ich herausgefunden, dass MarketInfp() in meinem Testgerät nicht funktioniert.
Was prüfe ich dann so sorgfältig? Wie funktioniert das für mich?
Shaitan!!!
Tut.
Ich danke Ihnen.
Wie funktioniert das im Falle eines EA, der über zwei Paare schwebt? Ist das aufrufende Modul eines (expert.ex4) oder zwei (zwei laufende Instanzen)?
Ich danke Ihnen.
Wie funktioniert das im Falle eines EA, der über zwei Paare schwebt? Ist das aufrufende Modul eines (expert.ex4) oder zwei (zwei laufende Instanzen)?
Denn jeder EA (egal wie viele davon in den Charts hängen) hat sein eigenes aufrufendes Modul (EA-Datei).
Um die Verwirrung endgültig zu klären, habe ich einen Test-EA und eine Bibliothek geschrieben.
Der Expert Advisor gibt einfach den aktuellen Wert der Variablen aus der Bibliothek an Comment aus und erhöht für EURUSD den Wert der Variablen. Der Empfang der Variablen und ihre Inkrementierung werden durch Bibliotheksfunktionen realisiert.
Infolgedessen zeigt der Kommentar zum EURUSD den sich ändernden Wert an, während er dies beim anderen Symbol nicht tut.
Es ist also richtig, dass für jede Instanz (und nicht eine Datei) des EA eine eigene Instanz der EX4-Bibliothek geladen wird.
Krücken, imho.