Freitag, 19. April 2024, 01:52 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

1

Donnerstag, 11. Juni 2015, 12:47

RobIteration: bitte erweitern um Anz.Variablen

Hallo Herr Knöpfel,

bitte könnte man bei dem Benutzer-Interface zur RobIteration (siehe Anhang) noch ein weiteres Eingabefeld "Anzahl der berücksichtigten Optimierungsvariablen"
hinzufügen, mit der default-Einstellung=all (all ... d.h. immer über alle Variablen robusten, d.h. so wie es jetzt ist).
Gemeint ist hierbei, dass die Zählung der OptVariablen immer oben beginnt, d.h. wenn man in das neue Eingabefeld 5 eingibt, dann werden nur die OptimierungsVariablen [1,2,3,4,5] des HS berücksichtigt, bei 3 nur [1,2,3], usw.

Wozu?
- man kann die HS so aufbauen, dass im oberen Bereich die Entry-Generierung statt findet und im unteren Bereich dann die Filter und Stopp implementierungen
- um schnell mal einen Überblick zu bekommen, ob der Entry des HS überhaupt was taugt, justier man am besten erstmal nur diese Variablen
- wenn das nix bringt, kann man sich die Justierung der Filter und Stopps dann sparen

Mit dieser Erweiterung kann man dann die Entry-Variablenjustierung sehr schnell automatisieren (derzeit mache ich das von Hand, jede Variable einzeln und erst wenn das passt, werfe ich die RobIteration an).

Vielleicht lässt sich da was machen.
Danke.

Viele Grüße,
Sten
»sten« hat folgendes Bild angehängt:
  • 150611_Eingabefeld_IterationÜberAlleOptVariablen.jpg

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 051

Wohnort: Giessen

2

Donnerstag, 11. Juni 2015, 14:54


bitte könnte man bei dem Benutzer-Interface zur RobIteration (siehe Anhang) noch ein weiteres Eingabefeld "Anzahl der berücksichtigten Optimierungsvariablen"
hinzufügen, mit der default-Einstellung=all (all ... d.h. immer über alle Variablen robusten, d.h. so wie es jetzt ist).
Gemeint ist hierbei, dass die Zählung der OptVariablen immer oben beginnt, d.h. wenn man in das neue Eingabefeld 5 eingibt, dann werden nur die OptimierungsVariablen [1,2,3,4,5] des HS berücksichtigt, bei 3 nur [1,2,3], usw.


Wenn ich mal meinen Senf zu dem Thema dazu geben darf:
Ich finde die Idee ist zu Kurz gesprungen, weil ich nicht immer die 5 Variablen im HS ganz oben stehen habe die ich iterieren will.
OK, ich kann im HS jeweils einzelne Variablen fixieren und dann die fixierten von der Iteration ausschließen, damit bin ich quasi schon am Ziel Deiner Wünsche.
Das ganze ist aber durchaus "ein wenig" umständlich mit der ganzen Klickerei durch den Sourcecode etc.

Viel schicker aber wäre es, wenn an dieser Stelle die Liste der Optimierungsvariablen aufpoppt und man ALLE per Häkchen aktivieren kann oder nur einzelne anhakt für die Iteration.

Bei der eigentlichen Iteration wäre es übrigens wünschenswert, dass nicht nur die Nummer der Optimierungsvariablen angezeigt wird, die gerade iteriert wird, sondern auch deren Name im Code.
If you think it´s expensive to hire a professional, wait until you hire an amateur.

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

3

Donnerstag, 11. Juni 2015, 15:20

Hallo Lenzelott,

ja, Dein Vorschlag ist noch flexibler, d.h. das wäre dann die Deluxe-Variante.
Über diese Variante würde ich mich natürlich auch sehr freuen.
Danke.

Viele Grüße,
Sten

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 051

Wohnort: Giessen

4

Freitag, 12. Juni 2015, 01:18

ich würde mir vorstellen, dass der Dialog hierfür in etwa so aussehen könnte:



Hintergrund:

Bei Uhrzeitfiltern macht es aus meiner Sicht meistens keinen Sinn eine Glättung vorzunehmen (Newstimes, ....)
Wenn ich jedoch x% der 5 Tage ATR als Stop in 1% Schritten Robteste würde ich das gerne "Stark Glätten", ....
If you think it´s expensive to hire a professional, wait until you hire an amateur.

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

5

Freitag, 12. Juni 2015, 10:34

Hallo,

ich denke wenn man es konsequent weiter denkt, dann bräuchte man mehrere RobIterations-Durchläufe (d.h. pro Durchlauf, so wie jetzt schon möglich, immer wieder von vorne anfangen mit robusten, bis es keine Verbesserung mehr gibt), z.B. so:

Ablaufplan RobIteration:
1.Durchlauf: alle EntryVariablen robusten ... z.B. OptVar. 1 bis 5 und immer wieder [1,2,3,4,5 1,2,3,4,5 usw.] bis es keine Verbesserung mehr gibt, dann nächster Durchlauf
2.Durchlauf: alle FilterVariablen ... so wie bei 1.), d.h. bis es keine Verbesserung mehr gibt
3.Durchlauf: alle StopVariablen ... so wie bei 1.), d.h. bis es keine Verbesserung mehr gibt
4.Durchlauf: StabilitätsRobusten ... d.h. noch ein Durchlauf über alle OptVariablen und eine Feinjustierung vornehmen, das OptWert genau auf "SwingHoch" justiert ist bzw. in der "Mitte des Berges", damit bei Veränderungen des Marktes das HS noch so lange wie nur möglich stabil weiter läuft

Dieser Ablaufplan sollten am Anfang einmalig definiert werden und dann automatisch ohne weitere Userinteraktion durchlaufen.
Es sollte möglich sein davon Vorlagen anzulegen, so dass eine leichte Wiederverwendbarkeit auf verschiedene HS möglich ist.

Mit @Annotation (kommt aus der JavaEE-Welt, um Methoden/Klassen zusätzliche Funktionalität zu spendieren) könnte man z.B. die Richtung vorgeben,
z.B. VerlustStops sollten möglichst klein sein, also von links nach recht robusten (so wie jetzt auch) ... @robItLinks2rechts
z.B. Gewinnstops sollten möglichst groß sein, also von rechts nach links robusten und wenn es zwei gleichhohe "Berge" gibt, dann nimm den rechten... @robItRechts2links.
Man schreibt dann die Annotation direkt im Code über die entsprechende OptVariable.
So könnte man z.B. auch die Glättungsstärke für jede einzelne Variable definieren und vieles mehr.

Und schließlich wäre eine Warteschlage, so wie bei GA-Optimierung, wo man gleich mehrere HS-RobIterationen mit jeweils zugehörigen Ablaufplan definieren kann und diese dann vollautomatisch ablaufen, super.

Viele Grüße,
Sten

PS:
Anmerkung zur Glättung:
- mir ist das persönlich mit den 3 Glättungsstärken zu untransparent und man hat zu viele Möglichkeiten
- ich würde versuchen es eindeutig zu programmieren, das die originalen Robustheits-Balken unverändert erhalten bleiben und man darauf die Feinjustierung der Werteselektion in die Mitte der "Rob-Berge" vornimmt (d.h. falls der "Ball" noch nicht auf der "Spitze des Berges liegt", dann "dorthin rollen" und fertig)
- so ist es transparenter und man kann es leichter am Ende überprüfen
- vielleicht kann man so eine "direkte" Glättungsvariante noch hinzufügen

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »sten« (12. Juni 2015, 10:40)