Zusammenstellung eines Teams zur Entwicklung eines IO (Entscheidungsbaum/Wald) in Bezug auf Trendstrategien - Seite 18

 
Aleksey Panfilov:

Die Mannschaft ist also aufgelöst. )

Und es wird eine verwaltete Gruppe geben. )

Selbst ein bereits etabliertes Team zu verwalten, hat eine 95%ige Chance, das Ergebnis zu zerstören.

Und um etwas zu verwalten, was es noch nicht gibt, muss man einen sehr starken Trumpf in der Hand haben. ))

Es ist an der Zeit, ein paar Trümpfe zu zeigen.

Auch die Methoden sind wichtig.

Es gibt ein Angebot, aber keine Nachfrage in irgendeiner Form.

Wenn potenzielle Teammitglieder in dieser Phase nicht bereit sind, proaktiv zu handeln, dann bin ich mir über ihre Motivation nicht sicher.

Das ist sehr bedauerlich.

Ohne Verwaltung kommt man nicht voran - ich habe ein System vorgeschlagen, bei dem die Teilnehmer selbst die Richtung der Reise bestimmen, es ist schwer, sich die bequemsten Bedingungen vorzustellen.

 
Roffild:

Von dieser Liste haben sich nicht einmal die Republikaner auf GitLab registriert...

Das Team hätte von Anfang an unter der Apache 2.0-Lizenz aufgebaut werden sollen, und Sie wollten Fremde zwingen, sich an die kooperative Ethik zu halten.

Nun, der Chef weiß überhaupt nichts über Softwareentwicklung.

Die Registrierung ist eine reine Formsache und dauert nur wenige Minuten.

Das Team sollte für sich selbst und alle Teammitglieder arbeiten und nicht in der Stimmung herumstochern.

Ideen zu entwickeln und sie zu kodieren sind zwei verschiedene Dinge.

 
Aleksey Vyazmikin:

Die Anmeldung dauert nur wenige Minuten und ist eine reine Formalität.

Das Team sollte für sich selbst und alle Teammitglieder arbeiten und nicht in der Nase bohren, wenn ihm danach ist.

Ideen zu entwickeln und sie zu kodieren sind zwei verschiedene Dinge.

Wenn es sich um eine "Kleinstarbeit" handelt, warum wird sie dann nicht erledigt? Es gibt keinen Arbeitsbereich, weil es kein Team gibt. Es gibt kein Team, weil es keinen Arbeitsbereich gibt...

Und in diesem Bereich sollte die Idee sofort umgesetzt werden, zumindest im Pseudocode.

 
Roffild:

Wenn es sich um eine "Kleinigkeit" handelt, warum wird sie nicht erledigt? Es gibt keinen Arbeitsbereich, weil es kein Team gibt. Es gibt kein Team, weil es keinen Arbeitsbereich gibt...

Und in diesem Bereich muss die Idee sofort umgesetzt werden, zumindest in Pseudocode.

Das Team existiert nicht, weil die Leute nicht zusammenarbeiten wollen; jeder (die meisten) ist daran interessiert, die Ideen der anderen zu hören, und das von Maxim vorgeschlagene Format - der Chatroom - ist dafür genau richtig.

Vielleicht ist in der derzeitigen Phase des Misstrauens und der Angst vor der Offenlegung der eigenen Ideen eine Variante der Kommunikation von Interesse.

Bevor man etwas tut, muss man wissen, wie es am Ende aussehen wird - es sollte einen Plan geben; ich habe vorgeschlagen, dass die Leute ihre Meinung über die Organisation des Arbeitsprozesses äußern - wie sie ihn haben wollen, wie sie ihn sich vorstellen, und dann den Arbeitsplatz unter Berücksichtigung dieser Wünsche einrichten.

 

Bürgerinnen und Bürger - alles liegt in unserer Hand!

Der Markt ist kein Ort, um persönliche psychologische Probleme zu lösen, sondern ein Feld, um Einkommen zu erzielen!

Sie können das Ding nicht allein bewegen.

 
Aleksey Vyazmikin:

Es ist also alles durcheinander - ist die Forum-Engine multifunktional? Ich habe über REST gelesen, aber es ist eine nackte Architektur, sollte ich für das Forum Quellcode für sie suchen?

Was meinen Sie damit, dass Sie andere Skripte abspielen können, wo können Sie sie abspielen? Stellen Sie sich vor, Sie wollen das Produkt an einen normalen Benutzer verkaufen, und erklären Sie ihm mit menschlichen Worten, was es bietet und womit es zusammenpasst, bitte. Ich halte sie für notwendig und wichtig, aber ich sehe nicht, warum, danke.

Was gibt es da zu erklären, oben habe ich Ihnen ein Beispiel gezeigt, wie man vom MQL-Skript auf Python zugreift, das auf dem lokalen Computer installiert ist, das Modell des neuronalen Netzes trainiert, es in einer Datei speichert, lädt und damit arbeitet, indem man die Predict-Methode aufruft.
https://www.mql5.com/ru/forum/261479/page16#comment_8011085

Sie können das gleiche Muster verwenden, um eines der Hunderte von verfügbaren IO-Modellen in den Python-Bibliotheken zu erstellen und es auf Ihren Daten zu trainieren. Unter Verwendung desselben Beispiels können Sie einen Client-Teil in einem EA oder Indikator erstellen, der die Modelldatei während der Initialisierung lädt und sie dann durch Aufruf der Predict-Methode mit Ihren eigenen, aktuellen Daten abfragt.

Die Unterstützung von NamedPipes und REST-Protokollen ermöglicht es den angegebenen Skripten, Expert Advisors oder Indikatoren, ohne DLLs mit den MO-Modellen zu arbeiten, sowohl auf dem lokalen Computer als auch aus der Ferne im Netzwerk.
Im Gegensatz zu NamedPipes bei der Verwendung von REST-Skript Text aus MQL sollte nicht durch FileWriteString gesendet werden, sondern durch WebRequest an eine öffentliche URL, zum Beispiel auf VPS, wo der Motor läuft, sonst ist es das gleiche.

Собираю команду для развития МО (Дерева решения/леса) применительно к трендовым стратегиям
Собираю команду для развития МО (Дерева решения/леса) применительно к трендовым стратегиям
  • 2018.07.07
  • www.mql5.com
Предлагаю сплотиться для решения задачи МО применительно к трендам, т.е...
 
Ivan Negreshniy:

Was gibt es da zu erklären? Oben habe ich Ihnen ein Beispiel gezeigt, wie man vom MQL-Skript aus Python aufruft, das auf dem lokalen Computer installiert ist, das Modell des neuronalen Netzes trainiert, es in einer Datei speichert, lädt und damit arbeitet, indem man die Methode Predict aufruft.
https://www.mql5.com/ru/forum/261479/page16#comment_8011085

Nach demselben Muster können Sie eines von Hunderten von in Python verfügbaren MO-Modellen erstellen und auf Ihren Daten trainieren. Nach dem gleichen Muster können Sie einen Client-Teil in einem Expert Advisor oder Indikator erstellen, der die Modelldatei während der Initialisierung lädt und sie dann durch Aufruf der Predict-Methode mit seinen eigenen, aktuellen Daten abfragt.

Die Unterstützung von NamedPipes und REST-Protokollen ermöglicht es den angegebenen Skripten, Expert Advisors oder Indikatoren, ohne DLLs mit den MO-Modellen zu arbeiten, sowohl auf dem lokalen Computer als auch aus der Ferne im Netzwerk.
Im Gegensatz zu NamedPipes bei der Verwendung von REST-Skript Text aus MQL sollte nicht durch FileWriteString gesendet werden, sondern durch WebRequest an eine öffentliche URL, zum Beispiel auf VPS, wo der Motor läuft, sonst ist es das gleiche.

Im Großen und Ganzen ist es klar, ein Werkzeug, um ein berechnetes Modell zu aktivieren.

Aber ich verstehe immer noch nicht, wie ich mit dem Strategieoptimierer umgehen soll...

 

Ich werde meine Gedanken zu Bäumen hinterlassen, falls sie nützlich sein sollten.

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Maschinelles Lernen im Handel: Theorie und Praxis (Trading and Beyond)

Aleksey Vyazmikin, 2018.07.10 14:18

Gestern kam mir ein Gedanke: Warum suchen wir nach Entscheidungsbäumen, d. h. nach einem Modell, das eine Entität beschreibt? D.h. warum müssen wir überhaupt das ganze Gebilde beschreiben, vielleicht sollten wir einfach nach den Teilen dieses Gebildes suchen, die am verständlichsten und vorhersehbarsten sind? Da ich Blätter von Bäumen sammle, dachte ich, dass ich vielleicht eine Methode verwenden sollte, um solche Blätter zu finden, ohne einen vollständigen Entscheidungsbaum zu konstruieren, was meines Erachtens bei gleichem Rechenaufwand zu einer Qualitätssteigerung führen sollte.

Ich habe das Internet durchsucht und nirgends eine solche Methode gefunden. Vielleicht weiß jemand von solchen Entwicklungen?

Während ich den Algorithmus ausarbeite, denke ich, dass ich zuallererst Prädiktoren auswählen muss, die die Vorhersagefähigkeit einer der Klassen zeigen, dabei müssen die Prädiktoren binär gemacht werden (dafür muss ich meine eigene Stichprobe für jeden Prädiktor bilden oder Ausschlussmargen aus der allgemeinen Stichprobe bilden (was ist sinnvoller?)). Dann verwenden Sie bereits ausgewählte Prädiktoren (und deren Kombinationen), um Stubs für eine bestimmte Klasse (in meinem Fall 3 Klassen) zu erstellen, und verwenden diese Stubs dann, um die restlichen Prädiktoren zu erstellen. Gleichzeitig können wir sie auch auf die Bevorzugung einer bestimmten Klasse prüfen. Dann werden wir, entsprechend der Idee, die Bereiche finden, die sich am besten für die Klassifizierung der spezifischen Zielklassen eignen. Und der restliche Bereich wird einfach ein Feld der Untätigkeit/Erwartung sein.

Natürlich können wir dann sehen, wo die Blätter übereinander liegen, und in diesen Fällen ein durchschnittliches Ergebnis erzielen. Und wir können einen solchen Baum aufbauen, allerdings mit Abstimmungselementen aufgrund der Dichte in verschiedenen Bereichen der verschiedenen Ziele.

Was halten Sie von dieser Idee?


 
Aleksey Vyazmikin:

Ich werde meine Gedanken zu den Bäumen hinterlassen, falls sie nützlich sein sollten.


Viele äußern hier Gedanken - Ideen, einige bieten Mechanismen - Algorithmen an und kommen sogar manchmal zur Realisierung - fertige Programme, aber leider gibt es keinen Fortschritt, keine praktischen Ergebnisse, im Grunde endet alles mit Überschwemmungen und unbegründeten Erklärungen.

Vielleicht liegt das daran, dass wir keine einheitliche Darstellung der IO-Tools für den Handel haben - das Format der Daten, der Modelle und der objektiven Bewertung der Ergebnisse, was es uns nicht ermöglicht, konstruktiv miteinander zu kommunizieren, Versuchsergebnisse auszutauschen und vernünftige Schlussfolgerungen zu ziehen.

Und was nützt uns das in einer solchen Situation, wenn wir nicht einmal Methoden zur objektiven Bewertung eines einzelnen Akteurs - eines Entwicklers - haben?)

Vielleicht sollten wir damit beginnen, solche Methoden zu entwickeln und zu vereinbaren; es gab einen Versuch, dieses Thema im MoD-Thread anzusprechen, aber bisher gab es kein gegenseitiges Verständnis; vielleicht können Sie, als Enthusiast dieses Themas, etwas tun?

 
Ivan Negreshniy:

Viele Menschen äußern hier ihre Gedanken - Ideen, einige bieten Mechanismen - Algorithmen an und kommen manchmal sogar zur Umsetzung - fertige Programme, aber leider gibt es keinen Fortschritt, keine praktischen Ergebnisse, meist endet alles mit Überschwemmungen und unbegründeten Erklärungen.

Vielleicht liegt das daran, dass wir keine einheitliche Darstellung der IO-Tools für den Handel haben - das Format der Daten, der Modelle und der objektiven Bewertung der Ergebnisse, was es uns nicht ermöglicht, konstruktiv miteinander zu kommunizieren, Versuchsergebnisse auszutauschen und vernünftige Schlussfolgerungen zu ziehen.

Und was nützt uns das in einer solchen Situation, wenn wir nicht einmal Methoden zur objektiven Bewertung eines einzelnen Akteurs - eines Entwicklers - haben?)

Vielleicht sollten wir damit beginnen, solche Methoden zu entwickeln und zu vereinbaren; es gab einen Versuch, dieses Thema im MoD-Thread anzusprechen, aber bisher gab es kein gegenseitiges Verständnis; vielleicht können Sie, als Enthusiast dieses Themas, etwas tun?

Ich stimme zu, dass Standardbewertungen nicht geeignet sind, darüber habe ich bereits geschrieben. Dies ist besonders offensichtlich, wenn es sich um eine Trendstrategie handelt. Es ist besser, nach optimalen Bewertungskriterien für eine Basisstrategie zu suchen und diese dann auf andere Strategien zu übertragen. Meines Erachtens versucht der MO-Zweig hauptsächlich vorherzusagen, wie die Bar bei ihrer Eröffnung schließen wird. Und auch hier mag die "guess/no-guess"-Metrik noch angemessen sein, aber auch hier sollten, ganz abgesehen von Trendstrategien, Punkte bei der Schätzung berücksichtigt werden.

Hier im Bild unten, Einstiegspunkte im Quadrat 1 wird viel besser sein (bringen mehr Gewinn) als im Quadrat 2, wo es Gewinn, während im Quadrat 3 werden wir mit Verlust schließen, wenn der Vermögenswert verkauft wird, aber es wird nicht bringen Gewinn, wenn der Vermögenswert gekauft wird, bis der Mindestpreis gebildet wird.


Sie sehen also, dass der prozentuale Schätzwert des Einstiegs groß sein kann, aber wenn dieser große Wert im zweiten Quadrat stärker konzentriert ist als im ersten, kann der kleinere Wert der Fehler den gesamten Gewinn überdecken.

Deshalb möchte ich nun die Konzentration von Signalen in dem Bereich, in dem sie mehr Gewinn oder Verlust bringen, in meiner Modellschätzung berücksichtigen und dies bei der Erstellung des Entscheidungsbaums einbeziehen.