Tradestation User Group Germany (http://www.tradernet.org/wbb/index.php)
|- Posts aus dem alten Userforum (http://www.tradernet.org/wbb/board.php?boardid=15)
|-- Triple Screen Trading System (http://www.tradernet.org/wbb/threadid.php?boardid=15&threadid=905)


Geschrieben von _Ina am 30.11.2000, 18:10:

  Triple Screen Trading System

Hallo, ich bräuchte mal Eure Hilfe.

Hat einer den Easylanguagecode für das System "Triple Screen Trading System" beschrieben im Buch von Alexander Elder "Trading for a Living" .

Mir würde es schon reichen, wenn ich die Formel für das MACD Histogramm hätte.
Die Formel müßte so aussehen: Erzeuge ein Kaufsignal, wenn das wöchendliche MACD Histogramm ansteigt.
Den Rest, mit dem Force Index etc, bekomme ich schon selber hin.

Danke an alle


Geschrieben von _Uwe am 01.12.2000, 09:10:

  RE: Triple Screen Trading System

Hallo Ina!

Das System "Triple Screen Trading System" kenne ich nicht und auch ist mir das Buch von A.Elder nicht bekannt, daher fällt es mir schwer, zu erahnen, wo die Schwierigkeiten stecken.

Wen Du einen Chart mit der Einstellung Wochenbasis hast, so dürfte die Benutzung des MACD-Indikators und die Ermittlung der wöchentlichen veränderungrichtung mit if vMACD>vMACD[1] keine Probleme bereiten.

Verwendest Du eine kleinere Zeiteinheit als Basis, so ist in einer eigenen Variblen der Wert des Wochenschluß zwischenzuspeichern.

vars: lastMACDWeekly(0), currMACDWeekly(0);
arrays: weeklyClose[31](0);
if DayOfWeek(date)begin
lastMACDWeekly=currMACDWeekly;
for count=30 downto 1
begin
weeklyClose[count]=weeklyClose[count-1];
end;
weeklyClose[0]=close[1];
end;

Den MACD müßtes Du entsprechend als eigenständige Funktion berechnen, indem Du die Wochen-Closkurse zwischenspeicherst (weeklyClose) und zur Auswertung der Formel:
currMACDweekly=MyEMA(x)-MyEMA(y)-(MyEMA(x)*(MyEMA(x)-MyEMA(y)),
diese Werte heranziehst (im Biespiel x
Wenn Du nähere Informationen über das TST-System veröffentlichen kannst, dan könnte man vielleicht die ein wenig weiter helfen. So hier eben nur etwas allgemein, mit der Erläuterung der Nutzung von "Stack"-Speichern (array: weeklyClose[31](0))

Gruß
Uwe


Geschrieben von _Ina am 01.12.2000, 16:10:

  RE: Triple Screen Trading System

Hi Uwe,

zuerst mal Danke für Deine Mühe !!

Ich erläutere nun mal das System etwas näher.
Analysiert wird ein Wochenchart.
Das Originalsystem benutzt die Neigung des wöchentlichen MACD-Histogramm als das erste Signal. Die Neigung wird durch das Verhältnis der zwei letzten Balken zueinander definiert. Wenn die Neigung nach oben weist, wird das erste Kaufsignal generiert.
Das zweite Kaufsignal wird generiert, wenn ein kurzfristiger Oszillator überverkauft ist.(Hier wird der 2-Tage EMA des Force-Index benutzt- er sollte unter seine Mittellienie fallen.)
Als dritter Screen bedarf keines Indikators. Er stellt die Technik des Markteintrittes dar. Die Kauforder wird einen Tick über dem Hoch des Vortages platziert.

Gruß Ina


Geschrieben von _Uwe am 02.12.2000, 09:10:

  RE: Triple Screen Trading System

Hallo Ina!

Besten Dank für Deine Beschreibung. Aus dem Text entnehme ich, daß Du mit einem Chart arbeitest, der auf Wochenbasis eingestellt ist. Damit greift die Lösung: vMACD < vMACD[1], oder eben in Worten: der aktuelle Wert des MACD ist kleiner als der vorherige, also der MACD fällt. Du kannst also mit der mitgelieferten Funktion für den MACD arbeiten oder habe ich Deine Fragestellung nicht richtig verstanden?


Inputs: Price(Close), LenMACDFast(9). LenMACDSlow(1, ... ;
vars: vMACD(0), ... ;
vMACD=MACD(Price, LenMACDFast. LenMACDSlow);

if vMACD > vMACD[1] then
begin
...{Aktionen bei steigendem MACD}...
end
else
if vMACD < vMACD[1] then
begin
...{Aktionen bei fallendem MACD}...
end;


In diesem Beispiel ist die Entscheidung bei unverändertem MACD mit keiner Aktion belegt.

Viel Erfolg beim Umsetzen
Uwe


Geschrieben von _Ina am 02.12.2000, 17:10:

  RE: Triple Screen Trading System

Hallo Uwe,

erst mal danke für Deine Mühe.
Ich hatte leider noch keine Zeit zum testen.
Du beschreibst hier folgende Lösung:
"vMACD < vMACD[1] oder eben in Worten: der aktuelle Wert des MACD ist kleiner als der vorherige, also der MACD fällt"
Es geht bei diesem System aber nicht direkt um den MACD, sondern um das MACD Histogramm, welches sich aus der Differenz der Signallinie und der MACD Linie zusammensetzt.
Diese Funktion erkenne ich in Deiner Formel nicht wieder.(Aber ich bin ja auch noch laaange keine ELA Expertin)

Danke erst mal, ich werde jetzt testen!

Gruß Ina


Geschrieben von _Laura am 03.12.2000, 11:10:

  RE: Triple Screen Trading System

hallo,
habe eben nachgesehen, elder bechreibt man kann auch den ema(13) verwenden. somit sollte der code nicht allzu schwierig sein.
der stop ist vollkommen frei gewillt, nur damit etwas dasteht.
hoffe es hilft laura

vars: FrceIdx(0);

FrceIdx = (V*(C-C[1]));

if xaverage(closew(1),13) > xaverage(closew(2),13) and
XAverage(FrceIdx,2) < 0 then begin
buy ("TSSKauf") at high + 1/8 stop;
end;

if xaverage(closew(1),13) < xaverage(closew(2),13) then begin
exitlong ("TSSVerkauf") at low[1] stop;
end;


Geschrieben von _Ina am 03.12.2000, 14:10:

  RE: Triple Screen Trading System

Danke an Uwe, danke an Laura!!

Ich habe Uwe´s Variante für den MACD und Laura´s Variante für den Force Index zu einem System zusammengefügt.
Es funktioniert !!

Gruß Ina


Geschrieben von _Uwe am 03.12.2000, 15:10:

  MACD-OmegaReserch vs. MACDhistogramm

Hallo Ina!

Es ist schön zu lesen, daß alles wunschgemäß geklappt hat.
Dennoch ein Hinweis zur unterschiedlichen Definition des MACD s

Deine Nachfrage hat mich veranlaßt, mich mit dem MACD nach der OmegaResearch-Definition (OR_MACD) zu beschäftigen. Dieser Indikator berechent die Diferenzen zweier esponentieller gleitenden Durchschnitte

  • OR_MACD=XAverage(Price, FastMA)-XAverage(Price, SlowMA);

    Diese Differenzen sind als Histogramm auftragbar. Da ich bei der Darstellung des Programmbeispiels die OR-Funktion benutzt habe, werden die sich aus dieser Forme ergebende Werte verwendet. Die Darstllung als Histigramm oder als Linie ist dabei beliebig.

    Im Buch: "Das Großen Buch der technischen Indikatoren" und auf der WWW-Seite von MetaStock über das Thema MACD-Histogramm nach MetaStock, bin ich auf die Formel

  • HS-MACD=EMA(x)-EMA(y) - ( EMA(x)*(EMA(x) - EMA(y))

    gestoßen, die Dich anscheinend interessiert. Beide Formeln stellen natürlich einen anderen Linienzug bzw. eine Anderes Histogramm dar.
    Um nun diese Funktion zu verwenden Mir war nicht bewußt, das der OR-MACD nichts mit dem HS-MACD zu tun hat.

    Hier also eine FUNCTION zur berechnung des HS-MACD s.

    {FUCTION MCADhistogramm}
    inputsrice(NumericSeries),FastMA(NumericSimple),SlowMA(NumericSimple);

    vars:EMAx(0), EMAy(0), dEMA(0), EMAdEMA(0), SF(2/(FastMA+1));

    EMAx=XAverage(Price,FastMA);
    EMAy=XAverage(Price,SlowMA);
    dEMA=EMAx-EMAy;

    if CurrentBar <= 1 then
    EMAdEMA = dEMA
    else
    EMAdEMA = EMAdEMA[1] + SF*(dEMA-EMAdEMA[1]);

    MACDhistogram = dEMA-EMAdEMA;


    In Dein System ist nun statt dem Funktionsauruf
    vMACD=MACD(Price, LenMACDFast. LenMACDSlow);
    die Zeile
    vMACD=MACDhistogramm(Price, LenMACDFast. LenMACDSlow);
    einzufügen.

    Soviel zur Vervollständigung. Den MACD-Momentum-Oscilattor kann man hieraus ser schnell konstruieren.

    Alles gute
    Uwe


  • Geschrieben von _Ina am 04.12.2000, 13:10:

      RE: MACD-OmegaReserch vs. MACDhistogramm

    Danke Uwe,

    Du bist ein Genie !!

    Gruß Ina

    Powered by: Burning Board 1.1.1 © 2001 by WoltLab