Donnerstag, 18. April 2024, 06:02 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Ben Männlich

Benutzer

Registrierungsdatum: 12. Februar 2006

Beiträge: 30

1

Mittwoch, 13. März 2013, 10:23

Enter definieren bei tägl. Komprimierung?

Hallo,





kann man ein Handelssystem, dass Daten mit täglicher Komprimierung
verwendet, mit einer Enter-Regel testen, die einen definierten Einstieg in den
Trade auf der Basis einer Berechnung vorgibt. Meine bisherigen vergeblichen Versuche
konnten Investox nicht davon abbringen, alternativ auschließlich eins vorhandenen
Preisfelder Open, High, Low und Close zu verwenden.





Besten Dank für Eure Hilfestellung!


Ben
Ben

Ganesha

unregistriert

2

Mittwoch, 13. März 2013, 11:35

In welchem Bereich willst Du das machen? Beim Backtest oder beim Virtuellen Broker?

Backtest: Limitsystem machen.

Virtueller Broker: Die virtuelle Broker kann nur mit den vorhandenen Daten arbeiten. Aber Du kannst den Virtuellen Broker mit z.B. Tickdaten beschicken.

Ben Männlich

Benutzer

Registrierungsdatum: 12. Februar 2006

Beiträge: 30

3

Mittwoch, 13. März 2013, 11:57

Es geht nur um einen Backtest bei dem das Handelssystem zwar
nur die „Eckdaten“ der Komprimierung hat aber Investox evtl. erkennen könnte,
ob der errechnete Wert für das Enter innerhalb der Spanne High/Low liegt also
ein Einstieg (quasi virtuell) möglich wäre und diesen auch in der Berechnung
verwendet.


Die elegantere Lösung des Problems wäre ein Master/Slave HS
mit entsprechenden Komprimierungen. Ich weiß zwar (noch) nicht, wie man auf ein
anderes HS zugreift aber ein Hinweis zu einer derartige Lösung würde mir auch
helfen.


Vielen Dank.


Ben
Ben

Ganesha

unregistriert

4

Mittwoch, 13. März 2013, 12:30

Hallo Ben,

ich verstehe Dein Problem nicht und kann daher nur vermuten.

Also: Investox kennt nur die OCHL-Werte einer Periode. Zwischenwerte werden im Sinne eines sauberen Backtests ignoriert. Die übliche Herangehensweise bei der Entwicklung ist es zum 'Open' einen Trade zu eröffnen und in den Enterbedingungen mit ref(-1) zu arbeiten.

Eine andere Variante sind Limit-Systeme bzw. ein "sich einstoppen lassen". Also einen Trade eröffnen wenn der Kurs über oder unter einen bestimmten Punkt steigt.

Wenn Du Investox V6 hast, ist das ganz einfach: In den Enterbedingungen rechnest Du nur aus wann Du ein Limit/Stop in den Markt legen würdest. Außerdem rechnest Du bei einer globalen Variable aus, wie dieses Limit lauten würden. Sowohl beim Limit als auch bei den Enterbedingungen das ref(-1) nicht vergessen!

Den Variablennamen gibst Du beim 'open' Wert in den Testbedinungen ein (IMO zweiter Kartenreiter) und wählst aus ob Du ein Limit oder ein Stop-System haben willst.

Limit = Trade wird eröffnet, wenn Low <= Limitvariable war
Stop = Trade wird eröffnet, wenn High >= Limitvariable war

Investox rechnet dann alles richtig aus, geht also in diesem Fall davon aus das der Limitkurs tatsächlich handelbar war und berechnet Dir einen entsprechenden Preis.

Falls Du noch V5 hast: Da geht das auch, ist aber trickreicher.

Viele Grüße

Ben Männlich

Benutzer

Registrierungsdatum: 12. Februar 2006

Beiträge: 30

5

Mittwoch, 13. März 2013, 15:56

Hallo Ganesha,


vielen Dank für Deine ausführlich Antwort. Leider habe ich
nur V5. Wer die aktuelle Version hat, ist klar im Vorteil!


Deine Vermutung ist richtig und beschreibt mein Problem.


Ich hatte unter Testbedingungen
einstellen/Position/Enterbasis eine Berechnung eingegeben, die den Entrykurs
exact berechnet. Das HS eröffnet einen Trade auch, wenn dieser Entrykurs
ausserhalb der High/Low-Spanne liegt. Die Kursspanne wird also (noch) nicht berücksichtigt.


Gruß Ben
Ben

Snoopy

unregistriert

6

Mittwoch, 13. März 2013, 17:40

Hallo Ben,

Zitat

Ich hatte unter Testbedingungen
einstellen/Position/Enterbasis eine Berechnung eingegeben, die den Entrykurs
exact berechnet. Das HS eröffnet einen Trade auch, wenn dieser Entrykurs
ausserhalb der High/Low-Spanne liegt. Die Kursspanne wird also (noch) nicht berücksichtigt.


Steht in den Enterregeln unter Definitionen auch die gleichen exakten Enterregeln, zum Berechnen von dem Trigger innerhalb der High/Low Spanne?

Gruß Snoopy

Ganesha

unregistriert

7

Mittwoch, 13. März 2013, 19:35

Beispiel für V5: Wenn der Vortag grün war (close > open), dann will ich einsteigen, wenn der Kurs über das High von Gestern steigt:

Quellcode

1
2
3
4
5
global calc limit: ref(high,-1);
calc enterlong: (
  ref(close > open,-1) //die allgemeine Regel
  and high > limit //die eigentliche Tradeeröffnung.
);


In der Enterbasis muss man zusätzlich "max(open, limit)" eingeben und Delay auf '0' setzen.

Fertig. Investox prüft beim Backtest ob das Open über dem Limit lag und nimmt ansonsten Limit als Kaufpreis für den Backtest an.

Viele Grüße

Ben Männlich

Benutzer

Registrierungsdatum: 12. Februar 2006

Beiträge: 30

8

Mittwoch, 13. März 2013, 22:44

Hallo Snoopy,


die Berechnung habe ich auch in die Enter-Regel eingefügt,
aber das Ergebnis hat sich leider nicht geändert.


Trotzdem besten Dank für Deinen Tipp.


Ben


Hallo Ganesha,


vielen Dank für Deinen Vorschlag. Habe es getestet; es
funktioniert perfekt. Muss es jetzt nur noch den Gegebenheiten meines HS
anpassen. Das sollte aber kein Problem sein.


Nochmals Dank!


Ben
Ben

Ben Männlich

Benutzer

Registrierungsdatum: 12. Februar 2006

Beiträge: 30

9

Mittwoch, 13. März 2013, 22:44

Hallo Snoopy,


die Berechnung habe ich auch in die Enter-Regel eingefügt,
aber das Ergebnis hat sich leider nicht geändert.


Trotzdem besten Dank für Deinen Tipp.


Ben


Hallo Ganesha,


vielen Dank für Deinen Vorschlag. Habe es getestet; es
funktioniert perfekt. Muss es jetzt nur noch den Gegebenheiten meines HS
anpassen. Das sollte aber kein Problem sein.


Nochmals Dank!


Ben
Ben