Dienstag, 16. April 2024, 22:21 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Börselino

Benutzer

Registrierungsdatum: 29. Januar 2019

Beiträge: 68

1

Donnerstag, 14. März 2019, 22:56

DaysSince

Hallo Leute,

Ich tue mich (noch?) unheimlich schwer mit der Übersetzung meiner bisherigen HS (u.a. in C#) zu Investox und hoffe auf Tips.

Ich möchte bei Einstieg die aktuelle BarNumber in einer übergeordneten Zeiteinheit (z.B. Tag) mitloggen und später in der gleichen übergeordneten Zeiteinheit (z.B. Tag) prüfen, wieviel übergeordnete Einheiten seitdem vergangen sind. In C# ist das ein Klacks für mich. In Investox leider nicht.
Ich habe nach langem Hin und Her Folgendes gemacht: In den Definitionen habe ich nach dem Einstieg hinzugefügt:
global calc BarsLong: BarsSince(Enter_Long, 1);
global calc Tageswechsel: DatePart(d)<>Ref(DatePart(d),-1);
global calc DaysSinceEnter_Long: SumVar(Tageswechsel, BarsLong);
Und nach dem Exit das hier:
global calc BarsExit: BarsSince(Exit_Long, 1);
global calc DaysSinceExit_Long: SumVar(Tageswechsel, BarsExit);

Im Chart kann ich mir die Anzahl der Tage, an denen ich (mutmaßlich) long war so anzeigen lassen:global calc DaysLong: If(BarsLong<BarsExit, DaysSinceEnter_Long,0)

ABER hat das Ganze nicht einen ganz gewaltigen Haken? Ich fürchte, wenn beim Einstieg statt einer Market Order eine Limit Order geschickt und die nicht gefüllt wird, schlägt DaysLong an, obwohl man de facto gar nicht long war. Gibt es keine elegante Möglichkeit, in den Definitionen direkt auf die MarketPosition und die BarNumber (einer übergeordneten Zeiteinheit) zuzugreifen oder den Zeitstempel eines (echten) Einstiegs abzugreifen?

Wiwu Weiblich

Experte

Registrierungsdatum: 4. September 2002

Beiträge: 1 752

Wohnort: Neuenhagen b. Berlin

2

Freitag, 15. März 2019, 12:44

Hallo Börselino,

hat Du Dir schon die Schlüsselwörter #_Depot_Pos# und #_Depot_PosStart# angeschaut?
Viele Grüße von Anke

http://www.ascunia.de

Börselino

Benutzer

Registrierungsdatum: 29. Januar 2019

Beiträge: 68

3

Freitag, 15. März 2019, 21:08

DaysSince

Hallo Wiwu,
Das hatte ich.

Ich habe sie aber nicht weiter verfolgt nach dem nachstehenden Hinweis aus der Hilfe.
Kann man die trotzdem im Backtesting einsetzen?

ACHTUNG: Die Schlüsselwörter geben den
aktuellen Zustand des Depoteintrags wieder und können daher nicht zum Backtesten
eines Handelssystems eingesetzt werden. Wenn #_Depot_Pos# in den Handelsregeln
eingesetzt wird, wird die Berechnung aller gezeigten Trades rückwirkend
verändert, sobald sich die reale Position ändert (nicht etwa nur der aktuelle
Trade). Die Schlüsselwörter lassen sich daher nur für das reale Handeln bzw. für
das simulierte Handeln mit dem Virtuellen Broker sinnvoll einsetzen.

Wiwu Weiblich

Experte

Registrierungsdatum: 4. September 2002

Beiträge: 1 752

Wohnort: Neuenhagen b. Berlin

4

Samstag, 16. März 2019, 14:12

Hallo Börselino,

in Deinem ersten Posting stand noch nichts vom Backtest? ?(

Zitat

Gibt es keine elegante Möglichkeit, in den Definitionen direkt auf die MarketPosition und die BarNumber (einer übergeordneten Zeiteinheit) zuzugreifen oder den Zeitstempel eines (echten) Einstiegs abzugreifen?



Zitat

Kann man die trotzdem im Backtesting einsetzen?


Diese Schlüsselwörter passen für den Realhandel/das Papertrading und für Datenfeed-Simulationen über den virtuellen Broker von Investox- wie es die Hilfe sagt.

Eine backtestbare Alternative könnte möglicherweise das Schlüsselwort #_position# sein.


Market-Order und Limit-Order backtestet man mit verschiedenen Einstellungen für die Enter- bzw. Exit-Basis in den Testbedingungen des Handelssystems- Registerkarte "Position".

Wenn das System "Market" ordert, wird die Market-Order immer gefillt- ggf. eben mit mehr oder weniger Slippage.
Viele Grüße von Anke

http://www.ascunia.de

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

5

Samstag, 16. März 2019, 14:17

Hallo,

als "Backtest-taugliche" Indikatoren stehen "DepotHist( )" bzw. (bei Verwendung des Kontoservers) auch "KontoKennzahlHist( )" zur Verfügung.

Viele Grüße
Andreas Knöpfel