* Formel für TD Sequential und TD Combo von Tom Demark
Hallo Trader,
ich suche für Metastock die Formel für den TD Sequential und TD Combo von Tom Demark, wenn es geht auch weitere seiner Werke.
Kennt jemand auch deutsche Seiten zu dem Thema ?
Danke
Geschrieben von SASH
am
Hi Sash.
Für Metastock habe ich den Code von der Guppy Traders Seite. Ich werde ihn dir hier mal aufführen:
Buy Indicators:
TD - SetUp-Buy
TD1:=If(C=Ref(C,-13),1,0);
TD4:=If(TD2=1 AND TD3=1,1,0);
TD5:=If(H>=Ref(LLV(L,5),-3),1,0);
D8:=If(Ref(TD4,1)=1 AND TD5=1,1,0);
D9:=If(TD4=1 AND TD5=1 AND Ref(D8,-1)>1,1,0);
D10:=If(Ref(TD4,-1)=1 AND TD5=1 AND Ref(D8,-2)>1 AND Ref(D9,-1)>1,1,0);
D11:=If(Ref(TD4,-2)=1 AND TD5=1 AND Ref(D8,-3)>1 AND Ref(D9,-2)>1 AND Ref(D10,-1)>1,1,0); D12:=If(Ref(TD4,-3)=1 AND TD5=1 AND Ref(D8,-4)>1 AND
Ref(D9,-3)>1 AND Ref(D10,-2)>1 AND Ref(D11,-1)>1,1,0);
D13:=If(Ref(TD4,-4)=1 AND TD5=1 AND Ref(D8,-5)>1 AND Ref(D9,-4)>1 AND Ref(D10,-3)>1 AND Ref(D11,-2)>1 AND Ref(D12,-1)>1,1,0);
D14:=If(Ref(TD4,-5)=1 AND TD5=1 AND Ref(D8,-6)>1 AND Ref(D9,-5)>1 AND Ref(D10,-4)>1 AND Ref(D11,-3)>1 AND Ref(D12,-2)>1 AND Ref(D13,-1)>1,1,0);
D15:=If(Ref(TD4,-6)=1 AND TD5=1 AND Ref(D8,-7)>1 AND Ref(D9,-6)>1 AND Ref(D10,-5)>1 AND Ref(D11,-4)>1 AND Ref(D12,-3)>1 AND Ref(D13,-2)>1 AND Ref(D14,-1)>1,1,0);
D16:=If(Ref(TD4,-7)=1 AND TD5=1 AND Ref(D8,-8)>1 AND Ref(D9,-7)>1 AND Ref(D10,-6)>1 AND Ref(D11,-5)>1 AND Ref(D12,-4)>1 AND Ref(D13,-3)>1 AND Ref(D14,-2)>1 AND Ref(D15,-1)>1,1,0);
D17:=If(Ref(TD4,-8)=1 AND TD5=1 AND Ref(D8,-9)>1 AND Ref(D9,-8)>1 AND Ref(D10,-7)>1 AND Ref(D11,-6)>1 AND Ref(D12,-5)>1 AND Ref(D13,-4)>1 AND Ref(D14,-3)>1 AND Ref(D15,-2)>1 AND Ref(D16,-1)>1,1,0);
SetUp:=D8+D9+D10+D11+D12+D13+D14+D15+D16+D17;
SetUp
TD Count Down Buy A
Cum(If(C=14 AND C>Ref(C,-4),1,0)
TD Count Down Buy C
If(Fml("TD Count Down Buy A")>=14 AND C>Ref(H,-2),1,0)
Buy Experts:
Type / Change in Highlights:
Buy Bullish SetUp (Color: Cyan)
Fml( "TD - SetUp-Buy" ) =1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,1)=1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,2)=1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,3)=1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,5)=1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,6)=1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,7)=1 OR
Ref( Fml( "TD - SetUp-Buy" ) ,8)=1
Buy Count Down (Color: Blue)
( Fml( "TD Count Down Buy A" ) =13
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 13) OR
( Fml( "TD Count Down Buy A" ) =12
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 12) OR
( Fml( "TD Count Down Buy A" ) =11
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 11) OR
( Fml( "TD Count Down Buy A" ) =10
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 10) OR
( Fml( "TD Count Down Buy A" ) =9
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 9) OR
( Fml( "TD Count Down Buy A" ) =8
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 8) OR
( Fml( "TD Count Down Buy A" ) =7
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 7) OR
( Fml( "TD Count Down Buy A" ) =6
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )>6) OR
( Fml( "TD Count Down Buy A" ) =5
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 5) OR
( Fml( "TD Count Down Buy A" ) =4
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 4) OR
( Fml( "TD Count Down Buy A" ) =3
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )>3) OR
( Fml( "TD Count Down Buy A" ) =2
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )>2)
Buy A (Color: Green)
( Fml( "TD Count Down Buy A" ) =14 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 14)
Buy B (Color: Green)
A:=If( Fml( "TD Count Down Buy A" ) =14
AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 14,1,0);
B:=If( Ref(Fml( "TD Count Down Buy B" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A ) 14,1,0);
B:=If( Ref(Fml( "TD Count Down Buy C" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A )2
CountDown2 (Label: 2 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =3 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 3
CountDown3 (Label: 3 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =4 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 4
CountDown4 (Label: 4 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =5 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 5
CountDown5 (Label: 5 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =6 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 6
CountDown6 (Label: 6 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =7 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 7
CountDown7 (Label: 7 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =8 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 8
CountDown8 (Label: 8 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =9 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 9
CountDown9 (Label: 9 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =10 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 10
CountDown10 (Label: 10 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =11 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 11
CountDown11 (Label: 11 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =12 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 12
CountDown12 (Label: 12 / Font: 8 / Color: Brown / Position: Below / Graphics: None )
Fml( "TD Count Down Buy A" ) =13 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 13
CountDown13 (Label: Buy A / Font: 9 / Color: Green / Position: Below / Graphics: Buy Arrow )
Fml( "TD Count Down Buy A" ) =14 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 14
Buy B (Label: Buy B / Font: 9 / Color: Green / Position: Below / Graphics: Buy Arrow )
A:=If( Fml( "TD Count Down Buy A" ) =14 AND Ref( Fml( "TD Count Down Buy A" ) ,-1 )> 14,1,0);
B:=If( Ref(Fml( "TD Count Down Buy B" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A ) 14,1,0);
B:=If( Ref(Fml( "TD Count Down Buy C" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A )Ref(C,-4),1,0);
TD2:=If(TD1=1 AND Ref(TD1,-1)=1 AND Ref(TD1,-2)=1 AND Ref(TD1,-3)=1 AND Ref(TD1,-4)=1 AND Ref(TD1,-5)=1 AND Ref(TD1,-6)=1 AND Ref(TD1,-7)=1 AND Ref(TD1,-8)=1, 1,0);
TD3:=If(Ref(C,-9)=Ref(C,-13),1,0);
TD4:=If(TD2=1 AND TD3=1,1,0);
TD5:=If(L>=Ref(HHV(H,5),-3),1,0);
D8:=If(Ref(TD4,1)=1 AND TD5=1,1,0);
D9:=If(TD4=1 AND TD5=1 AND Ref(D8,-1)>1,1,0);
D10:=If(Ref(TD4,-1)=1 AND TD5=1 AND Ref(D8,-2)>1 AND Ref(D9,-1)>1,1,0);
D11:=If(Ref(TD4,-2)=1 AND TD5=1 AND Ref(D8,-3)>1 AND Ref(D9,-2)>1 AND Ref(D10,-1)>1,1,0);
D12:=If(Ref(TD4,-3)=1 AND TD5=1 AND Ref(D8,-4)>1 AND Ref(D9,-3)>1 AND Ref(D10,-2)>1 AND Ref(D11,-1)>1,1,0);
D13:=If(Ref(TD4,-4)=1 AND TD5=1 AND Ref(D8,-5)>1 AND Ref(D9,-4)>1 AND Ref(D10,-3)>1 AND Ref(D11,-2)>1 AND Ref(D12,-1)>1,1,0);
D14:=If(Ref(TD4,-5)=1 AND TD5=1 AND Ref(D8,-6)>1 AND Ref(D9,-5)>1 AND Ref(D10,-4)>1 AND Ref(D11,-3)>1 AND Ref(D12,-2)>1 AND Ref(D13,-1)>1,1,0);
D15:=If(Ref(TD4,-6)=1 AND TD5=1 AND Ref(D8,-7)>1 AND Ref(D9,-6)>1 AND Ref(D10,-5)>1 AND Ref(D11,-4)>1 AND Ref(D12,-3)>1 AND Ref(D13,-2)>1 AND Ref(D14,-1)>1,1,0);
D16:=If(Ref(TD4,-7)=1 AND TD5=1 AND Ref(D8,-8)>1 AND Ref(D9,-7)>1 AND Ref(D10,-6)>1 AND Ref(D11,-5)>1 AND Ref(D12,-4)>1 AND Ref(D13,-3)>1 AND Ref(D14,-2)>1 AND Ref(D15,-1)>1,1,0);
D17:=If(Ref(TD4,-8)=1 AND TD5=1 AND Ref(D8,-9)>1 AND Ref(D9,-8)>1 AND Ref(D10,-7)>1 AND Ref(D11,-6)>1 AND Ref(D12,-5)>1 AND Ref(D13,-4)>1 AND Ref(D14,-3)>1 AND Ref(D15,-2)>1 AND Ref(D16,-1)>1,1,0);
SetUp:=D8+D9+D10+D11+D12+D13+D14+D15+D16+D17;
SetUp
TD Count Down Sell A
Cum(If(C>Ref(C,-2),1,0))-ValueWhen(1,Ref( Fml( "TD - SetUp-Sell" ), 1)=1, Cum(If(C>Ref(C,-2),1,0)))
TD Count Down Sell B
If(Fml( "TD Count Down Sell A" )>=14 AND C=14 AND C 13) OR
( Fml( "TD Count Down Sell A" ) =12
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 12) OR
( Fml( "TD Count Down Sell A" ) =11
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 11) OR
( Fml( "TD Count Down Sell A" ) =10
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 10) OR
( Fml( "TD Count Down Sell A" ) =9
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 9) OR
( Fml( "TD Count Down Sell A" ) =8
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 8) OR
( Fml( "TD Count Down Sell A" ) =7
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 7) OR
( Fml( "TD Count Down Sell A" ) =6
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 6) OR
( Fml( "TD Count Down Sell A" ) =5
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 5) OR
( Fml( "TD Count Down Sell A" ) =4
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 4) OR
( Fml( "TD Count Down Sell A" ) =3
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 3) OR
( Fml( "TD Count Down Sell A" ) =2
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 2)
Sell A (Color: Green)
( Fml( "TD Count Down Sell A" ) =14
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 14)
Sell B (Color: Green)
A:=If( Fml( "TD Count Down Sell A" ) =14
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 14,1,0);
B:=If( Ref(Fml( "TD Count Down Sell B" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A ) 14,1,0);
B:=If( Ref(Fml( "TD Count Down Sell C" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A )2
CountDown2 (Label: 2 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =3
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>3
CountDown3 (Label: 3 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =4
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>4
CountDown4 (Label: 4 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =5
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>5
CountDown5 (Label: 5 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =6
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>6
CountDown6 (Label: 6 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =7
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>7
CountDown7 (Label: 7 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =8
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>8
CountDown8 (Label: 8 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =9
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>9
CountDown9 (Label: 9 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =10
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>10
CountDown10 (Label: 10 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =11
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>11
CountDown11 (Label: 11/ Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =12
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>12
CountDown12 (Label: 12 / Font: 8 / Color: Brown / Position: Above / Graphics: None )
Fml( "TD Count Down Sell A" ) =13
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>13
CountDown13 (Label: Sell A / Font: 9 / Color: Red / Position: Above / Graphics: Sell Arrow )
Fml( "TD Count Down Sell A" ) =14
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )>14
Sell B (Label: Sell B / Font: 9 / Color: Red / Position: Above / Graphics: Sell Arrow )
A:=If( Fml( "TD Count Down Sell A" ) =14
AND Ref( Fml( "TD Count Down Sell A" ) ,-1 )> 14,1,0);
B:=If( Ref(Fml( "TD Count Down Sell B" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A ) 14,1,0);
B:=If( Ref(Fml( "TD Count Down Sell C" ),-1) =1,1,0);
HighestSinceBars(1,A =1,A )
Danke für die schnelle Antwort.
Wo finde ich die Guppi Seite ?
Gruß
Die Adresse weiss ich auch nicht auswendig. Such mal im Metastock Forum nach dem Thema "Die wichtigsten Internetadressen" oder so ähnlich.
Oder eine andere Person meldet sich zu diesem Thema noch einmal, da diese Seite bei Metastock Usern ziemlich beliebt ist.
Gruss
Harun
Hallo,
auf dieser Seite ist sowohl ein Chart als auch der entsprechende Link zur Guppy Seite:
http://www.terminmarktwelt.de/cgi-bin/metastock.pl?ST=3133&CP=2&F=JKH
Hi Trader!
Wer kennt den Quellcode für die TS 2000i auch noch, der fehlt mir auf meiner Homepage noch für die Analysen !
mfg. chrisi
Hi chrisi,
auf der folgenden Seite findest Du eine sehr gut sortierte Sammlung an Tradestation Formeln (leider nicht die beiden gesuchten), aber viel Stoff zum kopieren.
http://klub.chip.pl/kres/index.html
Hallo,
musst mal sehen ob es das richtige für Dich ist.
mfg spada
{INDICATOR: TD Sequen BuySetup
Chapter 7, Figures 7.4 - 7.15.
"Sequential" is a Trademark held by Thomas R. DeMark.
"Price Countdown" is a Trademark held by Thomas R. DeMark.
"Price Intersector" is a Trademark held by Thomas R. DeMark.
Idea taken from "The New Science of Technical Analysis" by Thomas R. DeMark,
published by John Wiley & Sons, New York, 1994.
Programming code is written by
Richard Saidenberg
35 Tamarack Way
Pleasantville, NY 10570 -- phone 914-769-5164. }
INPUT:COUNT(9),BARSBACK(4);
VAR:COUNTER(0),Z(0);
IF C=C[BARSBACK] THEN COUNTER=COUNTER+1 ELSE COUNTER=0;
IF COUNTER=COUNT THEN BEGIN
Plot1((H+L)/2,"SeqBuy");
Plot2(L,"Setup");
FOR Z=0 TO COUNT-1 BEGIN
Plot3[Z](L[Z],"Count");
END;
END;
{INDICATOR: TD Sequen Buy
Chapter 7, Figures 7.16 - 7.31.
"Sequential" is a Trademark held by Thomas R. DeMark.
"Price Countdown" is a Trademark held by Thomas R. DeMark.
"Price Intersector" is a Trademark held by Thomas R. DeMark.
Idea taken from "The New Science of Technical Analysis" by Thomas R. DeMark,
published by John Wiley & Sons, New York, 1994.
Programming code is written by
Richard Saidenberg
35 Tamarack Way
Pleasantville, NY 10570 -- phone 914-769-5164. }
INPUT:COUNT(9),BARSBACK(4),COUNTDN(13),BARSCDN(2);
VAR:COUNTER(0),Z(0),HH(0),
BUYSETUP(FALSE),INTERSECTION(FALSE),COUNTDOWN(0),
COUNTERS(0);
IF INTERSECTION=FALSE THEN COUNTDOWN=0;
IF C=C[BARSBACK] THEN COUNTER=COUNTER+1 ELSE COUNTER=0;
IF C>=C[BARSBACK] THEN COUNTERS=COUNTERS+1 ELSE COUNTERS=0;
IF COUNTERS=COUNT THEN BUYSETUP=FALSE;{Cancel Setup on SellSetup}
IF BUYSETUP AND COUNTER=COUNT THEN BUYSETUP=FALSE;{Recycle}
IF BUYSETUP=FALSE THEN BEGIN
COUNTDOWN=0;
INTERSECTION=FALSE;
HH=0;
IF COUNTER=COUNT THEN BEGIN
BUYSETUP=TRUE;
FOR Z=0 TO COUNT-1 BEGIN
IF H[Z]>HH THEN HH=H[Z];
END;
FOR Z=3 TO COUNT-1 BEGIN
IF H>=L[Z] THEN INTERSECTION=TRUE;
IF Z>3 AND H[1]>=L[Z] THEN INTERSECTION=TRUE;
IF INTERSECTION THEN Z=COUNT-1;
END;
END;
END;
IF BUYSETUP THEN BEGIN
IF INTERSECTION=FALSE THEN BEGIN
FOR Z=3 TO COUNT-1 BEGIN
IF H>=L[Z] THEN INTERSECTION=TRUE;
IF INTERSECTION THEN Z=COUNT-1;
END;
END;
IF C>HH THEN BEGIN
BUYSETUP=FALSE;
INTERSECTION=FALSE;
COUNTER=0;
END;
END;
IF INTERSECTION THEN BEGIN
IF C
@spada
Hi Trader !
Danke mal für den Entwurf. Scheint recht umfangreich zu sein. Ich habe ihn gleich in die TS2000i unter powereditor getestet unter Verifizierung, da hat er mir leider ein paar Fehler aufgezeigt.
Schau dir das Screen an, vielleicht sind nur ein paar Änderungen vorzunehmen, damit alles ok wäre.
Wer sich bei easy auskennt, könnte uns auch helfen.
ciao trader
Hallo,
bei mir klappt alles ohne Probleme.
@ crisi
Wir können Sie nicht erreichen. Bitte senden Sie uns Ihre e-mail-Adresse oder rufen Sie uns an.
Hi Daytrader!
Scheint ein recht komplizierter Indikator zu sein und da sagt noch einer, das die einfachen Dinge an der Börse zum Erfolg führen. :-)))
@ spada
Ich würde mich gerne über deine gemachten Erfahrungen mit dir über Mail unterhalten.
ciao Daytrader und spada
Hi.
Wer kann mir, als Metastock-Rookie, mal erklären, wie ich den TD Sequential von guppytraders.com in MS eingeben muss, dass es zuckt ?
Kater
Hallo,
nichts einfacher als das: Du musst nur für jede Formel einen eigenen Indikator anlegen:
TD - SetUp-Buy
TD Count Down Buy A
TD Count Down Buy B
TD Count Down Buy C
...
...
...
Und dann läuft es wie von selbst. Wichtig ist, das Du entweder die gleichen Formel Namen verwendest wie auf der Guppy Seite oder aber die Formeln alle an Deine eigenen Namen anpasst (wenig zu empfehlen).
Hallo.
Alles als Indikatoren anlegen oder als Experts?
Hat hier jemand nach beiden Patterns gehandelt und wie sind Eure Erfahrungen ?
Ich versuche gerade den TD Seq mit Tradestation anzuwenden und damit den S&P mit 30min-Barintervall zu handeln.
Hallo Kater,
ich habe dir eine Mail geschickt. Ich hoffe sie ist angekommen.
Gruss
Harun
P.S.: Habe den Expert mal auf den Dax laufen lassen und das System hat den Anstieg früh genug erkannt. Nur habe ich den Expert zu spät laufen lassen.
Ok, ich habe mir das auch mal eingerichtet. Sieht sehr interessant aus. Nur kann mal bitte jemand das System erklären?
Wird da in 3 Schritten gekauft ? Buy A-B-C ?
Gruß Catano
Hier mal die Grafik zum System:
Hallo Catano,
in irgendeiner Ausgabe des Aktive Traders, steht das System glaube ich beschrieben. Ich werde die Woche mal nachschauen ob ich es finde und dann versuchen deine Frage zu beantworten, wenn es nicht schon jemand anders getan hat.
Gruss
Harun
Hallo harunm,
das wäre klasse, danke.
Gruß Catano
Hallo Catano und andere,
leider habe ich bisher nicht die Ausgabe gefunden, bin mir aber sehr sicher, das es ein Interview mit Tom deMark gab und er dazu ein paar Erklärungen abgegeben hat.
Vielleicht kennt sich ja jemand anders damit aus oder hat auch schon Erfahrungen mit dem System machen können. Es wäre toll wenn er etwas dazu sagen könnte.
Grüsse
Harun
Zum TS-Code vom 18.08.2002 23:01:35
IF INTERSECTION THEN BEGIN
IF C COUNTDOWN=COUNTDOWN+1; <---------------------------------
PLOT3(L,"CntDown");
END;
IF INTERSECTION[1]=FALSE THEN PLOT4((H+L)/2,"Intersect");
END;
Ich kenne mich überhaupt nicht in der TS-Programmierung aus, mir fällt aber auf, dass
1. then fehlt
2. C doch immer größer Null ist.
Läuft dieser Code wirklich sinnvoll?
Wenn die Anordnungsphase beendet ist (TD Sequen BuySetup) kommt die Count-Down-Phase.
Nach dem 9. Tag werden die Schlußkurse mit den Hochs von vor 2 Tagen verglichen.
Nach weiteren 13 Tagen kann man mit geringem Risiko kaufen / verkaufen.
Habe ich das richtig verstanden?
Könnte dann die Codesequenz lauten:
IF INTERSECTION THEN BEGIN
IF C<h[2] THEN Begin
COUNTDOWN=COUNTDOWN+1;
PLOT3(L,"CntDown");
END;
IF INTERSECTION[1]=FALSE THEN PLOT4((H+L)/2,"Intersect");
END;
Hallo Catano,
den Artikel habe ich im Januarheft 2002 'Der Aktive Trader' Seite 100 ff. gefunden.
Gruß
YingYang
Ich habe den Artikel nochmals gelesen. Die Ausführungen dort beziehen sich auf hauptsächlich auf ein Verkaufssignal. Bei einem Kaufsignal müßte man wohl analog argumentieren.
Wenn die Anordnungsphase beendet ist (TD Sequen BuySetup) kommt die Count-Down-Phase.
Nach dem 9. Tag werden die Schlußkurse mit den Tiefs (!) von vor 2 Tagen verglichen. (Beim Verkaufsignal wird mit den Hochs von vor 2 Tagen verglichen)
Nach weiteren 13 Tagen kann man mit geringem Risiko kaufen.
Habe ich das richtig verstanden?
Dann könnte die Codesequenz lauten:
IF INTERSECTION THEN BEGIN
IF C<L[2] THEN Begin
COUNTDOWN=COUNTDOWN+1;
PLOT3(L,"CntDown");
END;
IF INTERSECTION[1]=FALSE THEN PLOT4((H+L)/2,"Intersect");
END;
Hi,
die Phase für die Abzählung des TDCountdowns sollte wohl so lauten:
IF INTERSECTION THEN BEGIN
IF Close < Low [BARSCDN] THEN BEGIN
COUNTDOWN=COUNTDOWN+1;
PLOT3(L,"CntDown");
END;
IF INTERSECTION[1]=FALSE THEN PLOT4((H+L)/2,"Intersect");
END;
IF COUNTDOWN=COUNTDN THEN BEGIN
PLOT1(H,"Sequen");
{PLOT2(L,"Buy");}
{
Value1 = Text_New(Date, Time, High+10, "TDSeqCountDown_Buy");
Value2 = Text_SetColor (Value1,DarkGray);
}
BUYSETUP=FALSE;
END;
Ferner scheint mir der ursprüngliche Code gewisse Fehler bei der permanenten Berechnung des TDSetups und des darauf aufbauenden Recyclings zu haben (bin aber nicht ganz sicher); deshalb habe ich den TDSEtup-Programmteil mit einer for..to-Schleife ergänzt:
checkSum = 0;
for index = 0 to 8
begin
if(close[index] < close[index+4]) then checkSum = checkSum + 1;
end;
If checkSum = COUNT and Close [COUNT] > Close [COUNT+BARSBACK] then begin
Plot2 (C,"SetUp");
COUNTER = COUNT;
COUNTDOWN = 0;
end
else COUNTER =0;
Ist das so korrekt ?
@ TJRemington
Die Zahl 2 durch die Variable BARSCDN zu ersetzen ist eleganter, dies war wohl ursprünglich so vorgesehen.
Zum Chart möchte ich ein Zitat aus dem Artikel bringen (S. 112):
"Fällt der Markt dagegen weiter, geht man in die 'Countdown-Phase': Man nimmt die Schlusskurse der vergangenen neun Tage (und der vorausgegangenen Tage) und vergleicht sie mit den Tiefpunkten zwei Tage vorher. Hat man 13 Tage, an denen der Schlusskurs unter oder auf Höhe des Tiefstkurses zwei Tage zuvor liegt, so liegt ein Einstiegszeitpunkt mit geringem Risiko vor."
Ab Mitte April steigt der Markt; müßte man nun nicht mit dem Count-down aufhören?
Gruß YingYang
@ YingYang
Sorry, das verstehe ich nicht ganz: der CountDown ist mit #13 vollendet, nach einer Zusatzbedingung (nach TdeMark bspw. C > High[2]) - wie beim Dritten Bar nach #13, um ein Drehen des Marktes sicherzustellen - sollte man Long gehen.
Die zweite Zählung ist nur programmtechnisch regulär wieder ein neuer Setup + Intersection mit nachfolgender CountDown-Zählung. Diskretionär macht es natürlich Sinn bei einem steigenden Markt den CountDown unberücksichtigt zu lassen. Nur dann eben die Frage: wie formulierst du in ein Programm ab wann und dass der Markt steigt ?
Gruss TJR
@ TJRemington
angeregt durch deine Ausführungen suchte ich im Internet nach Antworten und fand
http://www.tomdemark.com/
Besonders interessant sind dort
"Indicator Application" und "Indicator Index"
Gruß
YingYang
@ TJRemington
Zitat von http://www.tomdemark.com/ in TD Combo:
"The high of Countdown Bar 13 must be above the close of Countdown Bar 8 for a Sell Countdown. The low of Countdown Bar 13 must be below the close of Countdown Bar 8 for a Buy Countdown. "
@ TJRemington
Kannst du die Nebenbedingung noch einbauen und den ganzen Code nochmals veröffentlichen?
Wenn die Nebenbedingung nicht erfüllt ist, könnte am Punkt 13 z.B. "x" erscheinen.
Gruß
YingYang
Hallo zusammen,
so sollte ein Chart bei Genz heute aussehen (mit Supply und Demand Lines und TD ST):
Hallo.
Die Sache mit dem Explorer ist klar.
Wie "systemteste" ich den TD SEQ: auf z.B. die 30 Dax-Aktien in den letzten 5 Jahren?
Kater
@ YingYang
die Bedingung mit Countdown #13 oder > Countdown #8 konnte ich bisher nicht einbauen. Stattdessen aber die Bedingung (s. Vortrag Tom Demark bei VTAD), dass - bei einem Buy-Setup - das Close des Bars unmittelbar vor SetUp #1 größer sein muss als das Close 4 Bars vorher (bei Sell-Setup eben umgekehrt). Dies ist
bei untenstehendem Code durch die eingerückte Zeile sichergestellt.
checkSum = 0;
for index = 0 to 8
begin
if(close[index] close[index+4]) then checkSum = checkSum + 1;
end;
If checkSum = COUNT and
Close [COUNT] > Close [COUNT+BARSBACK]
then begin
Plot2 (C,"SetUp");
COUNTER = COUNT;
COUNTDOWN = 0;
end
else COUNTER =0;
Da der TD Sequential sowieso mehrere Zusatzbedingungen enthält (obige Bedingung, Intersection, das von Dir erwähnte Close13 > Close8) ist eben die Frage, wieviele Signale man bei strikter Anwendung erhält.
obigen Code fügst Du einfach anstatt
IF C=C[BARSBACK] THEN COUNTER=COUNTER+1 ELSE COUNTER=0;
IF C>=C[BARSBACK] THEN COUNTERS=COUNTERS+1 ELSE COUNTERS=0;
ein.
Ferner ist noch die Frage wie man bei erfolgreicher Intersection aber wieder auftretendem SetUp mit dem CountDown verfährt: wartet man wieder auf erfülltes Intersection oder setzt man einfach den CountDown = 0 (bei letzterem müsste man
IF INTERSECTION=FALSE and BuYSETUP THEN COUNTDOWN=0;
anstatt
IF INTERSECTION=FALSE THEN COUNTDOWN=0;
schreiben.
TJR
HI TJR
danke für deine Hilfen, ohne sie hätte es länger gedauert.
Ich habe mir den Code nochmals angeschaut.
Wenn du
IF C>=C[BARSBACK] THEN COUNTERS=COUNTERS+1 ELSE COUNTERS=0;
entfernst, könnte die Zeile
IF COUNTERS=COUNT THEN BUYSETUP=FALSE;{Cancel Setup on SellSetup}
überflüssig werden.
"The low of Countdown Bar 13 must be below the close of Countdown Bar 8 for a Buy Countdown. "
Diese Nebenbedingung könnte man wie folgt verwirklichen;
IF INTERSECTION THEN BEGIN
IF C cachtmerker then PLOT1(H,"Sequen"); {-Ausgabe nur, wenn Bar 13 unter Bar 8}
Ist es so recht? Auf deine Antwort bin ich gespannt.
Gruß YinYang
@ YingYang
Hi,
"Cancel Setup on SellSetup" habe ich so realisiert:
checkSum2 = 0;
for value1 = 0 to 8
begin
if(close[value1] > close[value1+4]) then checkSum2 = checkSum2 + 1;
end;
If checkSum2 = COUNT then BUYSETUP = false;
ad. #13#8:
Deine Methode funktioniert zweifellos (bei mir zumindest). Ist eben die Frage wie streng man DeMarks Bedingungen einhalten soll. Wem nützt ein System, das nur jedes Schaltjahr oder bspw. bei 30Min-Bars jeden Monat ein Signal generiert ? Ich lasse mir die 13er Zählung jetzt anzeigen, falls die #13>#8-Bedingung jedoch nicht erfüllt ist, lasse ich eben das Bar nicht mit 'nem Farbpunkt markieren, um den Unterscheid zu sehen.
Falls Du interessiert bist: ich schlage mich gerade mit dem TD Combo rum. Hier gilt auch, dass die Bars mit CountDown-Zählung jeweils unterhalb der vorhergehenden Zählung liegen müssen. Etwas schwierig.
TJR
Hallo TJR,
bei der Suche nach Infos über den TD Combo fand ich
http://www.activetradermag.com/special/sequential.htm
dort wird auch über den TD Sequential gesprochen.
Zitat:
"A Setup can complete before it fulfills the 'Setup Qualifier,' although both qualified and non-qualified Setups provide trade possibilities.
For a Buy Setup to qualify, the low of bar 8 or 9 must be below the lows of both bars 6 and 7."
Diese Bedingung ist noch nicht im Code oben berücksichtigt.
Gruß YingYang
@ YingYang
Hi,
diese Zusatzbedingung kannte ich bisher noch nicht; scheint im Widerspruch zur Intersection-Bedingung zu stehen, die ja gerade sicherstellen soll, dass ein Setup nicht in einem wasserfallartigen Kursverlauf entsteht.
TDeMark scheint seine Indikatoren mit der Zeit weiterentwickelt zu haben, so dass immer mehr Zusatzbedingungen hinzugekommen sind (neben der SetUp- und CountDown-Zählung zähle ich jetzt 5), ohne zu sagen, welche und wann die einzelnen Bedingungen Gültigkeit haben (sollten).
Ich versuche mich gerade am TDCombo, habe aber noch Probleme damit, sicherzustellen, dass die jeweiligen TDCombo-# unter-/oberhalb der vorhergehenden liegen.
Gruss TJR
Hallo TJR,
schicke mir eine E-Mail, dann sende ich dir das deutsche Interview vom Januar zu.
Gruß
YingYang
Dieses Chart EUR/USD habe ich von Tom DeMark selbst geschickt bekommen:
Hallo TRJ,
ich habe versucht, den TD Camouflage nachzuprogrammieren. Der Name des Indikators ist geschützt, ich würde ihn anders nennen.
Gruß YingYang
Var: vBed1(False), vBed2(False), vBed3(False),
kBed1(False), kBed2(False), kBed3(False);
{Ein TD Camouflage Kaufsignal besteht nach TDMark
aus drei Komponenten: }
{
===================== Kauf =========================
}
{1. Das Close heute ist tiefer als der Vortagesschluss}
if C<C[1] then kBed1=True else kBed1=False;
{2. Das heutige Close ist höher als das Open.}
If C>O then kBed2=True else kBed2=False;
{3. Das heutige Tief ist tiefer als das Tief vor zwei Tagen.}
If L<L[2] then kBed3 = True else kBed3=False;
if kBed1=True and kBed2=True and Kbed3= True then plot1(C,"Kauf");
{
===================== Verkauf =========================
}
{1. Das Close heute ist hoeher als der Vortagesschluss}
if C>C[1] then vBed1=True else vBed1=False;
{2. Das heutige Close ist tiefer als das Open.}
If C<O then vBed2=True else vBed2=False;
{3. Das heutige Hoch ist hoeher als das Hoch vor zwei Tagen.
Analog umgekehrt zum Kauf }
If H>H[2] then vBed3 = True else vBed3=False;
{Das heutige Tief ist hoeher als das Tief vor zwei Tagen.}
{If T>T[2] then vBed3 = True else vBed3=False;}
if vBed1=True and vBed2=True and vbed3= True then plot2(C,"Verkauf");
Hi YingYang,
den TD Camouflage kannte ich bisher noch nicht. Der Code müsste aber stimmen.
Ob sich damit ein profitables System entwerfen lässt ? Ich hab's mal auf der Basis Long/Short zur Markteröffnung des nächsten Tages und Exit on Close versucht: Ergebnis durchschnittlich.
Ist sowieso die Frage, ob sich auf Basis von Daily Patterns Geld verdienen lässt. Falls jemand Erfahrung damit hat (bspw. Systeme auf Basis von Candlesticks, Key Reversal Days, den Patterns von Toby Crabel oder ähnlichem), wäre es toll, wenn er/sie mal eine Meinung hierzu abgeben könnte.
Gruss TJR
Guten Morgen zusammen,
leider hab ich es bis jetzt nicht geschafft, die Formel(n) für den Tom DeMark`s Sequential in MetaStock 6.52 einzubinden. Daher eine manuelle Zählung mit der Bitte um Korrektur bzw. Kritik.
In dem Buch Schwager on Futures von Jack D. Schwager wird die Demark Sequenz aufgeführt. Allerdings gibt es hier einen kleinen Unterschied in der Zählung der Endphase. Wenn der aktuelle Schlusskurs höher ist als der Schlusskurs von vor zwei Tagen. Auf der Hompage von Tom DeMark wird an dieser Stelle ein Schlusskurs angegeben der höher sein muss als das Hoch der letzten zwei Tage.
Wie auch immer, anbei der manuell erstellte Chart des DowJones Index mit der Sequential- u. Combo Zählung.
Vorab schon vielen Dank und allen ein zufriedenes und gesundes Jahr 2004.
Gruß
Robin
Hallo,
wo liegt das Problem? Benötigst Du die MS Formel? Unten eine MS Graphik mit einem kompletten Zyklus.
Hallo Metatrader,
vielen Dank für die Antwort. Die Formel habe ich mir schon von der Guppy Trader Seite runterkopiert. Habe diese dann hoffentlich korrekt unter Idicator Builder jeweils einzeln mit dem vorgegebenen Namen als Indicator definiert: TD-Setup-Buy; TD CountDown Buy A usw.
Somit stehen jetzt in der Indicator Liste sämtliche Formelnamen.
Muss ich jetzt diese jeweils einzeln aufrufen oder zu einer Formel zusammenfassen?
Möchte mich schon vorab für die Frage entschuldigen, aber ich komm hier einfach nicht weiter.
Nochmals Danke und auf jeden Fall jetzt schon alles Gute für 2004.
Gruß
Robin
@ Metatrader
Guten Abend,
da stand ich wohl auf einer extrem langen Leitung. Jetzt hat es funktioniert.
Wegen der vorherigen Frage bitte ich vielmals um Entschuldigung, aber manchmal sieht man vor lauter Bäumen den Wald nicht mehr.
In diesem Sinne nochmals Danke und einen guten Rutsch.
Gruß
Robin
An die MS-Programmierer
Bin gerade dabei, mich mit dem TD Sequential zu beschäftigen. Dabei bin ich auf die Zeile gestoßen:
D8:=If(Ref(TD4,1)=1 AND TD5=1,1,0);
Ist das ein Übertragungsfehler oder riskiert das Programm wirklich einen Blick in die Zukunft? Übersehe ich etwa einen Gesamtzusammenhang? Wie sollte man damit umgehen?
Wäre über instruktive Antworten dankbar.
renard
Servus renard,
möchte mich vielmals für die betreffende Zeile bedanken. Zwar bin ich kein MS Programmierer, dennoch hab ich mal versucht die Zeile (TD-SetUp-Sell) etwas zu verändern:
D8:=If(Ref(TD4,1)=1 AND TD5=1,1,0);
D8:=If(Ref(TD4,-1)=1 AND TD5=1,1,0);
Bin mir jetzt nicht sicher, aber wenn man die Zeile ohne Änderung beibehält wird das Setup falsch angezeigt und zwar um genau einen Balken. Daher die Änderung (TD4,-1). Mit Setup meine ich jetzt den ersten von neun Balken der über dem Close vor vier Tagen schließt.
Wie gesagt bin leider kein Programmierer, und sicherlich war es nicht die erwartete Antwort. Trotzdem nochmals Danke.
Gruß
Robin
renard,
in der Formel von Harunm (16.08.2002 17:38:25) sind eine Reihe von Vorwärts Referenzen (z.b. TD Count Down Buy C), diese sind alle verkehrt und müssten umgeschrieben werden.
Eine genaue Beschreibung von dem System findest Du hier:
http://www.tradertalk.com/tutorial/demark.html
Eine genaue Beschreibung des Tom Demark Systems steht im Heft "der Active Trader" Nr 8, August 2002.
Hanie