Antwort

Frage an Mark - Details zur genetischen Evolution?

4 Antworten

mikeyc

Kunde, bbp_participant, Gemeinschaft, 877 Antworten.

Profil besuchen

vor 8 Jahren #114067

Hallo,

 

Ich habe einige Fragen: Was genau passiert bei der Mutation/Paarung von Strategien im Modus der genetischen Evolution?

 

Handelt es sich um zwei Strategien aus dem ursprünglichen Pool oder um mehr als zwei?

Nimmt es zufällig die Eingangsregel von einem und kombiniert sie mit der Ausgangsregel eines anderen?

Verändert dieser Prozess die Parameter in irgendeiner Weise (wie bei der Optimierung)?

Gibt es während des Kombinationsprozesses Zufälligkeiten und in welcher Form?

 

Ich versuche zu verstehen, was wichtiger ist und wofür ich mehr Zeit aufwenden sollte:

 

  1. Mehr Zufallsstrategien erstellen
  2. Mehr Zeit für die Verbesserung und Optimierung von Zufallsstrategien aufwenden
  3. Zeit für den Aufbau von Genetik aufwenden

Ein Einblick in die Details, was mit den Bausteinen und Regeln während des genetischen Prozesses geschieht, wäre sehr hilfreich.

 

Danke,

 

Mike

0

gentmat

Kunde, bbp_participant, community, 234 Antworten.

Profil besuchen

vor 8 Jahren #132028

Hallo Mike, ich glaube, Mark verwendet die Matlab-Funktion, da er ein Entwickler ist. Um GA zu verstehen, müssen Sie lesen oder einen Kurs dafür belegen. 

Ich werde versuchen zu erklären, woran ich mich aus meinem Universitätsstudium erinnere.

 

Der Zufalls-Pool wird zuerst ausgewählt und das erste zufällige Gen hat eine Fitness von, sagen wir, 1 ... dann kommen weitere und sie erhalten eine Fitness-Nummer, die von den Kriterien abhängt, die Sie für diese Fitness gewählt haben. 

Wenn alle Strategien nach dem Zufallsprinzip erstellt werden, wird der Algorithmus höchstwahrscheinlich die am besten geeignete Strategie umdrehen, und deshalb sieht man, dass viele Strategien ähnlich aussehen, wenn man sich für eine genetische oder eine zufällige Strategie entscheidet. Der genetische Algorithmus wird aufgrund der Fitness zu mehr ähnlichen Strategien führen. 

Sagen wir, es ist ein riesiger Kreis, in dem sich kleine Punkte befinden ... Sie werden sehen, dass alle Punkte versuchen, an ihren Platz zu kommen, aber relativ zu dieser Fitness.

 

Jetzt Mutation auftritt, aber seine so selten 10% ist so hoch. erinnern Genetischer Algorithmus wird verwendet, um viele Probleme wie die menschliche Evolution zu finden. so Mutation geschieht, um menschliche ist Millionen von Jahren in einer unbedeutenden Weise. Man kann also die Mutation auf 0,1 setzen, um auch im Handel realistischer zu sein. 

 

Jetzt Crossover ist der Weg, um Dinge schneller zu lösen und das kam von vielen Forschern, die mit GA gearbeitet und es besser gemacht. Denken Sie daran, auch GA ist immer noch NAIVE nicht großartig Weg, aber es wirklich geholfen, auch in der NASA Probleme und sie fanden Crossover die beste zu sein. 

Crossover wird A Z Y von der Kette und beginnen, sie zu tauschen wird es nicht ändern A oder B nur die Kombination wird es logisch ändern, aber als Parameter bezweifle ich, dass es etwas ändern wird, Nach der Theorie sollte es A und Z und Y die gleichen halten und kreuzen sie, bis die Fitness besser wird. 

 

Gibt es nun eine Standardmethode oder eine bessere Methode oder Einstellungen? NEIN 

Seine durch die Tatsache, dass, wenn Sie die Pool-Nummer der zufälligen Generation erhalten Sie bessere genetische Ergebnisse, aber denken Sie daran, es ist zeitaufwendig und Sie brauchen eine Menge von cpu zu tun. (und große Pool wird manchmal dazu führen, dass mehr ähnliche Strategie, weil von 1000, 1 dieser Trades kommt immer am besten passen hier werden Sie leben einen Kreis und u ll haben, um es mehr wie 100 Pool). und manchmal 1000 hilft mehr und in der Tat wird es die Chance auf bessere Strategien zu erhöhen (nur, dass die Sache könnte u scheitern, aber Sie können versuchen, 1000 oder 2000 und prüfen, was passieren wird)

Random kann die gleichen Ergebnisse wie genetische tun, aber es wird mehr Zeit, dies zu tun ... aber weil SQ Verbrauch der CPU ist etwas seltsam, ich kann Ihnen sagen, random ist viel schneller als genetische.

Theoretisch muss die genetische Suche also schneller sein, aber bei der SQ verbraucht die genetische Suche mehr Zeit für die Vorbereitung des Pools und die Kreuzung usw., so dass sie zu demselben Ergebnis führt.

 

Hoffentlich habe ich versucht zu helfen und jetzt wird MARK antworten, aber ich glaube, er wird keine spezifischen Einstellungen haben, da selbst Professoren und Leute, die GA erstellt haben, immer noch nicht wissen, was die besseren Einstellungen für GA sind.

Die meisten Mathematiker sind sich jedoch über 0,1 Mutation und 65% Kreuzung einig  

0

mikeyc

Kunde, bbp_participant, Gemeinschaft, 877 Antworten.

Profil besuchen

vor 8 Jahren #132031

Ich nehme an, der Kern dessen, was ich zu verstehen versuche, ist: Kombiniert GA einfach Teile von zwei Strategien und prüft dann, ob es besser ist als die übergeordneten Strategien, und auf welcher Ebene kombiniert es die Teile? Ist es auf der Einstiegs-, Ausstiegs- und Stop-Loss-Ebene oder sind es einzelne Teile der Einstiegs-, Ausstiegs- und Stop-Ebenen-Logik, und werden Konstanten wie die Periode des Indikators geändert? Erfolgt die Kombination auf der Ebene der Operatoren/Bausteine?

 

Führt der GA-Ansatz zu besseren Ergebnissen als das Verbessern und anschließende Optimieren, oder ist es besser zu gehen:

 

Zufällig -> Strategieteile verbessern -> Optimieren, und GA überhaupt nicht verwenden?

0

gentmat

Kunde, bbp_participant, community, 234 Antworten.

Profil besuchen

vor 8 Jahren #132033

Ich bin ein dev aber nicht schreiben sq aber hier sind die Fakten, was ich beleive ist wahr.
1- Ga kombiniert Entery-Regeln, z.B. Strategie 1 hat cci > rsi und Strategie 2 hat wp > bbands
ga nimmt die geeignetste dieser 2 - bleiben wir bei str 1 - und macht folgendes
entweder hinzufügen oder ersetzen oder austauschen
1 Szenario wäre also: cci>wp
oder cci>rsi && wp>bbands
und so weiter
Ga würde das Gleiche für sl tun und Gewinn mitnehmen
Ga tauscht die Auftragsart nicht aus, sondern behält die Auftragsart des am besten geeigneten Auftrags bei, ändert sie aber nur bei Ein- und Ausstieg.
2- Improver verwenden Sie nur, wenn Sie etwas im Sinn haben, um die Suche schneller zu machen.
3- Es gibt keine Möglichkeit zu beantworten, ob zufällige dann verbessern dann optimieren besser oder nicht. niemand wird jemals beantworten, dass, es sei denn, er ist unwissend und denken, er weiß, aber er tut es nicht.
Seine alles über Glück und Geschwindigkeit, im sicher, wenn u haben eine 200 Kerne bei 50ghz ull erhalten eine Wahrscheinlichkeit auf der Suche nach guten Strategien als ein normaler Benutzer.
random hat Vor- und Nachteile, also GA
-Radom-Profis:
a-sehr schnell, besonders in sq3 im Vergleich zu ga
b-eine Vielzahl neuer, voneinander abweichender Kombinationen finden können
c-verwendet nicht viele Widder und wartet nicht auf die Zählung, sondern wartet ein paar Sekunden, um zu prüfen, ob es passt, und beginnt dann mit der Verarbeitung neuer Generationen (wieder Geschwindigkeit)
Nachteile:
a-As sein schneller, Strategien zu finden sein langsamer, gutes einmal zu finden, wie manchmal zufälliges großes entery aber nicht große Ausgänge so finden, wenn es ga solche Strategie war, führt zu smth eher als ignoriert durch zufälliges
GA-Profis
1 Bessere Lösungen für komplexe Probleme, deren Lösung 400 Jahre dauern würde, können mit GA in einem Jahr gefunden werden. Pro Wissenschaftler verwenden GA und nicht den Zufall, um Probleme zu lösen
GA Nachteile:
-langsam wegen sq multithreaded Weg (es hat smth falsch hoffentlich sq4 ist besser) . random verwenden auch mehrere Kerne, aber es fühlt sich viel schneller
-Wie ich bereits sagte, besteht das Problem des genetischen Algorithmus darin, dass er um die beste Lösung kreisen kann und unendlich oft dieselben Strategien liefert.
Dies ist auf einen Indikator zurückzuführen, der bei jeder Zufallsstrategie am besten passt, so dass ga ihn immer verwenden wird.
um das zu lösen, müssen Sie die Anzahl der zufällig generierten Pools verringern, aber denken Sie daran, dass eine höhere Anzahl von Zufallszahlen eine bessere Chance auf eine bessere Strategie bietet. es ist ein Schwert mit 2 Seiten
Was das Beste ist, was besser ist, kann ich nicht sagen, auch derjenige nicht, der es geschaffen hat 🙂 .
Versuchen Sie es mit einem großen Pool, versuchen Sie es mit einem kleinen Pool, versuchen Sie es nur mit dem Zufallsprinzip.
Ich glaube nicht, Forex ist sehr komplex und zufällig kann es allein tun.
Sie brauchen nur Geschwindigkeit, Computer spped. nicht die Mühe mit verbessern und optimieren nur strenge Bank auf Stabilität > 0,85
wie diese ull bekommen 10 Strategien in 1 Tag und setzen Anzahl der Trades > max Trades in ur Geist, auf diese Weise nur Strategien, die halb fertig sind, sind zu speichern und nicht viel Arbeit zu sein dont andere als versuchen die Strategie auf verschiedene Symbole und verschiedene timefrsmes

0

seaton

Kunde, bbp_participant, community, 161 Antworten.

Profil besuchen

vor 8 Jahren #132038

GAs sind im Allgemeinen eine Möglichkeit, schnell große Eingabebereiche zu durchsuchen, um Ergebnisse zu erzielen, die zwar nicht optimal, aber in der Regel sehr gut sind, im Gegensatz zu einem Brute-Force-Ansatz, der viel Zeit benötigt, um den gleichen Eingabebereich zu durchsuchen und die gleichen Ergebnisse zu finden. BESTE Wenn Sie eine erschöpfende Suche durchführen, werden Sie schließlich das ultimative Ergebnis am globalen Maxima finden. Natürlich ist der Zufallsansatz genau das: Er durchsucht den Eingaberaum nach dem Zufallsprinzip und findet hoffentlich etwas Sinnvolles.

 

Die Theorie hinter GA ist, dass die Eingaben in einen großen Suchraum auf ein Genom abgebildet/kodiert werden (d.h. es könnte ein Array oder eine Zeichenkette sein, die die zu durchsuchenden Eingaben repräsentiert), in diesem Fall mit SQ sind es die Funktionen, die abgebildet werden, um eine Strategie zu bilden, und der Suchraum der Markt, eine Fitnessfunktion, die auf Regeln basiert, wird auf das Genom angewandt, um zu bestimmen, was ein gutes Ergebnis ist und wer die nächste Population überleben darf, in diesem Fall sind die Fitness die Regeln, die Sie anwenden, wie z.B. Profit und Drawdown, und bestimmt, welche Strategie als Eltern für die nächste Generation ausgewählt wird.

 

Eine Anfangspopulation wird mit zufällig generierten Genomen erstellt (oder manchmal mit vorbesetzten Genomen geimpft, d.h. Ähnlich wie in der Evolutionstheorie überleben nur die Genome, die fit sind (Ergebnis der Anwendung der Fitnessfunktion auf jedes Genom in der Population), so dass nur die Fitness überlebt, Bei der Kreuzung wird die Fortpflanzung simuliert und ein Paar von Elterngenomen tauscht einen Teil seines Genoms aus, um die Kinder zu bilden, aus denen die neue Generation besteht. Jedes Genom in der neuen Population hat eine kleine zufällige Chance zu mutieren, diese Mutation hilft der Population, nicht in Situationen mit lokalen Maxima stecken zu bleiben, die Fitnessfunktion wird angewendet und alles beginnt von vorne.

 

Mit der Zeit steigt der Gesamtfitnesswert der Population in der Regel bis zu einem Punkt, an dem er nicht mehr weiter ansteigt, d. h. die Fitness stagniert. Dies ist in der Regel das Ergebnis eines lokalen Maximums im Suchraum und ein Zeichen dafür, dass sich die Population nicht mehr weiterentwickeln kann. Daher ist es am besten, mit einer neuen Population zu beginnen und zu versuchen, ein weiteres lokales Maximum zu finden.

 

Um also Ihre Frage zu beantworten, in SQ die Ergebnisse mit GA VS Random, IMHO ist, dass GA findet profitable Strategien schneller, dass zufällige, aber die daraus resultierende Bevölkerung wird alle ähnlich sein und kann nicht mehr optimal als zufällig generierten Strategien, so dass beide benötigen eine Form der Optimierung. Beide sind also eigentlich nur eine Form der Suche, nur dass GA schneller Lösungen findet, aber die gefundene Lösung, obwohl sie gut ist, ist möglicherweise nicht optimal, d.h. sie liegt nicht im globalen Maximum. Ich beginne mit einem Zufallsgenerator, und die besten Lösungen werden als Seed für GA verwendet.

 

Vor vielen Monden (in den späten 90er Jahren) schrieb ich für meine Diplomarbeit ein Multitasking-Betriebssystem für eingebettete Systeme auf der Motorola 68HC11 MPU, das GA als Task-Scheduler verwendete.

 

Stephen...

1

Ansicht von 4 Antworten - 1 bis 4 (von insgesamt 4)