Samstag, 20. April 2024, 01:01 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Yoggi

unregistriert

1

Freitag, 8. Februar 2008, 09:25

Robustheitstest öffnen, der nicht mit dem aktuellen Handelssystem verbunden ist

Hallo liebe Forumsmitleser und leserinnen,

ich habe momentan eine Frage, die wahrscheinlich total blöde ist, aber ich komm nicht auf den Dreh.
Ich führe beim Testen von Handelssystemen immer mehr als nur einen Robustheitstest aus. Jeder neue Test löscht dann aber die Verbindung des alten Tests zum HS. Ich speichere die RT natürlich fleißig und kann sie im Explorer auch alle im Verzeichnis Projekte sehen, nur: Wie kann ich sie öffnen? Über Projekte öffnen komme ich nicht an die .irt Dateien ran und über Handelsystem - Robustheitstest komme ich jeweils nur an den letzten/aktuellen Test.
Welchen simplen Weg übersehe ich da?
Danke
Yoggi

Yoggi

unregistriert

2

Freitag, 8. Februar 2008, 11:24

Also, einen Weg habe ich jetzt schon gefunden. Wenn ich einen aktuellen Robustheitstest geöffnet habe, dann gibt es die Schaltfläche Öffnen, mit der ich an andere RTs herankomme. Dafür muss ich aber immer einen RT aktuell durchgeführt haben, wenn ich nur auf Robustheitstest in einem Handelssystem klicke, kann ich nur einen neuen RT einstellen. Kennt jemand noch einen weniger umständlichen Weg?
Danke
Yoggi

Hans-Jürgen Männlich

Administrator

Registrierungsdatum: 10. Juli 2002

Beiträge: 1 712

3

Freitag, 8. Februar 2008, 17:11

Hallo Joggi,

ich helfe mir dadurch, dass ich eine RB-Test mit ganz, ganz, ganz wenig (1 oder 2) Pametern starte, das ist zwar immer noch umständlich, geht aber schnell.

Vielleicht kann AK dies als Wunsch aufnehmen, dass man aus INV heraus einen gespeicherten RB-Test laden kann.
Viele Grüße,
Hans-Jürgen

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

4

Freitag, 8. Februar 2008, 17:11

Hallo Yoggi

Welchen simplen Weg übersehe ich da?

.. ich weiss natürlich nicht, ob das für Dich ein gangbarere Weg ist. Ich entwickle meine HSe in Phasen, desswegen stellt sich bei mir die Frage so nicht.

Das könnte so aussehen:
Phase 0: Regeln und Gundeinstellungen erfassen ohne Gebühren und Slippage, fester Kontrakt 1
Phase 1: via Robtest die Einstiegssignale untersuchen (wenn meine Idee keine wirkliche Vorhersagekraft zeigt, endet die Sache hier!)
Phase 2: Den Einstiegssignalen NNs hinzufügen, passendes NN per GA suchen
Phase 3: Ausstiege suchen (Kapitalverlust) per GA
Phase 4: zum Vergleich Kosten und Slippage hinzufügen, erneut GA (wenn hier keine positive Gewinnerwartung erzielt werden kann, war zwar die Idee gut, aber der untersuchte Titel ist mit seinem Tickwert im Verhältniss zu den Kosten mit der Idee nicht handelbar)
Phase 5: Money-Management, zu festem Kapitalanteil ein geegnetes Delta per Robtest suchen
Phase 6: HS für den Real-Handel fitmachen, ORM Stops hinzufügen etc.

Je nach Handels-Idee können die Phasen variieren, aber das Wichtige ist: nach jeder Phase wird die nächste Phase aus der vorherigen per "Handelssystem duplizieren" erzeugt und dann das Duplikat angepasst.

Auf diese Weise kann ich immer in der Kette zurückgehen und sehen, was die Ausgangslage war inkl. intakten Robtests oder GA-Optimierungen. Am Ende sieht es so aus wie im anhängenden Bild; in diesem Beispiel kommen nur die drei HSe ganz rechts (eines pro Titel also) zum Real-Einsatz. Alles davor sind sozusagen nur "meine Notizen". Im Bild sieht man auch, dass ich für den Nasdaq 100 eMini in Phase 1 noch einen alternativen Lauf gemacht hatte (hier, weil ich einen zweiten Robtest auf anderen Variablen ziehen wollte; für die weiteren Phasen habe ich mich dann für die glücklichere Variante dieser Phase entschieden). Dazu gibt es zu jeder Phase und jedem Titel noch eine textuelle Beschreibung (.doc), damit ich mich später erinnern kann. Entweder weil nach-entwickeln angesagt ist (weil sich die Bedingungen geändert haben und die Standard-Abweichung der Kaiptalkurve das baldige Versagen ankündigt), oder weil ich die gleichen Phasen für weitere Titel durchlaufen will, weil es so toll läuft mit der Idee im Realhandel.

Ich kann also immer jeden Schritt genau nachvollziehen, es ist alles wiederholbar, ein Business Blue-Print!

Weil ich ein solches methodisches Vorgehen anwende, stellt sich also (für mich) die Eingangsfrage erst gar nicht. Falls die Ausführungen nützlich sind, freue ich mich. Wenn nicht, muss man doch auf Hans-Jürgens Vorschlag zurückkommen und Herrn Knöpfel um Anpassungen im Robtest Dialog bitten.


Edit: Typo, Absatz-Formatierungen und Bezug auf Hans-Jürgens Beitrag
»Bernd« hat folgendes Bild angehängt:
  • HS_Matrix.png
Gruss
Bernd

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Bernd« (8. Februar 2008, 17:55)


Yoggi

unregistriert

5

Freitag, 8. Februar 2008, 18:05

Hallo Bernd,
vielen Dank für Deine ausführlichen Auskünfte. Das werde ich mir mal versuchen für meine HSentwicklung anzuwenden, mal sehen ob ich den Überblick behalte, denn das hört sich sehr sinnvoll an.

Hallo Hans-Jürgen,
das scheint mir dann auch ein guter Vorschlag an AK zu sein, vielleicht im Anfangsdialogfeld vom Robustheitstest eine Möglichkeit Rob-test öffnen einzufügen.
Danke für die Mithilfe Euch
Yoggi

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

6

Freitag, 8. Februar 2008, 18:48

Hallo Yoggi

Ich bin auf Deine Erfahrungen gespannt!

Bisher habe ich einen Teil der Geschichte erzählt :D Hinzufügen muss ich noch: über den Phasen liegen bei mir Wellen:

* Wenn ich die Phasen von vorne bis hinten durchlaufen habe (inkl. Papertrading (PT) in der letzten Phase für wenigstens eine Woche), dann habe ich neue Erkenntnisse über die zu erwartende Slippage usw.
* Dann wird diese letzte Phase nach Risk-Of-Ruin Gesichtspunkten in einem separaten Excel durchgerechnet (ich stelle natürlich auch noch weitere statistische Berechnungen ausserhalb von Investox an; die einschlägige Literatur bietet ja reichlich Anregung)
* Möglicherweise wird diese letzte Phase aufgrund der (Excel-) Statistiken im ORM neu adjustiert und läuft wieder eine Woche
* Schliesslich nehme ich das ganze Projekt, speichere es unter einem neuen Namen (hinten z.B. statt _01 die _02 anhängen usw.), lösche alle Phasen bis auf die letzte, setze die Kosten, Slippage wieder auf 0, Kontrakt auf 1
* und die nächste Welle beginnt zu laufen. Unter 8 bis 12 Wellen bin ich noch nicht weggekommen!

Es ist nicht, dass pro Welle neue Regeln dazukommen (im Gegenteil, das wäre ja eine andere Idee, Wert in einem anderen Projekt-Zyklus umgesetzt zu werden), aber im PT angekommen lerne ich soviel Neues, was ich nicht mit echtem Geld bezahlen will. Also alles von vorne. Manche Phase dauert 36 bis 48 Stunden für die Berechnungen (lange Historien, fast in jeder Phase greife ich andere Zeiträume für Optimierung, Training, Kontrolle heraus , und lasse reichlich Out-Of-Sample Zeiten übrig). Manche Phasen brauchen aber auch nur 30 bis 45 Minuten Durchlaufzeit :S

Aber am Ende kommen Systeme heraus, die man wirklich versteht. Angepasst auf genau das eigene Profil, was Wohlfühlfaktor in Bezug auf Risk-Of-Ruin, Komfortfaktor hinsichtlich dem eigenen Lebens/Arbeits-Stil (Schlaf-Wach-Zyklen) usw. betrifft 8) Man weiss dann ganz genau, wann man das/die Systeme vom Markt nehmen muss oder wielange es noch gut geht (gehen sollte). Was zu tun ist, wenn es nicht mehr geht. Oder wie man sich neue Märkte erschliessen könnte.

Der Trost bei all dem Aufwand: mehrere Dongles vorausgesetzt kann man diese ganzen Phasen und Wellen auf verschiedenen Rechnern parallel fahren und nebenher ist auch Handel möglich :thumbup:
Gruss
Bernd

hajo

Meister

Registrierungsdatum: 20. Oktober 2002

Beiträge: 553

7

Freitag, 8. Februar 2008, 20:25

... und nebenher ist auch Handel möglich :thumbup:
... und der Ertrag stimmt. Das hoffe und wünsche ich Dir :thumbsup:

Gruß,
hajo

P.S.: Ich betreibe -meines Erachtens nach- auch sehr, sehr viel Aufwand um "profitabele HS" zu entwickeln, aber ... , toll was Du da machst !

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

8

Samstag, 9. Februar 2008, 02:39

Hallo hajo

Danke für die Blumen :)

Eigentlich habe ich nur für mich einen strukturierten Ansatz gefunden, um den Aufwand für die HS Entwicklung insgesamt zu minimieren:

* der initiale Aufwand in Phase 0 der ersten Welle ist vielleicht 10% höher als bei Versuch- und Irrtum Ansätzen, denn man muss für alle folgenden Phasen "vordenken"
* ein Beispiel dafür gibt es hier (besonders das Bild beachten), ich hoffe, dass Herr Knöpfel die im verlinkten Thread besprochenen Verbesserungen bringt, das würde den Phase 0 Aufwand erheblich reduzieren!
* die Gesamt-Durchlaufzeit für eine Welle ist zwar lang, möglicherweise mehrere Tage, aber:
* in den Phasen > 0 ist der zu leistende Aufwand dann, abhängig natürlich von der Anzahl zu untersuchenden Titel, bei nur ca. 30 Minuten pro Tag (RobTest auswerten oder GA Auswerten, nächste Phase vorbereiten und einstarten, ggf. Notitzen im begleitenden .doc machen, was in der nächsten Welle anzupassen ist)
* diese 30 Minuten pro Tag ab Phase 1 erfordern dazu auch keinen grossen Hirn-Einsatz mehr (denn es greif ja das Schema, alles ist nun vorgegeben und vorgedacht), das empfinde ich als Vorteil: man hat den Kopf frei für andere Projekte, einen Job, Familie, Freunde usw.
* ... und am Ende der ganzen Sache plumpst quasi "automatisch" ein brauchbares Ergebnis heraus (vorausgesetzt die Idee hat es über Phase 1 in der ersten Welle geschafft, wenn nicht, hat man nicht zuviel Zeit verloren)

Ich bin froh, dass mein Ansatz freundliche Aufnahme findet ^^
Gruss
Bernd

Hans

unregistriert

9

Samstag, 9. Februar 2008, 11:18

Hallo Bernd

Zitat

Phase 1: via Robtest die Einstiegssignale untersuchen (wenn meine Idee keine wirkliche Vorhersagekraft zeigt, endet die Sache hier!)
Phase 2: Den Einstiegssignalen NNs hinzufügen, passendes NN per GA suchen


Wie ist Phase 2 eigentlichzu verstehen? Wird der in Phase 1 ermittelten funktionierenden Idee (Handelsregel) noch zusätzlich ein NN der Handelsregel hinzugefügt ("And" Verknüpfung) oder welche Aufgabe sonst übernimmt das hinzugefügte NN?

Gruß Hans

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

10

Samstag, 9. Februar 2008, 11:56

Hallo Hans

Das Ganze ist ja nur ein beispielhaft beschriebenes Vorgehen zur Umsetzung einer Handels-Idee.

In diesem Fall sollte es ein Daytrader werden (um in Udos Gebiet zu wildern und ein wenig zu scalpen :D ). Es war meine Handels-Idee, a) aufgrund bestimmter Kriterien und Zeitfenster auf Tickbasis einen Ausbruch abzuwarten (Phase 1 sucht dazu Einstiege), und b) dann zu testen, ob ein NN mit täglicher Kompression (welches auf Intermarket-Daten eine Prognose liefert) die Richtung des Tages "ahnen" kann, so dass ich beim Ausbruch gleich richtig in den Markt steige und mir mit einer gewissen Wahrscheinlichkeit einen Dreh-Stop sparen kann (Phase 2).

Die einzelnen Phasen sind also gar nicht starr, es hängt von der umzusetzenden Idee ab. Nur die Abfolge ist bei mir immer ähnlich: zuerst wird an den Einstiegen gearbeitet, dann kommen die Ausstiege. Ich verwende tendenziell die meiste Zeit auf die Ausstiege, hier wird schliesslich Geld verdient oder verloren. Dann wird das Ganze mit Kosten gegengerechnet, um zu sehen, ob ein Markt (Titel) sich eignet für die Handels-Idee. Am Ende kommt das Feintuning mit Moneymanagement, Performance und ORM Anpassung.

Danach kommt das Papertrading: das Wichtigste ist, das eigene Konto via ORM Einstellungen möglicgst synchron zum HS zu bekommen. Die Slippage sollte im Durchschnitt möglichst genau mit der im HS gerechneten Slippage übereinstimmen - sonst waren alle Backtests für die Katz und haben nur einen Traum prognostiziert ;(

Weil das NN Training ca. 4 Tage gedauert hat, habe ich im geposteten Beispiel übrigens alles erstmal ohne NN durchgerechnet. Desswegen folgt auf Phase 1 im Bild gleich Phase -3 (für mich das Symbol für Phase 3 ohne NN, alle weiteren Phasen haben auch das Minus ). So ist das auch im PT, momentan in der 8 Welle. Da ich nun das NN fertig habe, schiebe ich Phase 2 und alle anderen positiven Phasen (also mit NN) hinterher. Momentan sieht es so aus, dass das NN im Russel 2000 echt Vorteile bringt, im S&P 500 ist es so lala und im Nasdaq 100 bringt es scheinbar nichts oder ist kontra-produktiv. Also werde ich es am Ende im Realhandel vielleicht in einem Markt verwenden und im anderen weglassen.

Ich wollte also nur zeigen, dass man mit einem strukturierten Ansatz jedes Investox-Handelssysteme wie eine Mega-Formel in einer Excel-Zelle betrachten kann. Was man reinpackt, hängt von der eigenen Idee ab ... aber man muss vor allem nicht wild immer in der selben Zelle herumändern :engel: Damit schliesst sich der Kreis zur Eingangs-Frage von Yoggi.


PS: ... und ja, ich arbeite da mit AND, damit die Regeln schon in Phase 0 fixfertig vordefiniert sind.

Jede Phase bekommt eine Phasen-Konstante:
global const Phase: 2;

In den Berechnungen steht dies; die NN Generation wird per Robtest gesucht:
#_SetGen INDX_Future_NN,[NN_Gen:98,1,200,1,200,1,2.7526,I]#
global calc Forecast: If( Phase >= 2, INDX_Future_NN(O[NN_Output:1,1,3,1,3,1,0.3351,I]), 0);

Und in den Regeln steht dann sowas wie dies:
global calc EnterLong:
<meine Regeln> AND Forecast >= 0;

Bei den HSen mit Minus (also z.B. -3, wenn ich mich entschlossen habe ohne NN weiterzufahren) ist der Forecast damit 0 und damit wirkungslos.


Edit: Typo
Gruss
Bernd

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Bernd« (9. Februar 2008, 12:48)