Registrierung Kalender FAQ & Boardregeln Suche Mitgliederliste Moderatoren und Administratoren Linkdatenbank Startseite
Tradestation User Group Germany » freie Foren » Posts aus dem alten Userforum » Nochmals: Beispiel 2 (sorry): » Hallo Gast [registrieren|anmelden]
« Vorheriges Thema Nächstes Thema » Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Autor
Beitrag
_Donald$
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 94

_Donald$ ist offline
  Nochmals: Beispiel 2 (sorry):Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen


Dieser Indikator soll 2 CROSSOVERS des Basis-
Indikators sichtbar zeigen, tut er aber nicht. Es scheint mir nur gelungen zu sein,
eine Art von Glättung zu erreichen.

{"AMA}
inputs: period(10), AvgLength1(10), AvgLength2(20);
Vars: efratio(0),
smooth(0),fastend(0.666),slowend(0.645),AMA(0),diff(0),signal(0),noise(0);

efratio=1;
diff=@absvalue(close-close[1]);
if currentbar > period then begin
signal = @absvalue(close-close[period]);
noise =@summation(diff,period);
if noise <> 0 then efratio = signal/noise;
end;
if currentbar <= period then AMA = close;
smooth = @power(efratio*(fastend-slowend)+slowend,2);

AMA = AMA[1] + smooth * (close-AMA[1]);

Plot1(AMA,"AMA");
Plot2(Average(AMA, AvgLength1), "Plot2");
Plot3(Average(AMA, AvgLength2), "Plot3");

Vielleicht nimmt sich dieser Frage auch je-
mand freundlicherweise an.

Danke im voraus

31.05.2001, 21:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Donald$ senden Homepage von _Donald$
_Jim Douglas
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 59

_Jim Douglas ist offline
  RE: Nochmals: Beispiel 2 (sorry):Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

hallo Donald,

Dein Indikator sieht sehr nach KAMA (Kaufman´s Adjustible Moving Average) aus, und scheint richtig kodiert zu sein.
Das gesagt, mein KAMA sieht besser aus, und tut was der Indikator sollte, wahrend Dein AMA sieht fast wie ein 1 Bar MA aus. Code am Ende.
KAMA sollte sich verlangsamen, wenn der Trend, gemessen an Signal/Noise, nachlässt. Oft es scheint den Markt nicht mehr zu folgen, und geht seitwärts. Daher ein normalles MA wenn der Markt läuft, und mann sollte gar nichts machen, oder irgendwas anderes machen, wenn der Indikator sich verlangsamt.
Ist ein Crossover das Richtige für so etwas?
Deine Plot2 und Plot3 sind geglättete AMAs, und produzieren Crossovers. Nicht sehr interesante, aber.......
Was hattest Du sonst vor?
Du könntest ein Crossover (Trendänderung) in einem System etwa so :

Inputs:length(2);
value1 = AMA;
if value1 < lowest(value1,length)[1] then begin.....

oder andersrum für ein Tief.

im INdikator:
value2 = lowest(value1,length)[1];
value3 = highest(value1,length)[1];

nicht optimal, aber vielleicht kannst Du es benützen.

Übrigens, hast Du Vidya ausprobiert? Ahnliches Konzept, aber meine Meinung nach es funktioniert besser.


grüße,

Jim

Code:

der Funktion:
{Kaufmanns Adaptive Moving AVerage}
Inputs:period(numericsimple);
Vars:efratio(0),smooth(1),fastend(0.666),slowend(0.0645),AMA(0),diff(0),signal(0),noise(0);

{ calculate efficiency ratio }
efratio = 1;
diff = absvalue(close - close[1]);
if currentbar > period then begin
signal = absvalue(close - close[period]);
noise = summation(diff,period);
if noise <> 0 then efratio = signal / noise;
end;

if currentbar <= period then AMA = close;
smooth = power(efratio*(fastend - slowend) + slowend,2);
AMA = AMA[1] + smooth*(close - AMA[1]);
KAMA = AMA;


Indikator:
INputs:period(10);

if currentbar > period then begin
plot1(KAMA(period),"KAMA");
end;

31.05.2001, 22:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Jim Douglas senden Homepage von _Jim Douglas
_Donald$
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 94

_Donald$ ist offline
  Beispiel 2 (sorry): --> @ JIM : Dank für Deine...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Mühe.
Werde versuchen, das zu sortieren + zu ver-
gleichen.
Bin selbst gespannt.

Dona$d

PS.: Suche für 1 Minute intraday noch einen
Indikator für EUREX-Futures.
Hast Du (oder ein anderer Mitleser) evtl. etwas wirklich Brauchbares auf Lager - wenn die Frage erlaubt ist????

01.06.2001, 12:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Donald$ senden Homepage von _Donald$
_Jim Douglas
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 59

_Jim Douglas ist offline
  RE: Beispiel 2 (sorry): --> @ JIM : Dank für Deine...Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

hallo Donald,

zum Indikator - ich bin der Meinung daß es nicht so sehr um der Indikator geht, sondern was mann damit tut.
Was willst Du tun? Trendfollowing, RangeTrading, Patterns? Jede Strategie hat andere Methoden.
Im Florek´s Buch gibt es eine handvoll interesante Indikatoren. Es kommt aber auf die Anwendung an. Ich habe noch nie ein Indikator gesehen, das in alle Marktlagen immer gute Signale gibt.
Ein brauchbares Handelskonzept bezieht meistens Information aus mehrere Indikatoren oder Kalkulationen.
Range trading, z.B., funktioniert nicht so gut in einem starken Trend, und trendfollowing Systeme meistens auch nicht bei rangetrading.
Daher sollte vielleicht ein rangeTrading System irgendwas haben, um ein Trend zu erkennen.
kurz, es ist nicht so einfach......

Ich bin nicht überzeugt daß KAMA ein geiegnete Crossover Kandidat ist. Trotzdem, Deine Methode hat ein weiteres Problem für mich.
In deinem Beispiel mit KAMA hast Du mit Average geglättet. Warum mit Average? Besser wäre XAverage. Noch besser wäre mit T3, und am besten geht so etwas mit Jurik Moving Average (JMA). Ich möchte nicht alle die Argumente wiederrollen, aber sie sind auf der Jurik Website www.jurikres.com unter Products und JMA zu finden.
In diesem Zusammenhang weise ich auf der Jurik Angebot hin. Sehe Omega User Group Website www.tradernet.de, oder Jo Haas bei Tradersworld 07138 / 9411033.
Wenn Du kein JMA haben willst, denn glätte zumindestens mit XAverage, nicht mit Average.

viel Glück, und gebe nicht auf.

grüße,

Jim

01.06.2001, 21:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Jim Douglas senden Homepage von _Jim Douglas
_bigapple
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 15

_bigapple ist offline
  RE: Nochmals: Beispiel 2 (sorry):Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

bekomme bei dem kamacode leider einige fehlermeldungen bei verify

02.06.2001, 08:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _bigapple senden Homepage von _bigapple
_Jim Douglas
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 59

_Jim Douglas ist offline
  RE: Nochmals: Beispiel 2 (sorry):Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

welche Fehlermeldungen? Der Code verifiziert und funktioniert bei mir.

Code nochmal am Ende.

Der Code ist auch zu finden in:
"Trading Systems and Methods" Third Edition, von Perry Kaufman.Wiley Trading Advantage Verlag. Seite 436-438
Das Buch ist zu empfehlen.


grüße,

Jim

Funktion:

{Kaufmanns Adaptive Moving AVerage}
Inputs:period(numericsimple);
Vars:efratio(0),smooth(1),fastend(0.666),slowend(0.0645),AMA(0),diff(0),signal(0),noise(0);

{ calculate efficiency ratio }
efratio = 1;
diff = absvalue(close - close[1]);
if currentbar > period then begin
signal = absvalue(close - close[period]);
noise = summation(diff,period);
if noise <> 0 then efratio = signal / noise;
end;

if currentbar <= period then AMA = close;
smooth = power(efratio*(fastend - slowend) + slowend,2);
AMA = AMA[1] + smooth*(close - AMA[1]);
KAMA = AMA;


Indikator:
INputs:period(10);

if currentbar > period then begin
Plot1(KAMA(period),"KAMA");
end;

02.06.2001, 09:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Jim Douglas senden Homepage von _Jim Douglas
_bigapple
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 15

_bigapple ist offline
  RE: Nochmals: Beispiel 2 (sorry):Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

irgendwie seltsam. habe mehere meldungen: not recognized
1. numericsimple
2. period
2. kama

03.06.2001, 13:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _bigapple senden Homepage von _bigapple
_Uwe
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313

_Uwe ist offline
  Function und Indikator sind auf unterschiedlichen Formularen zu erstelAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Vermutlich liegt hier der Fehler begründet, denn bei mir klappte eben die Übernahme ohne Beanstandung.

Hast Du die Hinweise von Jim Douglas beachtet, wo es darum geht, das KAMA eine Function ist und diese auch als solche beim Anlegen auszuwählen ist ("Blatt" Function im auswahlfenster anwählen!)?

Als Formular für den Indikator wählst Du das "Blatt" Indikator.

Gruß
Uwe

03.06.2001, 14:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Uwe senden Homepage von _Uwe
_bigapple
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 15

_bigapple ist offline
  RE: Function und Indikator sind auf unterschiedlichen Formularen zu erAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo nochmal,
sorry wenn ich mich so dumm dranstelle: also habe jetzt function gewählt. beim verify kommt:
1. zeile 20 Indikator:word not recognized Error #61
2. zeile 21 INputs: period(10)..... already been defined Error # 151

danke für die hilfe

03.06.2001, 18:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _bigapple senden Homepage von _bigapple
_Uwe
Administrator



Dabei seit: 12 2001
Herkunft: User altes Forum
Beiträge: 313

_Uwe ist offline
  Functions- und Indicator-FormularAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Die von Dir angegebenen Zeilennummer kann ich nicht direkt nachvollziehen, da ich nicht überschauen kann, welche Eingabezeilen in Deinem Programm stehen, doch ich vermute, daß Du die Unterteilung des Programms nicht beachtet hast.

Hier handelt es sich nämlich um

  • die Funktione KAMA und
  • den Indikator (z.B. Kaufman_AMA,

    was die Erstellung

  • eines neuen Programms im "Function-Formular" und
  • eines neuen Programms im "Indicator-Formular"

    erforderlich macht, die zwischen den Trennstrichen angeordnet sind.




    {"Function-Formular" für die Funktion mit dem Namen KAMA}

    {Kaufmanns Adaptive Moving AVerage}
    Inputs:period(numericsimple);
    Vars:efratio(0),smooth(1),fastend(0.666),slowend(0.0645),AMA(0),diff(0),signal(0),noise(0);

    { calculate efficiency ratio }
    efratio = 1;
    diff = absvalue(close - close[1]);
    if currentbar > period then begin
    signal = absvalue(close - close[period]);
    noise = summation(diff,period);
    if noise <> 0 then efratio = signal / noise;
    end;

    if currentbar <= period then AMA = close;
    smooth = power(efratio*(fastend - slowend) + slowend,2);
    AMA = AMA[1] + smooth*(close - AMA[1]);
    KAMA = AMA;



    {"Indicator"-Formular für Indikator mit einem beliebigen, von dir zu wählenden Namen, z.B. Kaufman_AMA:}

    INputs:period(10);

    if currentbar > period then begin
    Plot1(KAMA(period),"KAMA");
    end;



    Der erste Abschnitt ist die Funktion, die Du, wenn sie ersteinmal mit Verify ohne Beanstandung akzeptiert wurde, in all Deinen zukünftigen Progammen mit dem Befehl:

    KAMA(period)

    aufrufen und verwenden kannst, wobei Du period zu definieren hast. Dieses Vorgehensweise findet im Beispiel des Indikator eine Umsetzung.

    Aber auch in jeder Eingabe eines beliebigen Indikators, wo als INPUT-Variable eine Preisreihe abverlangt wird, kannst Du diese Zeile

    KAMA(9)

    schreiben, wobei allerdings dann keine Variable als Übergabeparameter gesetzt werden kann, sondern ein Ausdruck, der ein numerischen Wert darstellt bzw. liefert.

    Gutes Vorankommen wünscht
    Uwe

  • 03.06.2001, 19:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _Uwe senden Homepage von _Uwe
    _bigapple
    Administrator



    Dabei seit: 12 2001
    Herkunft: User altes Forum
    Beiträge: 15

    _bigapple ist offline
      RE: Functions- und Indicator-FormularAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

    Hallo Uwe,
    habs geschafft. danke für deine hilfe

    04.06.2001, 07:10 Profil von Füge  deiner Freunde-Liste hinzu Email an _bigapple senden Homepage von _bigapple
      « Vorheriges Thema Nächstes Thema »
    Neues Thema erstellen Antwort erstellen
    Gehe zu:

    Powered by: Burning Board 1.1.1 © 2001 WoltLab GbR