Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Stochastik und ihre Weiterentwicklung hin zur Digitalen Stochastik

Featured Replies

Geschrieben
ich hab die bei mir im Ninjatrader, muß allerdings dazu sagen das ich damit nicht ganz zurecht komme. Für Divergenztrader wie mich eignet sich die digitale Stochastik weniger, gleichwohl ist der Gedanke an sich aber gut. In Trends werden die Fehlsignale dadurch minimiert.
Geschrieben

Genau den wollten wir mal vor ein paar Monaten nachbilden.

 

kamen aber mit dem Grund Stochastic von Amibroker nie auf das gleiche Ergebnis.

Muss ich jetzt noch mal schauen wo ich den Stoch selber berechne kann. :sad:

Geschrieben
  • Autor

Also, ich hab das mal schnell für Tradesignal programmiert nach dem Text aus dem obigen Link (hoffe, das ist richtig :sad:):

Meta:      
ShortCode( "DigStoc" ),
SubChart( True );
     
Inputs: 
PeriodStoch( 120, 1 ),
PeriodMA(5,1);

Variables:HH,LL,Stoch,DigStoch;


HH = Highest(High,PeriodStoch);
LL= Lowest(Low,PeriodStoch);

Stoch = 100*(Close-LL)/(HH-LL);

if Stoch > 50 then 
DigStoch=1
else 
DigStoch=-1;

DrawLine(XAverage(DigStoch, PeriodMA), "Digitale Stochastik" );

Verglichen mit der normalen Stochastik 100*(C-LL/HH-LL) (rot) und der Stochastik-der-Stochastik sieht es - nun ja - "anders" aus. Man merkt irgendwie, dass der Autor nen E-Techniker ist. :sad:

digstoch.PNG

Geschrieben
Also, ich hab das mal schnell für Tradesignal programmiert nach dem Text aus dem obigen Link (hoffe, das ist richtig :sad:):

 

ich habe hier 2 Code aus dem Trader von damals,

die sehen etwas anders aus.

 

 

{*******************************************************************
Description	: This Indicator plots a digital Stochastic
Provided By	: kahler / quanttrader.at (c) Copyright 2008  
********************************************************************} 

Input: Length(5), KAdjust(3),  DAdjust(3);
Variables: KAdjusted(0), DAdjusted(0),summ(0);

KAdjusted = SlowKClassic(KAdjust, Length);
DAdjusted = SlowDClassic(DAdjust, Length);

{ Digitalisierung }
if (22*KAdjusted+8*DAdjusted)/30 >50 then summ=1;
if (22*KAdjusted+8*DAdjusted)/30 <50 then summ=-1;

IF CurrentBar > Length Then Plot1(xaverage(summ,Length), "Stoch. Dig.");

 

Meta:
Synopsis( "Digitale Stochastic - (c)2008 kahler@quanttrader.at - Info: Trader`s 08/2008" ),
SubChart( True ),	  
WebLink( "http://www.quanttrader.at" );
  
Inputs: 
PeriodStoch( 5, 1 ), 
PeriodK( 3, 1 ),
PeriodD( 3, 1 );

Variables:
fast_k( 0 ),
slow_k( 0 ),
slow_d( 0 ),
summ;
{ Berechnung fast_k, slow_k }
StochasticNormal( High, Low, Close, PeriodStoch, PeriodK, PeriodD, fast_k, slow_k, slow_d );

{ Digitalisierung }
if (22*slow_k+8*fast_k)/30 >50 then summ=1;
if (22*slow_k+8*fast_k)/30 <50 then summ=-1;

{ Darstellung }
DrawLine(xaverage(summ,periodStoch), "digitale Stochastic" );

 

Wir hatten ihn damals in AmiBroker so nachgebaut

//digital Stochastic nach Philip Kahler
periods = Param( "Periods", 5, 1, 200, 1 );
KAdjust = Param( "%K avg", 3, 1, 200, 1 );
DAdjust= Param( "%D avg", 3, 1, 200, 1 );

KAdjusted = StochK(periods,KAdjust);
DAdjusted = StochD(periods,KAdjust,DAdjust);

CON=((22*KAdjusted)+(8*DAdjusted))/30;

summ=IIf(CON > 50,1,-1);

//Plot( EMA(Summ,periods), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );
Plot (KAdjusted, _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );
Plot (DAdjusted, _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );

 

und kamen damit auf das gleiche Ergebnis wie ich jetzt hier mit komme

// Digitale Stochastic

PeriodeStoch = 5;
PeriodeMA = 5;

HH = HHV(H, PeriodeStoch);
LL = LLV(L, PeriodeStoch);

Stoch = 100* ( C-LL) / (HH-LL);

DigiStoch = IIf( Stoch > 50, 1, -1 );

Plot(EMA(DigiStoch,PeriodeMA) ,"DigiStoch",colorRed,1);

 

was aber Falsch sein muss.

 

Wir hatten Ihn damals mit dem Original verglichen und hatten immer ein etwas anderes Ergebnis.

Geschrieben
  • Autor

Kahler_Digitale_Stochastik:

 

Meta:
Synopsis( "Digitale Stochastic - (c)2008 kahler@quanttrader.at - Info: Trader`s 08/2008" ),
SubChart( True ),	  
WebLink( "http://www.quanttrader.at" );
  
Inputs: 
PeriodStoch( 5, 1 ), 
PeriodK( 3, 1 ),
PeriodD( 3, 1 );

Variables:
fast_k( 0 ),
slow_k( 0 ),
slow_d( 0 ),
summ;
{ Berechnung fast_k, slow_k }
StochasticNormal( High, Low, Close, PeriodStoch, PeriodK, PeriodD, fast_k, slow_k, slow_d );

{ Digitalisierung }
if (22*slow_k+8*fast_k)/30 >50 then summ=1;
if (22*slow_k+8*fast_k)/30 <50 then summ=-1;

{ Darstellung }
DrawLine(xaverage(summ,periodStoch), "digitale Stochastic" );

 

Meine TS-Implementierung:

Meta:	  
ShortCode( "DigStoc" ),
SubChart( True );
  
Inputs: 
PeriodStoch( 120, 1 ),
PeriodMA(120,1);

Variables:HH,LL,Stoch,DigStoch;


HH = Highest(High,PeriodStoch);
LL= Lowest(Low,PeriodStoch);

Stoch = 100*(Close-LL)/(HH-LL);

//geändert !
DigStoch=0; //bei Stoch=50

if Stoch > 50 then 
DigStoch=1
else if Stoch < 50 then
DigStoch=-1;

DrawLine(XAverage(DigStoch, PeriodMA), 
 "Digitale Stochastik" );

 

Also, ich habe jetzt die beiden Indikatoren nochmal verglichen.

 

Und dabei folgende Unterschiede festgestellt:

 

1. Ich hatte in der Anfangsversion bei Stoch=50 auch ne 1 zugewiesen, statt ne 0. Da die 50 aber kaum vorkommt und in dem Link im ersten Post auch drinsteht, dass das man eigentlich nur eine Abfolge von -1 und 1 hat - als "digitalem" Kern - sollte das kaum in Gewicht fallen. Tut es auch nicht, wenn man sich die Ergebnisse anschaut. Bei dem Amibroker-Code ist die 0 auch nicht separat behandelt worden, aber ich denke nicht, dass Ihr deswegen die Abweichungen hattet.

 

2. wird ne Gewichtung vorgenommen und nicht wie bei mir die Original Fast-%K-Stochastik benutzt, sondern ne Gewichtung der Fast%-K und ner geglätteten, wobei die Glättung durch die 22/30 natürlich mehr Einfluss hat als die ungeglättete mit ihren 8/30. Ich hab da ein bisschen rumprobiert, aber die Mega-Unterschiede generiert man normalerweise auch nicht dadurch.

 

@ibelieve:

KAdjusted = StochK(periods,KAdjust);

DAdjusted = StochD(periods,KAdjust,DAdjust);

 

CON=((22*KAdjusted)+(8*DAdjusted))/30;

Die Gewichtung ist genau verkehrt herum. Die langsame Stochastik Fast-%D/Slow-%K (bzw. die Glättung der Fast-%K) ist bei Kahler höher gewichtet.

 

 

 

3. In dem Text stand, dass die Abfolge -1/1 durch nen "kurzen" EMA geglättet würde, was für mich impliziert, dass es nen anderer Wert ist als der Wert der Stochastik (sonst hätte man das ja auch schreiben können, wenn es der gleiche Parameter wäre). Wenn man in meinem Code dann PeriodMA denselben Wert gibt wie PeriodStoch, werden doch sehr ähnliche Ergebnisse generiert.

 

 

Summa summarum gibt es also einige Unterschiede zwischen Kahler's Code und meinem /bzw. der Amibroker-Variante, die eventuell in der Gesamtheit auch zu merkbaren Unterschieden führen (v.a. wahrscheinlich auf Tages-Daten), einzeln jedoch m.M. nicht.

digital.png

Geschrieben

Mit meiner Alzheimer kann ich mich nicht mehr so genau dran erinnern :swepimp:

 

Aber ich glaube wir hatten das hauptsächliche Problem damit das wir 1-2 Bars hinter her hinkten.

War ja glaube ich als Einstiegssignal gedacht und da macht so was einen menge aus.

  • 2 Wochen später...
Geschrieben

Ich habe mir den Digital Stochastik noch nicht detailliert angeschaut, aber ich glaube, der Stochastik mit einer Invers Fisher Transformation sieht ziemlich ähnlich aus. Hier der Amibroker Code:

 

 // General - purpose Inverse Fisher Transform function
function InvFisherTfm( array )
{
  e2y = exp( 2 * array );
 return ( e2y - 1 )/( e2y + 1 );
}

Length=Param("Länge",5,2,20,1);
glättung=Param("Glättung",9,5,20,1);
Value1 = 0.1 * ( StochK(Length)- 50 );
Value2 = WMA( Value1, glättung );

Plot( InvFisherTfm( Value2 ), "Stochastic IFT", colorRed, styleThick );
PlotGrid( 0.5 );
PlotGrid(-0.5 );

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.