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
Zum vorherigen Beitrag, Optimierung des Standard MACD Sample Expert Advisors
LL 0 Tester 10:30:03 vorherige Protokolle bereinigt
LL 0 Tester 10:30:03 MetaTester 5 build 540 (11 Nov 2011)
RI 0 Server 10:30:03 MetaTester 5 gestartet auf 127.0.0.1
IL 0 127.0.0.1 10:30:03 login (build 540)
GD 0 Netzwerk 10:30:03 1260 Bytes optimierte Eingabeinformationen geladen
HO 0 Netzwerk 10:30:03 3256 Bytes Eingabeparameter geladen
QK 0 Tester 10:30:03 Expertendatei hinzugefügt: Experts\Examples\MACD\MACD Sample.ex5. 36097 Bytes geladen
IS 0 Tester 10:30:03 erfolgreich initialisiert
LJ 0 Netzwerk 10:30:03 39 Kb an Gesamtinitialisierungsdaten erhalten
LM 0 Tester 10:30:03 Intel Core2 Duo E8400 @ 3.00GHz, 2047 MB
DD 0 Tester 10:30:03 Optimierungspass 218680882202 gestartet
MP 2Symbole 10:30:03 keine Preise für Symbol USDCHF
OJ 2 Symbole 10:30:03 keine Preise für Symbol USDCHF:30:03 keine Preise für das Symbol USDCHF
IS 2 Symbols 10:30:03 keine Preise für das Symbol USDCHF
KM 2 Symbols 10:30:03 keine Preise für Symbol USDCHF
EF 2 Symbole 10:30:03 keine Preise für Symbol USDCHF
GP 2 Symbole 10:30:03 keine Preise für Symbol USDCHF
GJ 0 Tester 10:30:05 218680882202 : bestanden innerhalb 2434 ms
MN 0 Tester 10:30:05 pass 396972489131 gestartet
KK 2 Symbole 10: 0530:05 keine Preise für das Symbol USDCHF
ID 2 Symbols 10:30:05 keine Preise für das Symbol USDCHF
ON 2 Symbols 10:30:05 keine Preise für das Symbol USDCHF
MH 2 Symbols 10:30:05 keine Preise für das Symbol USDCHF
CQ 2 Symbols 10:30:05 keine Preise für das Symbol USDCHF
QK 2 Symbols 10:30:05 keine Preise für Symbol USDCHF
PD 0 Tester 10:30:08 396972489131 : passed within 2309 ms
QR 0 Tester 10:30:08 Optimierungsdurchlauf 1009545839445 gestartet
NE 2 Symbols 10:30:08 keine Preise für Symbol USDCHF
DO 2 Symbols 10:30:08 keine Preise für das Symbol USDCHF
JI 2 Symbols 10:30:08 keine Preise für das Symbol USDCHF
PR 2 Symbols 10:30:08 keine Preise für das Symbol USDCHF
FL 2 Symbols 10:30:08 keine Preise für das Symbol USDCHF
LE 2 Symbole 10:30:08 keine Preise für das Symbol USDCHF
LL 0 Tester 10:30:10 1009545839445 : passed within 2590 ms
LD 0 Tester 10:30:10 pass 328139732768 started
KP 2 Symbols 10:30:10 keine Preise für das Symbol USDCHF
QJ 2 Symbols 10:30:10 keine Preise für das Symbol USDCHF
GS 2 Symbols 10:30:10 keine Preise für das Symbol USDCHF
MM 2 Symbols 10:30:10 keine Preise für das Symbol USDCHF
CF 2 Symbols 10:30:10 keine Preise für das Symbol USDCHF
IP 2 Symbols 10:30:10 keine Preise für das Symbol USDCHF
PJ 0 Tester 10:30:13 328139732768 : passed within 2465 ms
FN 0 Tester 10:30:13 Optimierungsdurchlauf 415346893128 gestartet
RK 2 Symbols 10:30:13 keine Preise für Symbol USDCHF
DD 2 Symbols 10:30:13 keine Preise für das Symbol USDCHF
NN 2 Symbols 10:30:13 keine Preise für das Symbol USDCHF
PH 2 Symbols 10:30:13 keine Preise für das Symbol USDCHF
JQ 2 Symbols 10:30:13 keine Preise für das Symbol USDCHF
LK 2 Symbole 10:30:13 keine Preise für das Symbol USDCHF
KD 0 Tester 10:30:15 415346893128 : bestanden innerhalb von 2278 ms
PR 0 Tester 10:30:15 Optimierung bestanden 20121173742 gestartet
NF 2 Symbole 10:30:15 keine Preise für Symbol USDCHF
DO 2 Symbole 10:30:15 keine Preise für das Symbol USDCHF
RI 2 Symbols 10:30:15 keine Preise für das Symbol USDCHF
HR 2 Symbols 10:30:15 keine Preise für Symbol USDCHF
FL 2 Symbole 10:30:15 keine Preise für Symbol USDCHF
LF 2 Symbole 10:30:15 keine Preise für Symbol USDCHF
FL 0 Tester 10:30:17 20121173742 : passed within 2309 ms
ND 0 Tester 10:30:17 no prices for symbol USDCHF 751721102576 started
JP 2 Symbols 10:30:17 keine Preise für das Symbol USDCHF
DJ 2 Symbols 10:30:17 keine Preise für das Symbol USDCHF
ND 2 Symbols 10:30:17 no prices for symbol USDCHF
HM 2 Symbols 10:30:17 no prices for symbol USDCHF
RG 2 Symbols 10:30:17 no prices for symbol USDCHF
LQ 2 Symbols 10:30:17 keine Preise für das Symbol USDCHF
FJ 0 Tester 10:30:20 751721102576 : passed within 2480 ms
RL 0 Tester 10:30:20 Optimierungspass 1037041429641 gestartet
HK 2 Symbols 10:30:20 keine Preise für Symbol USDCHF
RE 2 Symbols 10:30:20 keine Preise für das Symbol USDCHF
DN 2 Symbols 10:30:20 keine Preise für das Symbol USDCHF
NH 2 Symbols 10:30:20 keine Preise für das Symbol USDCHF
PR 2 Symbols 10:30:20 keine Preise für Symbol USDCHF
JK 2 Symbole 10:30:20 keine Preise für Symbol USDCHF
EF 0 Tester 10:30:24 1037041429641 : passed within 4508 ms
QR 0 Tester 10:30:24 pass 1231731063044 started
LF 2 Symbols 10:30:24 keine Preise für Symbol USDCHF
FO 2 Symbols 10:30:24 keine Preise für Symbol USDCHF
PI 2 Symbols 10:30:24 keine Preise für Symbol USDCHF
JR 2 Symbols 10:30:24 keine Preise für das Symbol USDCHF
DL 2 Symbols 10:30:24 keine Preise für das Symbol USDCHF
NF 2 Symbols 10:30:24 keine Preise für Symbol USDCHF
IQ 0 Tester 10:30:26 Expertenausführung abbrechen
DH 2 Tester 10:30:26 OnTick abgebrochen
CD 3 Tester 10:30:26 gestoppt bei 82% des Testintervalls
ON 3 Tester 10:30:26 Tester gestoppt außerhalb
KF 0 Tester 10:30:26 Tester Agent abgeschaltet
Sagen Sie mir, wie ich Multicurrency schreiben kann, denn meine Multicurrency zeigt unterschiedliche Ergebnisse, je nachdem, auf welches Paar ich sie im Testgerät setze.
Dieses Problem tritt bei der onTick- und der onTimer-Funktion auf, und es gibt auch Unterschiede
Das bedeutet, dass ich beim Testen von nur 1 Paar eine Menge Varianten erhalte und nicht optimieren kann.
Auf keinen Fall, solange es keine unabhängigen Ontick-Ereignisse für verschiedene Paare gibt und eine Bindung an den Chart besteht, macht es keinen Sinn, einen EA für mehrere Währungen zu schreiben.
Kein Weg, bis es unabhängige Ontick-Ereignisse für verschiedene Paare und Bindung an das Diagramm - es macht keinen Sinn, eine Multicurrency EA schreiben
Also die unabhängigen Ereignisse, sowohl auf Ticks von verschiedenen Paaren, und auf allen Bars wurde bereits implementiert und freundlicherweise von Konstantin Gruzdev (Lizar) - Artikel zur Verfügung gestellt. Es ist eine ausgezeichnete Lösung und funktioniert sehr gut. Getestet.)))
Wir brauchen eine vollwertige Funktionalität, nicht nur für Zecken.
Aber das Hauptproblem der Mehrwährungsfähigkeit ist nicht, dass die Sprache selbst (das Konzept von MQL selbst) es nicht erlaubt, die Verarbeitung von mehreren Threads innerhalb des Programms zu organisieren.
Außerdem ist die "Philosophie" der Schaffung von Mehrwährungen auf der Suche nach einem abstrakten Modellkonzept.
Meiner Meinung nach kann man einige Monocurrency-Strategien mit Schulkindern vergleichen, die die Grundschule abgeschlossen haben, und andere mit Schulkindern, die die Schule beendet haben und bereit sind, ein College zu besuchen. Was die Erwachsenen anbelangt, so können wir meiner Meinung nach, um bei dieser Analogie zu bleiben, davon ausgehen, dass sie sich gerade erst auf die Schule vorbereiten und alles noch vor ihnen liegt.
Natürlich wurde auf dem Gebiet der Mehrwährungsentwicklung bereits viel getan, sowohl von Entwicklern als auch von Enthusiasten wie Konstantin. Ich würde sogar sagen, dass wir in diesem Moment einen evolutionären Sprung von einer "nicht lebenden" Zelle auf die Ebene von Einzellern gemacht haben. Aber hier beginnt der längste und interessanteste Weg - der Weg der Entwicklung komplexer biolagischer Organismen.
Also, die unabhängigen Ereignisse, wie für die Ticks der verschiedenen Paare, und für alle Bars, wurden bereits umgesetzt, und freundlicherweise von Konstantin Gruzdev (Lizar) - der Artikel. Es ist eine ausgezeichnete Lösung und funktioniert sehr gut. Geprüft)))
Bei dieser Umsetzung ist nichts eindeutig. Interessant, wie das Problem im vorherigen Beitrag richtig formuliert wurde.
" Die Sprache selbst (das Konzept von MQL selbst) erlaubt es nicht, die Verarbeitung mehrerer Threads innerhalb eines Programms zu organisieren"
Sobald die Funktion OnChartEvent() zur Ausführung gestartet wird und während der Code zur Verarbeitung des Ereignisses der Ankunft eines neuen Ticks eines der Paare ausgeführt wird, haben alle anderen Paare mit ihren eigenen onTick-Ereignissen eine Pause!
Bei dieser Umsetzung fehlt nichts Spezifisches.
Können Sie genau sagen, was bei dieser Umsetzung fehlt?
Interessant, wie das Problem in einem früheren Beitrag richtig formuliert wurde.
Die Implementierung von Multithreading in MQL5 ist eine Frage der Zeit. Das ist kein Problem mehr.
Lizar:
Die Implementierung von Multithreading in MQL5 ist eine Frage der Zeit. Das ist kein Problem mehr.
Können Sie genau sagen, was bei dieser Umsetzung fehlt?
1. ein guter Versuch, eines der Hauptprobleme bei der Erstellung einer Multikupplung zu lösen. Das Ergebnis dieses Versuchs kann nicht mehr als Krücke bezeichnet werden, sondern als Hightech-Prothese. Trotz aller Vorteile kann diese Lösung nicht alle Probleme beseitigen.
Zurzeit erfordert die Implementierung (für eine NORMALE Implementierung) der Mehrfachwährung in Expert Advisors
a) parametrische Änderung des Handlers OnTick - Hinzufügung eines Parameters, der ein Symbol beschreibt, bei dem der Tick aufgetreten ist
b) Parametrische Modifikation des Handlers OnTrade - hierfür gibt es viele Möglichkeiten.
c) Organisation des Multi-Threadings nicht innerhalb eines Terminals oder eines bestimmten Charts, sondern innerhalb eines bestimmten Expert Advisors. Unter Multithreading verstehe ich die Situation, dass in einem bestimmten EA verschiedene Event-Handler oder verschiedene Codeblöcke gleichzeitig ausgeführt werden können.
2. Multithreading ist nicht nur ein Problem der Pfosten, aber für sie ist es einer der Hauptstolpersteine. Solange sie nicht umgesetzt ist, werden auch sehr gute "alternative" Lösungen nur Krücken sein.
PS
Was die in MQL5 implementierten Standard-Ereignisse betrifft, so habe ich schon einmal geschrieben, dass dieser Satz von Ereignissen das Minimum ist, und dass Entwickler darüber nachdenken sollten, zusätzliche Ereignisse zu implementieren (in Form von spezifischen Handlern oder unter Verwendung der Standardbibliothek). Zum Beispiel kann das Erscheinen eines neuen Balkens als Standard-Handler OnNewBar implementiert werden (möglicherweise mit Parametern - Symbol und Periode).