Dienstag, 16. April 2024, 17:04 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: INVESTOX-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

klexer

unregistriert

1

Mittwoch, 9. März 2005, 17:16

Fehler, da Signal erst zum close

Hallo

ich lasse mit dem virtuellen Broker mein HS laufen. jetzt taucht folgendes Problem auf:

dieser Indikator scheint einen Fehler zu haben, denn das Signal kommt erst zum close:
Indikator:
(If(Ref(high,-1) = HHV(high, 7) and Ref(high,-1) >= high and Ref(high,-1) > Ref(high,-2), 1, 0))

Definitionen:
calc WSL: ValueWhen(Ref(high,-1),histHHV()=1,1,V);

Exit short
global calc RausS: WSL+0.0001;
high >= WSL+0.0001

Exit-Basis: rausS

wo liegt der Fehler ?

Hans-Jürgen Männlich

Administrator

Registrierungsdatum: 10. Juli 2002

Beiträge: 1 712

2

Mittwoch, 9. März 2005, 17:33

Hallo,

nur zur Sicherheit: hast du unvollendete Perioden für das HS eingestellt?
Viele Grüße,
Hans-Jürgen

klexer

unregistriert

3

Mittwoch, 9. März 2005, 18:54

Hallo Hans-Jürgen

ich hab lebende Kerzen, somit hab ich unvollendete Perioden aktiviert.

was mir auffällt:
ich hab die Exitkurse als Dreiecke visualisiert und die erscheinen immer zur Vorperiode, nicht auf den aktuellen Kurs.

ich hab extra einen High-Kurs angegeben, somit dürfte das Signal ja nicht bis close warten.

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

4

Mittwoch, 9. März 2005, 21:07

Hallo igi,

ich habe es nicht getestet aber dieser Formel Part stimmt m.E. nicht ganz:

(If(Ref(high,-1) = HHV(high, 7) and Ref(high,-1) >= high and Ref(high,-1) > Ref(high,-2), 1, 0))

Bitte teste mal mit dieser Formel:

High<=Ref(high,-1) and
Ref(high,-1) > Ref(high,-2) and
Ref(high,-1) = HHV(Ref(High, -2), 5)

Eventuell muss Du die Zahlen neu justieren!
Happy Trading

klexer

unregistriert

5

Freitag, 11. März 2005, 10:48

Hallo Udo

Wenn ich Ref(high,-1) = HHV(Ref(High, -2), 5) eingebe bekomme ich völlig unbrauchbare Werte.

mein Entry ist auch schon falsch
EnterBasis: open

EnterLong
(USL >Ref(USL,-1) or USL <Ref(USL,-1))
and
ATRunisono()=1
and
ABS(open-USL) < ABS(open-WSL)
and
Abtrieb > -0.002

Definitions:
calc WSL: ValueWhen(Ref(high,-1),histHHV()=1,1,V);
calc USL: ValueWhen(Ref(low,-1),histLLV()=1,1,V);

calc Abtrieb: ProjBandBot(Ref(Low,-1), 11, 1) - Ref(ProjBandBot(Ref(low,-1), 11, 1),-4);

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

6

Freitag, 11. März 2005, 11:11

Hallo igi,

was ist das für eine Formel?

Nochmal zu der Eingangsformel:

>>(If(Ref(high,-1) = HHV(high, 7)

Diese Formel wird im Zusammenhang mit ENTER BASIS OPEN eingesetzt.Es wird aber aber das aktuelle High mit den dahinterliegenden Hochs verglichen. Daher kann das Signal im Zusammenhang mit ENTER BASIS OPEN nicht stabil sein! Mit anderen Worten: Es besteht eine hohe Wahrscheinlichkeit, das der gesamte Backtest verfälscht ist!

Wenn Du die Formel so eingesetzt wird,muss das ENTRY zum CLOSE oder OPEN DELAY 1 erfolgen!
Happy Trading

klexer

unregistriert

7

Freitag, 11. März 2005, 11:55

Hallo Udo

ich hab jetzt open eingegeben, aber immer noch der gleiche Fehler:

Indikator: histHHV
If(Ref(high,-1) = HHV(Ref(high,-1), 7) and Ref(high,-1) >= open, 1, 0)
histLLV: If(Ref(Low,-1) = LLV(Ref(Low,-1), 7) and Ref(Low,-1) <= open, 1, 0)

Definitionen:
calc WSL: ValueWhen(Ref(high,-1),histHHV()=1,1,V);
calc USL: ValueWhen(Ref(low,-1),histLLV()=1,1,V);
calc Abtrieb: ProjBandBot(Ref(Low,-1), 11, 1) - Ref(ProjBandBot(Ref(low,-1), 11, 1),-4);

Enter Short
(WSL >Ref(WSL,-1) or WSL <Ref(WSL,-1))
and
ATRunisono()=1
and
ABS(open-USL) > ABS(open-WSL)

Enter Long:
(USL >Ref(USL,-1) or USL <Ref(USL,-1))
and
ATRunisono()=1
and
ABS(open-USL) < ABS(open-WSL)
and
Abtrieb > -0.002

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

8

Freitag, 11. März 2005, 12:37

Hallo igi,

was soll die Formel (roter Part) berechnen da zwei mal REF eingefügt wurde?

calc Abtrieb: ProjBandBot(Ref(Low,-1), 11, 1) - Ref(ProjBandBot(Ref(low,-1), 11, 1),-4);


Ref(ProjBandBot(Low, 11, 1), -5)

Würde den gleichen Wert ergeben!


Wie definiert sich ATRunisono()

Das ganze wird im Zusammenhang mit ENTER BASIS OPEN berechnet?
Happy Trading

klexer

unregistriert

9

Freitag, 11. März 2005, 13:02

Hallo Udo

meine Absicht ist es, Widerstands- und Unterstützungslinien (WSL/USL) einzubauen.

dies siehst Du auf dem Bild, die blauen und gelben Linien, die auch als Basis für Enter und Exit dienen sollen.

die Linien sind mir wichtig, nicht meine Programmierung :D

Wenn mein Ansatz falsch sit, wäre ich für eine Hilfe dankbar.

es soll eine Linie sein, die das LLV bzw. HHV der letzten 7 Perioden ist.

Und mein Einstieg soll auf jeden Fall Open sein.

open muss nur höher sein als Ref(low,-1)

Exit ist 2 ticks unter USL
»klexer« hat folgendes Bild angehängt:
  • test1.jpg

klexer

unregistriert

10

Freitag, 11. März 2005, 13:45

Hallo Udo

dieser Einstieg klappt ja auch

Ref(Low,-1)=LLV(low,7)
and
ATRunisono()=1
and
ABS(open-USL) < ABS(open-WSL)
and
Abtrieb > -0.002

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

11

Freitag, 11. März 2005, 15:27

Hallo igi,

danke für die Erläuterung, jetzt wird es klarer!

>>es soll eine Linie sein, die das LLV bzw. HHV der letzten 7 Perioden ist.
>>Und mein Einstieg soll auf jeden Fall Open sein.

Wenn man das heutige Hoch mit einbezieht kann man nicht zum heutigen Open einsteigen da das heutige High erst nach Abschluss oder zum Peak der aktuellen Periode bekannt ist,falls Open diese Bedingungen nicht schon erfüllt. Bei der Visualisierung im Chart kann sich theoretisch der Level so lange verschieben, bis die aktuelle Periode,in der das Signal auftaucht beendet-oder der Peak erreicht ist. Der frühesten Entrys wären zum Peak oder CLOSE oder OPEN DELAY 1

Wenn man mit dem Peak rechnet, müsste man in der ENTER BASIS mit MIN/MAX {Open oder High} im Backtest arbeiten!


Frage:

Soll die Formel in einem System arbeiten oder lediglich visualisiert werden-das habe ich nicht ganz verstanden? Wenn zweiteres zutrifft müssten wir sehen wie man den Level in der aktuellen Periode auf dem Peak stabilisiert! Ich kann es aber leider erst später testen! Wenn die Formel in ein HS intigriert werden soll,müsste man die Einstiegsbedingungen dementsprechend anpassen! Open funktioniert nur korrekt,wenn alle Berechnungen in der letzten Periode abgeschlossen wurde und ein Signal generiert wurde!
Happy Trading

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

12

Samstag, 12. März 2005, 09:41

Hallo igi,


>>dieser Einstieg klappt ja auch
>>Ref(Low,-1)=LLV(low,7)

Bei dieser Formel sollte man sich aber im Klaren sein, das die aktuelle Periode mit in die Berechnung einbezogen wird und theoretisch zum Close der Periode abgeschlossen ist! Man kann nicht ausnahsmslos zum Open einsteigen.Der frühstmögliche Einstieg wäre max. zum Peak.Es kann durchaus sein, das nicht viele Trades generiert werden bei denen der Fehler auftritt,aber er kann auftreten weil das ENTRY vor einer abgeschlossenen Periode erfolgt! Im Backtest fällt das meist zunächst überhaupt nicht auf sondern erst dann,wenn sich im realen Betrieb Signale verändern oder wenn da ein ENTRY steht, wo Investox kein Entry in der Historie verzeichnet hat!



>>es soll eine Linie sein, die das LLV bzw. HHV der letzten 7 Perioden ist.

Hier kann man wieder variieren: Soll das LLV bei jedem tieferen Tief ein Signal liefern oder nur beim ersten! Bitte lege dazu LLV/HHV in den Chart und vergleiche!

Beispiel:

Angenommen ein LLV wird nach 7 Perioden,wie vorgesehen, generiert. In der achten Periode könnte LLV noch tiefer sein-in der neunten noch tiefer usw. Investox regisriert jedes tiefere Tief und würde ggfls. ein Signal liefern wenn Open> Ref(Low,-1). Somit könnte man in einem Downtrend recht kräftig draufzahlen wenn man angenommen mit dieser Variante eine konträr Startegie fährt!

Bei der zweiten Strategie verliert man nur ein mal-hat aber auch keine "ENTRY-Ladder",sondern nur ein einziges Signal pro Treffer!

Beispiel:

Um 10 Uhr wird ein 7 Perioden Tief generiert. Es ist das erste Signal nach einem Up_Trend. Um 10:05 folgt ein noch tieferes Tief. Investox generiert hier aber kein zweites Signal mehr. Wenn sich ein Downtrend entwickelt in dem man kräftig abgeben könnte,verliert man max. beim ersten Signal!


Könntest Du aus den genannten Gründen das ganze bitte noch etwas konkretisieren?
Happy Trading

klexer

unregistriert

13

Samstag, 12. März 2005, 10:15

Hallo Udo

ich hab jetzt folgendes gemacht:
calc rot: if(low= LLV(low,7),1,0)
enter long: Ref(rot,-1)=1

natürlich werden eine Reihe von Signalen generiert, wenn der Abwärtstrend mal läuft..
Aber nicht jedesmal gibt der ATRunisono ein Signal und

calc Abtrieb: ProjBandBot(Ref(Low,-1), 11, 1) - Ref(ProjBandBot(Ref(low,-1), 11, 1),-4);

unter -20 Ticks ist als Nichtauslöser auch noch da.

Ref(ProjBandBot(Low, 11, 1), -5)

Würde übrigens NICHT den gleichen Wert ergeben!, da Wert1-Wert 4 eine Differenz ergibt, aber Wert 5 eine absolute Größe. Und ein Wert unter -0.002 sperrt den Entry.

Sicherlich ist das größte Problem immer noch, daß in einem Abwärtstrend zu viele Signale hintereinander ausgelöst werden, die nicht profitabel sind.
Nichtsdestotrotz ist aber das Gesamt ergebnis positiv. profitable Trades liegen bei ca. 33 %.
Ein weiteres Aussieben würde das alles natürlich weiter nach vorne bringen, daran arbeite ich nach wie vor.

Ein Ansatzpunkt wird sein, in einem laufenden Abwärtstrend die Gewinnstopps wesentlich schärfer zu fahren. Ich hab derzeit einen Gewinnstopp von 20 Ticks.

"Investox generiert hier aber kein zweites Signal mehr. Wenn sich ein Downtrend entwickelt in dem man kräftig abgeben könnte,verliert man max. beim ersten Signal!"
Wie stellt man das ein ?

ich bezweifel, daß das System dann noch profitabel fährt, würd es aber mal ausprobieren.

schöne Grüße igi

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

14

Samstag, 12. März 2005, 13:06

Hallo igi,


>>ich hab jetzt folgendes gemacht:
>>calc rot: if(low= LLV(low,7),1,0)
>>enter long: Ref(rot,-1)=1

Wie ist die ENTER BASIS definiert? Die Formel kann in meheren Varianten geschrieben werden aber es ist wichtig, das sie zum Zeitpunkt des Signals nichts mehr revidiert werden kann,denn sonst ist der Backtest mehr oder weniger falsch! Wie es in der Praxis oder im ORM Backtest aussieht ist wieder was anderes aber grundsätztlich geht von von "falschen" Ergebnissen aus! Ich wollte das nur noch mal gesagt haben da ich selbst auch schon ein paar mal auf den Fallstrick reingefallen bin!

Du könntest ,wenn das System nicht über ORM geroutet werden soll REF auch sparen und stattdessen bei ENTER BASIS OPEN DELAY 1 einsetzen!Soll geroutet werden, müssen alle Formeln mit REF definieren wenn das Signal zum Open ausgelöst werden soll und die aktuelle Periode noch in die Berechnung,so wie es bei Deiner Formel der Fall ist,einbezogen wird!



>>natürlich werden eine Reihe von Signalen generiert, wenn der >>Abwärtstrend mal läuft..
>>Aber nicht jedesmal gibt der ATRunisono ein Signal und

Ich bin von LLV/HHV ausgegangen! Die verwendeten Filter,Stopps und sonstiges Feintuning wurde nicht berücksichtigt!


>>Ref(ProjBandBot(Low, 11, 1), -5)
>>Würde übrigens NICHT den gleichen Wert ergeben!, da Wert1-Wert 4 >>eine Differenz ergibt, aber Wert 5 eine absolute Größe. Und ein Wert >>unter -0.002 sperrt den Entry.

Ich habe beide Formel im Chart übereinandergelegt. Sie verlaufen syncron!
Welche Differenz soll die Formel berechnen, es wurde nichts subtrahiert?

Ref(ProjBandBot(Ref(low,-1), 11, 1),-4);

Die Formel beinhaltet zwei mal REF,bzw. zwei zurückgesetzte Zeitfaktoren!


>>Sicherlich ist das größte Problem immer noch, daß in einem Abwärtstrend >>zu viele Signale hintereinander ausgelöst werden, die nicht profitabel >>sind.

Man könnte versuchen,wenn das EXIT über Stopps generiert wird eine Zwangspause einzubauen so das man nicht jedes Fehlsignal mitmacht. Allerdings sollte man Zwangspausen im RB Test justieren denn dann kann man am besten sehen ob es wirklich was bringt oder das System eher verschlechtert oder gar destabilisiert!


>>Nichtsdestotrotz ist aber das Gesamt ergebnis positiv. profitable Trades >>liegen bei ca. 33 %.

Das ist m.M. durchaus vertretbar wenn das RM/MM dementsprechend ausgelegt ist! Bebachte bei den Kennzahlen auch mal die "Serien der Verluste"! Hier wäre die MCS als zusätzliche Risk-Masnahme durchaus angebracht denn dann könnte man testen, wie sich die UP/Down Serien in simulierten KKs auswirken und was im Extremfall zu erwarten ist!


>>Ein Ansatzpunkt wird sein, in einem laufenden Abwärtstrend die >>Gewinnstopps wesentlich schärfer zu fahren. Ich hab derzeit einen >>Gewinnstopp von 20 Ticks.

Hmm..das muss man explizit testen! Auch hier würde sich der RB Test hervorragend eignen. Man könnte auch mit GAs arbeiten wenn sehr enge Testschwellen gelegt werden so das kein Curve Fitting entsteht! Allerdings hat man ohne RB Test den Nachteil, das man das System nicht auf Stabilität anhand der Kennzahlen "stylen" kann!

>>Wie stellt man das ein ?
>>ich bezweifel, daß das System dann noch profitabel fährt, würd es aber >>mal ausprobieren.

Ich kopiere später noch zwei Grafiken inc. Formeln!
Happy Trading

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

15

Samstag, 12. März 2005, 15:53

Hier habe ich die Strategie mit einer "ENTER LADDER" dargesellt! Für HHV/LLV wurden 100 Perioden angesetzt! Man würde hier mit justieren zahlen einen kleinen Gewinn erreichen aber das Risiko ist viel hoch! Mit der MCS wurde eine sehr breite Wahrscheinlichkeitsspanne für den DD ermittelt und das ist nicht optimal!


Teste bitte mal diese Variante:

Enter Long:
ROC(ValueWhen(Ref(Low, -1), ROC(LLV(Ref(Low, -1), 100), 1, $)<0
, 1, V), 1, $)<>0


Exit Long:
low<Exit

Übergreifende Definitionen:
global calc exit:ValueWhen(Ref(Low, -1), ROC(LLV(Ref(Low, -1), 100), 1, $)<0, 1, V);




Positionen: Long
Enter-Basis: Open
Delay: 0
Exit-Basis: Exit{+Slippage! oder bei EXIT LONG Low<= einsetzen}
Delay: 0
»Udo« hat folgendes Bild angehängt:
  • Unbenannt.png
Happy Trading

klexer

unregistriert

16

Samstag, 12. März 2005, 22:51

Hallo Udo

ich hab gerade den Ansatz verändert, nämlich erst zum 2. ATRUnisono einzusteigen und der LLV bzw HHV müssen kleiner bzw. größer als der vorhergehende sein.

ich werd das Bild hier morgen mailen,

die Anzahl der profitablen Trades ist damit auf ca. 60 % angestiegen. und das im Euro, nicht im Pfund, denn das Pfund hat mir viel zu große Umsatzlücken, das wird live wohl kaum funktionieren.

schöne Grüße und bis morgen, werd jetzt noch die halbe Nacht programmieren ;)

igi

klexer

unregistriert

17

Sonntag, 13. März 2005, 11:31

Hallo Udo

meine profitablen Trades liegen nunmehr bei 63 % :)
aber ich hab ein Problem mit den Stopps: ?(
ich hab eine blaue Linie, die schon bei open zur Verfügung steht.

Alle Versuche, die blaue Linie als Stop zu aktivieren, schlugen fehl.

mein Stop ist:
sobald low <= blauL-0.0002 ist, soll sofort raus und nicht erst zum close, was mir meine gesamte Performance versaut.

Im ORM hab ich auch Stopps eingestellt, die 6 ticks unter Entry sind.
Wenn ich in Anwenderstop eingebe:
tradeentryprice - 0.0006, dann müsste doch sofort ausgelöst werden, aber der Trade geht gemütlich weiter, bis der Exit erreicht wird.
ABER EXIT IST DOCH KEIN STOP !! :baby:
»klexer« hat folgendes Bild angehängt:
  • Sofortstopp II.jpg

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

18

Sonntag, 13. März 2005, 11:56

Hallo igi,

63% ist schoneine schöne Zahl! :) Aber beachte, das die Kennzahl sehr vom Gesamtzeitraum abhängt-sie ist sehr variabel! Beachte in dem Zusammenhang u.a. den durchschnittlichen Return,durchschn. Gewinn/Verlust und den Profitfaktor!

Hat sich das andere Problem gelöst? Hier noch eine Formel wie man nur eine Trade bei HHV/LLV bekommt:


Calc OverCross:Cross(ROC(LLV(Ref(Low, -1), 7), 1, $), 0, 1)=-1;

ROC(ValueWhen(Ref(Low, -1), OverCross, 1, V), 1, $)<>0 and open>=Ref(Low, -1)

Auch diese Formel kann mit OPEN DELAY 0 eingesetzt werden!


Stopps:

Du arbeitest mit V3 oder? Dein Stopp soll auch in der ersten Periode (ENTRY Periode) ausgelöst werden? Wenn ja,dann wird das nicht funktionieren denn in V3 kann man keine Formeln die als Stopps verwendet werden in der ENTRY Periode aktivieren sondern diese werden erst in der Folgeperiode aktiv. Der sofortige Ausstieg ist in der Version nur mit Zahlenwerten (Sofort-Stopps) möglich!

Ich kann Dir leider nicht mehr ganz genau sagen,ob man bei AW Stopp in V3 eine abweichende Ausstiegsbasis angeben kann,-ch denke aber eher nicht! Demzufolge wird sich der Stopp das zur Berechnung des Preises heranziehen, was unter EXIT BASIS definiert wurde! Auch hier der Hinweis auf V4: Es ist eine abweichende Ausstiegsbasis einstellbar,zudem kann der Stopp visualisiert werden.
Happy Trading

klexer

unregistriert

19

Sonntag, 13. März 2005, 12:12

Hallo Udo

meine profitablen Trades sind zw. 58 und 63 % innerhalb von 3 Quartalen
der Profit aber zwischen -900 und plus 1200 Euro, eben wegen diesen 4-5 fatalen Minustrades, die bei Sofortstopps rausgehauen werden. Sofortstopps sind beim Euro mindestens 10 ticks, da nicht kleiner eingestellt werden kann.

Aber testen kann ich das System nicht, wenn keine Sofortstopps angegeben werden können, die eine Stoplinie berücksichtigen.

Somit kann ich wohl erst weiter testen, wenn ich Version 4 erworben hab.

schöne Grüße igi

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »klexer« (13. März 2005, 12:15)


klexer

unregistriert

20

Montag, 14. März 2005, 15:54

Hallo Udo

ich hab ROC mal einprogrammiert.
in 2 (positiven) Quartalen hat sich bei long nichts verändert, aber in einem (negativen hat es sich sehr zum positiven gewendet.

bei Short war allerdings das Ergebnis verheerend, da hab ich wohl was falsches eingegeben. ?(

schöne Grüße igi