Liga der Handelssysteme. Machen Sie weiter mit Ihrer guten Arbeit. - Seite 9

 
Georgiy Merts:

Dann werden spezielle Tester-Experten gestartet, die auf der Grundlage der Optimierungsergebnisse die besten Pässe auswählen und direkt einen Text von Funktionen für jeden TC bilden, der nur noch in den Expertencode übertragen werden muss, alles für die Neukompilierung starten und die Arbeit fortsetzen.

Das heißt, Sie haben einen Code-Builder geschaffen, und zwar nicht etwas Primitives, das auf einem von einem Menschen gezeichneten Blockdiagramm basiert, wie es viele gibt, sondern etwas Automatisches, das selbst die Programmlogik bildet; daran arbeite ich auch, und ich halte das für einen vielversprechenden Trend in der Entwicklung der künstlichen Intelligenz.

Ich denke, dass dies auch die Schlüsselkomponente bei der Erstellung von Handelssystemen ist und schlage vor, sich darauf zu konzentrieren. Zeigen Sie mir Beispiele für Ihre eigenen automatisch generierten Systeme und ich bin bereit, meine zu demonstrieren.

 
Iwan Negreshniy:

Das heißt, Sie haben einen Code Builder geschaffen und nicht etwas Primitives, das auf einem von einem Menschen gezeichneten Blockdiagramm basiert, wie es viele davon gibt, sondern etwas Automatisches, das die Programmlogik selbst bildet. Ich arbeite auch daran und halte diese Richtung für einen vielversprechenden Trend in der Entwicklung der künstlichen Intelligenz.

Richtig.

Doch die Realität sah einfacher aus. Ich habe mit einer sehr variablen Programmlogik angefangen, ich habe Blöcke gebaut, um Programmtext zu bilden, ich habe versucht, neuronale Netze zu verwenden... Man versicherte mir jedoch, dass dies keinen besonderen Nutzen habe. Deshalb schalte ich im Code-Builder einfach fertige Blöcke um (unterschiedlich für verschiedene TS), und ich "bewerte" die Werte der Parameter. Ein solches System ist, wie sich herausstellte, keineswegs schlechter.

Es gibt viele Möglichkeiten im Code Builder, aber ich fürchte, wir werden nie dazu kommen, sie zu nutzen.

 
Georgiy Merts:

Richtig.

Doch die Realität sah einfacher aus. Ich habe mit einer sehr variablen Programmlogik angefangen, ich habe Blöcke gebaut, um Programmtext zu bilden, ich habe versucht, neuronale Netze zu verwenden... Aber man versicherte mir, dass es keinen besonderen Nutzen habe. Deshalb schalte ich im Code-Builder einfach fertige Blöcke um (unterschiedlich für verschiedene TS), und ich "bewerte" die Werte der Parameter. Dieses System ist, wie sich herausstellte, keineswegs schlechter.

Es gibt viele Möglichkeiten im Code Builder, aber ich fürchte, wir werden nicht zu ihnen kommen.

Der Wechsel zwischen Codeblöcken ist nur eine grobe, schrittweise Nachahmung der Erstellung eines neuen TS, und es ist keine Tatsache, dass man durch die Anpassung von Variablen im Optimierer diese Schritte glätten kann.


Das erinnert ein wenig an den alten Witz über den Bau eines Flugzeugs anhand von Dampflokomotivzeichnungen mit weiteren Modifikationen mithilfe einer Feile:)

 
Iwan Negreshniy:
Das Umschalten zwischen Codeblöcken ist nur eine grobe, gestaffelte Nachahmung der Erstellung eines neuen TS, und es ist keine Tatsache, dass es durch die Anpassung von Variablen im Optimierer möglich ist, diese Schritte zu glätten.

Das erinnert ein wenig an eine alte Anekdote über den Bau eines Flugzeugs aus Dampflokomotivzeichnungen mit anschließender Feinabstimmung mit einer Feile:)

Das ist richtig. Die Erfahrung zeigt jedoch, dass das grobe Schalten sinnvoller ist.

Ein Paradebeispiel sind die Eingaben. Schließlich gibt es eine große Anzahl von Eingängen, die erfunden werden können. Sie alle tendieren jedoch zu zwei Varianten - dem Einstieg am Gleitbalken und dem Einstieg am Kanalrand. Das war's! Was auch immer Sie sich vorstellen können, der Unterschied zwischen diesen beiden Optionen wird in Prozenteinheiten angegeben. Welchen Sinn hat es also, Hunderte von Varianten von Inputs zu nehmen, wenn sie sich nicht wesentlich von diesen beiden unterscheiden, die sich stark voneinander unterscheiden?

Und so ist es auch mit den Filtern und der Begleitung...

Es hat keinen Sinn, den Code zu "glätten". Ein "schrittweiser Wechsel" erweist sich als zuverlässiger.

 
Georgiy Merts:

Das ist richtig. Die Erfahrung zeigt jedoch, dass das grobe Schalten sinnvoller ist.

Ein Paradebeispiel sind die Eingaben. Schließlich gibt es eine große Anzahl von Eingängen, die erfunden werden können. Alle tendieren jedoch zu zwei Varianten - dem Einstieg auf der Gleitschiene und dem Einstieg an der Kanalgrenze. Das war's! Was auch immer Sie sich vorstellen können, der Unterschied zwischen diesen beiden Varianten wird in Prozenteinheiten angegeben. Welchen Sinn hat es also, Hunderte von Varianten von Inputs zu nehmen, wenn sie sich nicht wesentlich von diesen beiden unterscheiden, die sich stark voneinander unterscheiden?

Und so ist es auch mit den Filtern und Begleitern...

Es hat keinen Sinn, "den Code reibungslos zu ändern". Der "Stufenwechsel" erweist sich als zuverlässiger.

Es gibt nur zwei Varianten von Inputs, wenn man das Gleiten und den Kanal als unveränderlich ansieht, aber in der Praxis gibt es viele Variationen, und im Allgemeinen kann man sich dieser Abstraktionen entledigen, wenn man das Problem global angeht, im Sinne einer Suche nach Marktmustern.
 
Iwan Negreshniy:
Es gibt nur zwei Varianten von Eingaben, wenn man den Schiebebalken und den Kanal als unveränderlich betrachtet, aber in der Praxis gibt es eine große Anzahl von Variationen davon.

Nur unterscheidet sich diese "große Menge" von einem regulären EMA oder einem regulären Price Channel um ein paar Prozent.

Welchen gleitenden Durchschnitt Sie auch immer erfinden, Sie werden immer einen EMA finden, der ihm sehr nahe kommt. Das Gleiche gilt für die Kanäle - egal, welchen Kanal Sie erfinden, Sie werden immer einen PriceChannel finden, der ihm sehr nahe kommt. Wozu brauchen wir in diesem Fall all diese "große Menge"?

 
Georgiy Merts:

Nur unterscheidet sich diese "große Menge" von einem regulären EMA oder einem regulären Price Channel um einige Prozent.

Welchen gleitenden Durchschnitt Sie auch immer erfinden, Sie werden immer einen EMA finden, der ihm sehr nahe kommt. Dasselbe gilt für die Kanäle - egal, welchen Kanal Sie erfinden, Sie werden immer einen PriceChannel finden, der ihm sehr nahe kommt. Und wozu brauchen wir in diesem Fall all diese "große Menge"?

D.h. das System bildet einen Mittelwert (im physikalischen Sinne des Wortes).

Und der Durchschnitt wäre +0% Gewinn, Georges. Wie ich :))) Ich möchte Sie nicht verprügeln - ich folge Ihrem Signal -, aber darum geht es ja leider.

 
Die Liga ist aber durchaus sinnvoll. In gewissem Sinne ist die Liga eine direkte Entsprechung der Portfolioinvestitionen. Ein Fallstrick ist unwahrscheinlich, aber der Ertrag ist gering. Allerdings werden Portfolioinvestitionen in der Regel ohne oder mit einer geringen Hebelwirkung getätigt. Hier kann es durchaus zu einem Fehler kommen.
Im Allgemeinen ist dies bei großen Einlagen der Fall. Bei den kleinen gibt es keinen Grund, sich die Mühe zu machen.
 
Ist dem Mann erklärt worden , wie man Handelssysteme testet und verwirft, oder haben Sie 9 Seiten lang geschrieben, dass nichts funktionieren wird?)
 
Alexander_K:

Das heißt, das System bildet einen Mittelwert (im physikalischen Sinne des Wortes).

Und der Durchschnitt wird +0% Gewinn sein, Georges. Wie ich :))) Ich will Sie nicht verprügeln - ich folge Ihrem Signal -, aber darum geht es ja leider.

Schauen wir mal. Das System kann nicht "mittelwertbildend" sein, da die besten TCs am Signal arbeiten. Nur die Rückgänge kommen vom "Sterben" der Systeme und davon, dass man sie bereinigen und durch neue ersetzen muss. Und leider ist die Frage der Bewertung und Auswahl im Hinblick auf "Nachhaltigkeit" immer noch ungelöst.