checkAd

    Easy-Language-Thread - 500 Beiträge pro Seite

    eröffnet am 04.10.00 18:49:02 von
    neuester Beitrag 15.10.00 23:35:03 von
    Beiträge: 7
    ID: 260.477
    Aufrufe heute: 0
    Gesamt: 902
    Aktive User: 0


     Durchsuchen

    Begriffe und/oder Benutzer

     

    Top-Postings

     Ja Nein
      Avatar
      schrieb am 04.10.00 18:49:02
      Beitrag Nr. 1 ()
      Hallo Charttechnik-Community,

      dieser Thread soll dazu dienen Easy-Language-Code zu publizieren. Easy-Language ist eine einfache Programmiersprache, die von der Firma Omega-Research entwickelt wurde. Mit Easy-Language stehen viele Möglichkeiten zur Programmierung von Indikatoren oder Handelssystemen offen. Trotz der einfachen Bedienbarkeit ist eine ausreichende Flexibilität gegeben. Ziel dieses Threads ist es nun ein Sammelsurium an Indikatoren und Systemen zu bilden, neue Ideen zugänglich und transparent zu machen und mögliche Fragen zu besprechen. Wahrscheinlich wird die Resonanz zu Beginn noch nicht sehr groß sein aber aller Anfang ist schwer. Ich bedanke mich jedenfalls schon im Vorfeld für jegliche Mitarbeit.


      Zu Anfangs möchte ich die Codes von zwei neueren Indikatorkonzepten auflisten.

      Aroon: als Trendbestimmungsindikator anzuwenden, misst die Anzahl der Tage seit dem letzten Hoch oder Tief

      Aroon Up:

      input: len(21), divlen(21), down(25), up(75);
      vars: return(0), aroonup(0);

      aroonup = 100 * ((len - HighestBar (High,len))/ divlen);

      Plot1(aroonup,"AroonUp");
      Plot2(Down,"Down");
      Plot3(Up,"Up");


      Aroon Down:

      input: len(21), divlen(21), midline(50);
      vars: return(0), aroondown(0);

      aroondown = 100 * ((len - lowestbar (low,len))/ divlen);

      Plot1(aroondown,"AroonDown");
      Plot2(midline,"Midline");


      ProjectionOscillator: vergleichbar mit Stochastik aber schnellere und markantere Signalausprägung


      Inputs: Length(13), Smooth(2), Lowband(20), Topband(80);
      Vars: SL(o),SH(o), PL(o),PU(o),PO(o), SlowPO(o);
      SL= LinearRegSlope(Low,Length);
      SH= LinearRegSlope(High,Length);
      For Value1=1 to length begin
      Value2= Low[Value1-1]+(SL*(Value1-1));
      Value3= High[Value1-1]+(SH*(Value1-1));
      if Value1=1 then begin
      PL=Value2;
      PU=Value3;
      End;
      If Value2<PL then PL=Value2;
      If Value3>PU then PU=Value3;
      End;
      PO=100*(Close-PL)/(PU-PL);
      SlowPO=(2/(Smooth+1))*PO+(1-(2/(Smooth+1)))*SlowPO[1];
      If Currentbar=1 then SlowPO=PO;

      Plot1(PO,"PO");
      Plot2(SlowPO,"SlowPO");
      Plot3(Lowband,"Lowband");
      Plot4(Topband,"Topband");
      Avatar
      schrieb am 04.10.00 19:01:49
      Beitrag Nr. 2 ()
      sehr geehrter herr <brathuhn> ochsenkühn!
      ich finde dies ist ein wirklich interessantes thema. nur leider verstehe ich nicht allzu viel von programmierung und handelssystemen, bin aber neugierig. ich hoffe auf rege postings.
      mfg
      albert
      Avatar
      schrieb am 06.10.00 17:50:29
      Beitrag Nr. 3 ()
      Die Idee mit dem Script-Thread find ich klasse! Da ich jedoch nicht mit der Trade-Station arbeite sondern mit MetaStock möchte ich eine eigene Konstruktion im MetaScript-Format beisteuern.

      Es handelt sich hierbei um ein Script, welches für einen Wert eine Stop-Loss-Marke nachzieht. Im Gegensatz zum Parabolic-SAR verändert sich die Stop-Loss-Linie jedoch nicht in Seitwärtsbewegungen.

      Hier das Script:
      --------------------------------------------------------------------
      CTStopToday:= L- 2.5*ATR(21 );
      CTLOW:=If(Ref(L,-1)<PREV,L- 3*ATR(21 ),If(CTStopToday>PREV, CTStopToday, PREV));
      CTLOW;
      --------------------------------------------------------------------
      Zur Erläuterung:
      ATR(21) ist die Average True Range der letzten 21 Zeiteinheiten. Dieser Indikator ist in MetaStock vorprogrammiert. Trotzdem zur Berechnung: für jede Zeiteinheit wird die Größte der folgenden drei Spannen verwendet (jeweils ohne Vorzeichen!):

      - Heutiges High zum gestrigen Low
      - gestriges Close zum heutigen High
      - gestriges Close zum heutigen Low

      Der ATR(21) ist der Durchschnitt dieser letzten 21 größten Spannen.
      Ich verwende den ATR(21) um das Stop-Loss an die Volatilität des Wertes anzupassen.

      Das Script macht folgendes:
      Zunächst wird festgelegt, daß das heutige Stop-Loss beim 2.5 fachen des ATR(21) unter dem heutigen Tiefstkurs liegen würde. Danach wird überprüft, ob
      - das Stop-Loss nach oben gezogen werden muß (Stop heute > bisheriges Stop-Loss) oder
      - das Stop-Loss beibehalten wird oder
      - das Stop-Loss gebrochen wurde (in diesem Falle wird ein neues Stop-Loss-Level 3 * ATR(21) unter dem aktuellen Low eingerichtet. Nur in diesem Falle geht die Stop-Loss-Linie nach unten!
      --------------------------------------------------------------------
      Strategie:
      Je nach Situation des Wertes (bereits erzielter Gewinn, Abstand zur Spekusteuer etc.) kann man sofort beim ersten Stop-Loss verkaufen oder auf die zweite oder dritte Stop-Loss-Ebene warten. (Ich verkaufe eigentlich immer beim ersten Signal!
      --------------------------------------------------------------------
      Anpassungen:
      Man kann sowohl die Länge des ATR anpassen (relativ geringe Verbesserung) wie auch den Abstand des Stop-Loss zum Kurs (der Faktor 2.5 ist relativ willkürlich gewählt, entspricht aber z.B. meinen Gepflogenheiten.)

      Beispielchart (RTX Moskau)


      Ich hoffe auf rege Diskussion bzw. Verbesserungsvorschläge!
      Avatar
      schrieb am 08.10.00 18:08:23
      Beitrag Nr. 4 ()
      Hallo Leute,
      habt Ihr zufällig ein Script für den Mesa Sine Wave - Indikator ?
      Den wollte ich sehr gerne in meine Chartingsoftware einbauen, kann aber leider keine Beschreibung finden.

      @charttec,
      gute Idee mit Deiner Stopptechnik - bestimmt besser als immer nur eine feste Prozentzahl vom High zu nehmen. Ich werde das bestimmt mal evaluieren - ist die Methode Deiner Meinung nach besser als z.B. in den Extrembereichen von Aroon/RMI/... long zu sein und bei verlassen der Extrembereiche einfach zu verkaufen ???

      pki
      Avatar
      schrieb am 08.10.00 19:11:45
      Beitrag Nr. 5 ()
      Da der Mesa Sine Wave im MetaStock fest implementiert ist und ich auch im Netz keine Formel gefunden habe... Sorry!

      Ich selbst tue mir schwer, aufgrund von herkömmlichen Indikatoren zu verkaufen! Deswegen habe ich mir dieses Stop-Loss-System entwickelt um auszusteigen. Komischerweise halte ich mich hier an Verkaufssignale, während ich bei herkömmlichen Indikatoren eventuell noch zögern würde. Für mich ist dieses System deswegen schon rein psychologisch bedingt besser geeignet.

      Trading Spotlight

      Anzeige
      InnoCan Pharma
      0,1865EUR 0,00 %
      Multi-Milliarden-Wert in diesem Pennystock?!mehr zur Aktie »
      Avatar
      schrieb am 13.10.00 17:59:15
      Beitrag Nr. 6 ()
      Vielen Dank an charttec für das Engagement im Metastock-Code. Das kann ich nur begrüßen, beide Programme haben ihre Vorteile und Nachteile.

      Ich möchte heute ebenfalls die Anregung von Charttec’s Trailing-Stop – Indikatoren aufnehmen.
      Hier zunächst zu einem sehr ähnlichen Trailing Stop,den Charttec oben beschrieben hat. Unterschied ist lediglich, dass beim Ausüben des ersten Stopniveaus nicht ein 3-facher ATR sondern weiterhin ein 2,5-facher ATR vom Tief abgezogen wird.

      Im Chart:



      Der Code:

      {*******************************************************************
      Description : ATR Trailing Stop Version1
      Date: 10/2000
      ********************************************************************}
      Inputs: ATRs(2.5), Length (21), Price(low);
      Variables: ATRInd(0);

      ATRInd = Price - AvgTrueRange(Length)*ATRs;
      If Low < ATRInd[1]
      then ATRInd= Price - AvgTrueRange(Length)*ATRs
      else
      If ATRInd[1] > ATRInd
      then ATRInd= ATRInd[1];

      plot1(ATRInd,"AvgTrueRange")


      Ich möchte noch eine andere Version eines ATR Trailing Stops vorstellen. Dieser Indikator ist dem ATR Trailing LX Signal für mechanische Handelssysteme aus den mitgelieferten Signalen der Tradestation nachprogrammiert. Gelb die obige Version, rot der dynamischere Stop.



      Hauptunterschiede zur obigen Version:
      1. Der Stop kann jederzeit fallen oder steigen und wird in der Regel auch jeden Tag verändert.
      2. Der Stop bezieht sich nicht auf die Tiefstkurse, sondern auf die Höchstkurse
      3. DER ATR-Wert wird vom höchsten Hoch abgezogen, das seit dem Eingehen der Position erreicht wurde. Deshalb ist auch die Angabe eines Datums nötig.
      4. Als Defaulteinstellung für die ATR-Länge wurde 10 Tage gewählt, der ATR Multiplikator wurde bei 3 festgelegt.

      Der Code:

      {*******************************************************************
      Description : ATR Trailing Stop Version2
      Date: 07/2000
      ********************************************************************}
      {+++ Enter= Anzahl der Tage vor denen eine Long-Position eingegangen wurde +++}
      {+++ Dt= Datum in der Form YYMMDD an dem eine Long-Position eingegangen wurde +++}
      Inputs: ATRs(3), Length (10), Price(High), Dt(990101);
      Variables: ATRInd(0), Enter(-2);

      If Date = Dt then Enter=-1;
      If Date >= Dt then Enter=Enter+1;
      If Enter=0 then ATRInd= High- AvgTrueRange(Length)*ATRs;
      If Enter<0 then ATRInd=Close
      else ATRInd= Highest(Price, Enter)- AvgTrueRange(Length)*ATRs;


      plot1(ATRInd,"AvgTrueRange")


      Zu guter letzt noch eine Version für einen mehrstufigen Ausstieg, d.h. nur Teile einer Position werden beim Erreichen bestimmter Levels aufgelöst. Die erste Marge bei der roten Linie, die nächste Marge bei der blauen Linie und der Rest der Position bei der gelben Linie. Grundlage für diesen Triple ATR war der ATR Trailing Stop Version 2. Natürlich kann eine solche Strategie auch bei der ersten Version verwendet werden. Der erste Schritt liegt ja in Charttecs Version bereits in der Bestimmung eines dreifachen ATRs nach Ausübung des ersten Stops.

      Im Chart:



      Der Code:

      {*******************************************************************
      Description : Triple ATR Trailing Stop Version2
      Date: 07/2000
      ********************************************************************}
      {+++ Enter= Anzahl der Tage vor denen eine Long-Position eingegangen wurde +++}
      {+++ Dt= Datum in der Form YYMMDD an dem eine Long-Position eingegangen wurde +++}
      Inputs: ATRs1(2),ATRs2(2.5),ATRs3(3), Length (10), Price(High), Dt(990101);
      Variables: ATRInd1(0),ATRInd2(0),ATRInd3(0), Enter(-2);

      If Date = Dt then Enter=-1;
      If Date >= Dt then Enter=Enter+1;
      If Enter=0 then begin
      ATRInd1= High- AvgTrueRange(Length)*ATRs1;
      ATRInd2= High- AvgTrueRange(Length)*ATRs2;
      ATRInd3= High- AvgTrueRange(Length)*ATRs3;
      end;
      If Enter<0 then Begin
      ATRInd1=Close;
      ATRInd2=Close;
      ATRInd3=Close;
      end
      else begin
      ATRInd1= Highest(Price, Enter)- AvgTrueRange(Length)*ATRs1;
      ATRInd2= Highest(Price, Enter)- AvgTrueRange(Length)*ATRs2;
      ATRInd3= Highest(Price, Enter)- AvgTrueRange(Length)*ATRs3;
      end;

      plot1(ATRInd1,"AvgTruRange1");
      plot2(ATRInd2,"AvgTruRange2");
      plot3(ATRInd3,"AvgTruRange3");
      Avatar
      schrieb am 15.10.00 23:35:03
      Beitrag Nr. 7 ()
      Wer kann mir Tips geben, wo ich ein Handbuch oder Beschreibungen für
      die TradeStation auf Deutsch finde, und wie ich Daten importieren kann.
      Videotext oder ähnliche preiswerte Datenanbieter.
      Tolles Proggie aber etwas schwierig für nen Anfänger wie mich.
      Insbesonders ohne fundierte Englischkenntnisse in diesem Bereich.
      Bin für jeden Tip dankbar.


      Beitrag zu dieser Diskussion schreiben


      Zu dieser Diskussion können keine Beiträge mehr verfasst werden, da der letzte Beitrag vor mehr als zwei Jahren verfasst wurde und die Diskussion daraufhin archiviert wurde.
      Bitte wenden Sie sich an feedback@wallstreet-online.de und erfragen Sie die Reaktivierung der Diskussion oder starten Sie
      hier
      eine neue Diskussion.
      Easy-Language-Thread