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
Was die Softwaretechnologie betrifft, möglicherweise ja. Bibliotheken können vom Optimierer aufgerufen werden, solange sie sich nicht in der Cloud befinden.
auf der NS-Seite - wie stellen Sie sich das vor?
Im Optimierer wird ein Durchlauf gemacht und die Daten werden in die Datei geschrieben, dann werden sie an das Netztraining weitergegeben, nach dem Training werden die Ergebnisse der Trainingsauswertung an MT4/5 zurückgegeben und das Netz (Regeln) wird in die Datei geschrieben. Die andere Sichtweise ist, dass wir die aufgezeichneten Dateien der NS-Logik verwenden, um Optimierungen (der NS-Varianten) durchzuführen und Standardindikatoren von TS zu beheben.
Ich habe die Tk-Chart-Demo erweitert - sie zeigt jetzt auch die Tabelle der Aufträge an.
Der MQL-Code, der sich auf die Tabelle der Aufträge bezieht
- wählt alle seine Aufträge aus und sendet sie in der Methode OnOrderList an tcl
- In der Ausgabe erhalten wir 3 Ticketlisten - die neuen, die geänderten und die gelöschten
und die Tcl-Methode, die die Hauptarbeit leistet:
- erhält eine neue Liste von Aufträgen
- mit früheren Aufrufen vergleichen
- erstellt 3 Listen (neu, geändert, gelöscht).
- Es wird eine Tabelle erstellt, die eigentlich ein Baum ist und in mehreren Ebenen erstellt werden kann.
# надо обновить внутренние структуры
# и вернуть триплет (список из трёх списков)
# 1 - список новых ордеров
# 2 - ордера которые поменялись
# 3 - ордера которые удалены
method OnOrderList { orderList } {
set created {}
set changed {}
set removed {}
foreach order $orderList {
set ticket [ lindex $order 0 ]
set known($ticket) $order
if { ! [ info exists Orders($ticket) ] } {
# новый тикет
# добавить в список свежесозданных
lappend created $ticket
set Orders($ticket) $order
continue
}
if { $Orders($ticket) != $order } {
# что-то поменялось
# добавить в список изменённых
set Orders($ticket) $order
lappend changed $ticket
}
}
foreach ticket [ array names Orders ] {
if { ! [ info exists known($ticket) ] } {
# прежнего ордера нет в новом списке - значит удалён
lappend removed $ticket
unset Orders($ticket)
}
}
# обновить грфику :-)
foreach ticket $removed {
my OnRemoveOrder $ticket
}
foreach ticket $changed {
my OnChangeOrder $ticket
}
foreach ticket $created {
my OnCreateOrder $ticket
}
return [ list $created $changed $removed ]
}
alles ist sehr kompakt.
Sie können die Stärken beider Sprachen nutzen - MQL ist nah an der Handelsumgebung und zählt schnell in Arrays,
Tcl kann problemlos mit Listen und Hashes umgehen.
MQL implementiert einen robusten Handelsalgorithmus, während Skripte die Interaktion mit der Welt und dem Benutzer übernehmen.
Das Archiv ist beigefügt.
Ein Skript zum Exportieren von Angeboten nach Excel
Ich habe ein kurzes Skript erstellt, um Angebote direkt nach Excel zu exportieren.
Ohne Eingaben in CSV oder irgendwelche Parameter - einfach auf das Diagramm werfen, das Excel-Blatt wird geöffnet und alle Kurse werden hineinkopiert.
Ich habe den Text so weit wie möglich kommentiert und beigefügt. Ich habe die Einzelheiten des Skripts auf meiner Website http://nektomk.ru/atcl:ratestoexcel bereitgestellt .
Die Lautstärke geht über das Forum hinaus, also da. Wenn ich in der Stimmung bin, werde ich es vielleicht im lokalen Blog vervielfältigen, damit die Informationen nicht verloren gehen.
Das beigefügte Skript
PS/ Hat jemand eine make - Datei für die Batch-Kompilierung von mql ? das wird eine mqh ändern, schieben Sie Make und bauen Sie eine Reihe von mq4, die in Abhängigkeiten aufgeführt sind...
aktualisieren/ duplizieren Sie den Artikel im lokalen Blog https://www.mql5.com/ru/blogs/post/718304 - jetzt wird er wahrscheinlich nicht mehr verschwindenDer Mailer funktioniert, aber es muss noch mehr getan werden...
In der Zwischenzeit eine Frage an die Leute - wird der GUI-Builder nachgefragt werden?
für Tk gibt es sie, aber aufgrund der Tatsache, dass Skripte in Text schneller geschrieben werden als in Draw, sind sie wenig gefragt.
etwa so:
PS/ das Ergebnis eines solchen GUI-Builders kann von MT4 aus gestartet werden...
der Mailer funktioniert, aber es muss noch mehr getan werden...
aber in der Zwischenzeit eine Frage an die Leute - wird es eine Nachfrage nach GUI-Buildern geben?
für Tk gibt es sie, aber aufgrund der Tatsache, dass Skripte schneller in Text als in Zeichnung zu schreiben sind, sind sie nicht sehr gefragt.
etwa so:
PS/ Das Ergebnis eines solchen GUI-Builders und jetzt mit Hilfe von "so und so einer Mutter" kann von MT4 aus ausgeführt werden...
Was für ein interessantes Zeug... nur wie man sie anwendet?
Ah, ich habe eine Idee für grafische Schnittstellen - Handelslogik wie einen Entscheidungsbaum erstellen! Das heißt, Sie erstellen einen Baum im grafischen Editor (d.h. Shell) und wandeln ihn über eine Schaltfläche in einfache Regeln oder sogar direkt in Code um! Regeln können aber auch sehr kompakt im Code gelesen werden.
Warum brauchen wir sie? Mit diesem Ansatz lässt sich die Handelsstrategie detailliert beschreiben, z. B. können wir sie leicht in Zeitreihen unterteilen - und nicht nur entscheiden, ob wir handeln oder nicht, sondern auch, ob wir in dieser Zeit und zu diesem Zeitpunkt auf eine andere Weise handeln. Die Anzeichen für eine Änderung der Taktik sind vielfältig, aber es ist nicht sehr bequem, sie in den Code zu schreiben, und zweitens ist es schwierig, sie visuell zu lesen - man kann eine Menge Fehler machen.
Haben Sie Interesse an einer solchen Idee, um Ihre Talente einzusetzen?
Was für ein interessantes Zeug... aber wie kann man sie anwenden?
Ah, ich habe eine Idee für grafische Schnittstellen - die Erstellung einer Handelslogik wie ein Entscheidungsbaum! D.h. wir erstellen einen Baum im grafischen Editor (z.B. Shell) und verwenden eine Schaltfläche, um ihn in einfache Regeln oder sogar direkt in Code umzuwandeln! Regeln können aber auch sehr kompakt im Code gelesen werden.
Warum brauchen wir sie? Mit diesem Ansatz lässt sich die Handelsstrategie detailliert beschreiben, z. B. können wir sie leicht in Zeitreihen unterteilen - und nicht nur entscheiden, ob wir handeln oder nicht, sondern auch, ob wir in dieser Zeit und zu diesem Zeitpunkt auf eine andere Weise handeln. Die Anzeichen für eine Änderung der Taktik sind vielfältig, aber es ist nicht sehr bequem, sie in den Code zu schreiben, und zweitens ist es schwierig, sie visuell zu lesen - man kann viele Fehler machen.
Haben Sie Interesse an einer solchen Idee für eine Anwendung Ihrer Talente?
Ich verstehe die Idee eines "grafischen Entscheidungsbaums" nicht. :-) vielleicht ist dein Talent nicht genug :-)
Ich verstehe die Idee des "grafischen Entscheidungsbaums" überhaupt nicht. :-) vielleicht bist du nicht talentiert genug :-)
Stellen Sie sich eine Datentabelle mit einer Reihe von Regeln vor
Diese Regeln sind im Code folgendermaßen angeordnet
Wenn ein Regelwert und ein berechneter Wert (Indikatorwert/Zeitpunkt/sonstiges Muster) übereinstimmen, wird z.B. eine Handelsaktion durchgeführt.
Diese Methode der Handelsentscheidungen ist sehr kompakt und vielseitig - wir können auf so einfache Weise zum Beispiel viele Strategien kodieren, indem wir ihnen verschiedene magische Symbole geben.
Der Haken an der Sache ist jedoch, dass wir genau die richtige Umgebung für diese Art der Programmierung brauchen. Diese Umgebung sollte wie ein Entscheidungsbaum (ein primitives Blockdiagramm) aussehen, in dem wir Blöcke erstellen können (Berechnungsergebnis z.B.arr_iDelta_Max_D1 mit vordefinierten Werten (1,2,3,4 ...n) und/oder mit der Möglichkeit, Werte von und bis zu begrenzen, um auf diese Weise viele verschiedene Gruppen zu erstellen), von diesem Block aus wird für jeden Wert der Variablen oder Wertebereich der Variablen verzweigt, und so weiter bis zum nächsten Block und so weiter. Wir werden also eine Reihe von Regeln haben, von denen übrigens nicht jede alle Blöcke verwenden muss.
Verstehen Sie jetzt? Wenn Sie Erklärungen benötigen, fragen Sie bitte nach.
Eine Datentabelle mit einer Reihe von Regeln präsentieren
Diese Regeln sind wie folgt kodiert
Wenn die Regelwerte und die berechneten Werte (Indikatorwert/Zeit/sonstiges Muster) übereinstimmen, wird z.B. eine Handelsaktion durchgeführt.
Diese Methode der Handelsentscheidungen ist sehr kompakt und vielseitig - wir können auf so einfache Weise zum Beispiel viele Strategien kodieren, indem wir ihnen verschiedene magische Symbole geben.
Der Haken an der Sache ist jedoch, dass wir genau die richtige Umgebung für diese Art der Programmierung brauchen. Diese Umgebung sollte wie ein Entscheidungsbaum (ein primitives Blockdiagramm) aussehen, in dem wir Blöcke erstellen können (Berechnungsergebnis z.B.arr_iDelta_Max_D1 mit vordefinierten Werten (1,2,3,4 ...n) und/oder mit der Möglichkeit, Werte von und bis zu begrenzen, um auf diese Weise viele verschiedene Gruppen zu erstellen), von diesem Block aus wird für jeden Wert der Variablen oder Wertebereich der Variablen verzweigt, und so weiter bis zum nächsten Block und so weiter. Wir werden also eine Reihe von Regeln haben, von denen übrigens nicht jede alle Blöcke verwenden muss.
Verstehen Sie jetzt? Wenn Sie Erklärungen benötigen, fragen Sie bitte nach.
Ich habe es in tcl gesehen - eine Umgebung, in der sie Blöcke mit Pfeilen verbinden... so haben sie Sound/Video/Grafikverarbeitung programmiert. http://wiki.tcl.tk/8565 scheint eine Menge Zeug zu sein, sie haben sogar Maxima in einen Block gesteckt
Wenn ja - werde ich genau aufpassen
Wie Xcos (http://www.scilab.org/en/scilab/features/xcos) und ähnlich modisch in Simulationen ?
Ich habe es in der tcl-Umgebung gesehen, wo sie die Blöcke mit Pfeilen verbinden... so haben sie die Sound-/Video-/Grafikverarbeitung programmiert. http://wiki.tcl.tk/8565 scheint eine Menge Dinge zu sein, sie haben sogar Maxima in einige Blöcke eingebaut
Wenn ja - werde ich genau aufpassen
Ja, das ist der Ansatz! Die Hauptsache ist, die Dinge nicht zu verkomplizieren und einen korrekten Interpreter zu erstellen, so dass alle Blöcke in einer Zeile (einer Verzweigung) zusammengefasst werden, mit der das Programm in MQL bereits funktioniert.
Ja, das ist der Ansatz! Die Hauptsache ist, die Dinge nicht zu verkomplizieren und einen korrekten Interpreter zu erstellen, so dass alle Blöcke in einer Zeile (einer Verzweigung) zusammengefasst werden, was bereits mit dem Programm in MQL funktioniert.
Ich glaube nicht, dass ich es übermäßig kompliziert machen möchte, z. B. möchte ich mich nicht mit bwise-Code herumschlagen.
Ich werde es höchstens für die Verwendung zusammen mit ATcl anpassen (d.h. Daten von Mql an seine Eingänge übertragen) und die Ausgaben übernehmen.
Natürlich werde ich ein HowTo schreiben müssen, wie man Quadrate zeichnet und sie an EA anhängt. Und üben Sie Englisch, wenn Sie mit dem/den Autor(en) kommunizieren :-)