Gann

Stel hier uw vragen over TA-script, of help anderen met het oplossen van hun probleem
Plaats reactie
Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » di jul 28, 2009 11:46 pm

Korte update onder de link:

http://www.jstas.com/2009/Dageljiks%20v ... fieken.htm

Absoluut geen trading-advies, enkel een idee, meer niet :)
Vriendelijke groet,
JanS ;)

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » ma aug 10, 2009 11:50 pm

Ik heb de retracement tool een beetje aangepast/uitgebreid.

Ik ben bezig met wat anders, maar '" 't lukt nog niet helemaal'.

Om dan even wat 'af te reageren' schrijf ik dan weer een stukje aan deze retracement tool.

De aangepaste code is als volgt:

Code: Selecteer alles

{- Filename: Fibonacci-Gann-retracement -}
//.
//Fibonacci en Gann retracements
// www.JSTAS.com
// Release 1.02

Function KleurSelec(Selec:Integer):TColor;
 Begin
   case Selec of
     1:  Result := clAqua;
     2:  Result := clBlack;
     3:  Result := clBlue;
     4:  Result := clDkGray;
     5:  Result := clFuchsia;
     6:  Result := clGray;
     7:  Result := clGreen;
     8:  Result := clLime;
     9:  Result := clltGray;
     10: Result := clMaroon;
     11: Result := clNavy;
     12: Result := clOlive;
     13: Result := clPurple;
     14: Result := clRed;
     15: Result := clSilver;
     16: Result := clTeal;
     17: Result := clWhite;
     18: Result := clYellow;
   else
     Result := clGray;
   end;
End;
////
Function Lijnsoort(Lijntype:Integer):TTrendLineStyle;
 Begin
  Case Lijntype of
    1: Result:=LsSolid   ;
    2: Result:=LsDash    ;
    3: Result:=LsDot     ;
    4: Result:=LsDashDot ;
    5: Result:=LsDashDotDot;
  End;
 End;
 ////
 Procedure Trendlijn(Date1,Date2:TDateTime;LnStrt,LnEnd:Real;Kleur:TColor;Lijntype:TLineType;Lv,Rv:Boolean);
 Begin
  With CreateTrendLine(Date1,LnStrt,Date2,LnEnd)Do
   Begin
     Color:= Kleur;
     Style:= Lijntype;
     If Lv Then ExtendLeft  :=True;
     If RV Then ExtendRight :=True;
   End;
 End;
////
Function Datumcheck(Yr,Mnth,Dy :Integer):Integer ;
Begin
If (Mnth=4 ) And (Dy>30) Then Dy:=30;
If (Mnth=6 ) And (Dy>30) Then Dy:=30;
If (Mnth=9 ) And (Dy>30) Then Dy:=30;
If (Mnth=11) And (Dy>30) Then Dy:=30;
If Mnth=2 Then
  Begin
    If ((Yr/4.0)= (Trunc(Yr/4.0))) And (Dy>29) Then Dy:=29;
    If ((Yr/4.0)<>(Trunc(Yr/4.0))) And (Dy>28) Then Dy:=28;
   End;
Result :=Dy;
End;
////
Procedure Txt(X:TDateTime;Y:Real;Tekst:String;Kleur:TColor;tekengrootte:Integer);
  Begin
    With CreateText(X,Y,Tekst) Do
      Begin
        Color    := Kleur;
        Font.Size:= tekengrootte;
      End;
  End;
///
Function TextInvul(Indic:Integer;Perc:String;Waarde:Real):String;
  Begin
    Case Indic Of
      0: Result := '';
      1: Result := Perc;
      2: Result := FormatFloat('0.0',(Round(((Waarde*10)))/10));
      3: Result := Perc+' - '+ FormatFloat('0.0',(Round(((Waarde*10)))/10));
    End;
  End;
///
Function TekFiboLijn(RefDat,Datum:TDateTime;Wrd1:Real;Kleur:TColor;Lijnsoort:TLineType;Lverl,Rverl:Boolean;Text1:String):Real;
  Begin
     Trendlijn(RefDat,Datum,Wrd1,Wrd1,Kleur,Lijnsoort,Lverl,Rverl);
     Txt(Now+5,Wrd1,Text1,Kleur,8);
     Result := Wrd1;
  End;
///

{Initiëren  variabelen}
var
 Lverlng,Rverlng                                      : Boolean;
 Datum1,Datum2,RefDat, AngStrt                        : TDateTime;
 KrsWrd1 , KrsWrd2, RefKrs, Range, Vert, AngKrs,Hulp1 : Real;
 Jaar1,Mnd1,Dag1,Jaar2,Mnd2,Dag2, Methode, Indic, KlrVrt, TypVrt, GnlnTyp,PltsTXT  : Integer;
 KrswrdDtm1,KrswrdDtm2, RknFct, RBars, i, Verlengen, KlrRef, TypRef, TypAnglLn     : Integer;
  Kleurkeuzes, KoersType, Lijntypes, Methoden, Verleng, Weergave                   : String;
 _009,_014,_023,_038,_061,_078,_088,_094,_127,_161,_261,_423,_685                  : Real;
 G1_8, G2_8, G3_8, G4_8, G5_8, G6_8, G7_8, G8_8                                    : Real;
 G1_6, G2_6, G3_6, G4_6, G5_6, G6_6                                                : Real;
 C_G1_8,C_G2_8,C_G3_8,C_G4_8,C_G5_8,C_G6_8,C_G7_8,C_G8_8                           : Integer;
 C_G1_6,C_G2_6,C_G3_6,C_G4_6,C_G5_6,C_G6_6,C_G1_3,C_G1_2,C_G2_3                    : Integer;
 _L009,_L014,_L023,_L038,_L050,_L061,_L078,_L088,_L094,_L100,_L127,_L161,_L200,_L261,_L423,_L685                                 : Real;
 W_L009,W_L014,W_L023,W_L038,W_L050,W_L061,W_L078,W_L088,W_L094,W_L100,W_L127,W_L161,W_L200,W_L261,W_L423,W_L685                 : Boolean;
 C_L009,C_L014,C_L023,C_L038,C_L050,C_L061,C_L078,C_L088,C_L094,C_L100,C_L127,C_L161,C_L200,C_L261,C_L423,C_L685                 : Integer;
 LT_L009,LT_L014,LT_L023,LT_L038,LT_L050,LT_L061,LT_L078,LT_L088,LT_L094,LT_L100,LT_L127,LT_L161,LT_L200,LT_L261,LT_L423,LT_L685 : Integer ;

Begin
{Voor initialisatie Strings}
 Kleurkeuzes :='Aqua'#9'Black'#9'Blue'#9'DkGray'
                #9'Fuchsia'#9'Gray'#9'Green'#9'Lime'#9'LtGray'#9'Maroon'#9'Navy'
                #9'Olive'#9'Purple'#9'Red'#9'Silver'#9'Teal'#9'White'#9'Yellow'
 KoersType   :='Open'#9'Hoog'#9'Laag'#9'Slot';
 Lijntypes   :='Doorgetrokkenlijn'#9'Gestreepte lijn'#9'Gestippelde lijn'
                #9'Streep-Stippel lijn'#9'Streep-Stip-Stip-lijn';
 Methoden    := 'Fibonacci Retracement'#9'Fibonacci Retr. + Angles'#9'Gann 1/8 lijnen'
                #9'Gann 1/8 lijnen + Angles'#9'Gann 1/3 lijnen'#9'Gann 1/3 + Edson Gould SRL'
                #9'Gann 1/6 lijnen'#9'Gann 1/6 + Edson Gould SRL';
 Verleng     := 'Niet'#9'Links'#9'Rechts'#9'Links & Rechts';
 Weergave    := 'Geen'#9'Percentage'#9'Koerswaarde'#9'Percentage & Koerswaarde';

{ Ophalen Parameters }
  Methode    := CreateParameterSelect('Kies Methode:',Methoden,0,False);
  TypAnglLn  := 1 + CreateParameterSelect(' Lijn-type van de Angel-lines',Lijntypes,1,False);
  Verlengen  := CreateparameterSelect('Weergave lijn verlengen ? ',Verleng,0,False);
  Indic      := CreateparameterSelect(' % en/of Koerswaarde: ',Weergave,1,False);
  Jaar1      := CreateParameterInteger('1-e datum  Jaar',1900,2100,2007,False);
  Mnd1       := CreateParameterInteger('1-e datum Maand',1,12,10,False);
  Dag1       := CreateParameterInteger('1-e datum   Dag',1,31,11,False);
  KrswrdDtm1 := CreateParameterSelect('Koerswaarde datum 1',Koerstype,3,False);
  Jaar2      := CreateParameterInteger('2-e datum  Jaar',1900,2100,2009,False);
  Mnd2       := CreateParameterInteger('2-e datum Maand',1,12,3,False);
  Dag2       := CreateParameterInteger('2-e datum   Dag',1,31,6,False);
  KrsWrdDtm2 := CreateParameterSelect('Koerswaarde datum 2',Koerstype,3,False);

   W_L009 := CreateParameterBoolean('  9% lijn weergeven ? ',False,False);
   C_L009 := 1+ CreateParameterSelect ('Kies kleur   9% lijn:',Kleurkeuzes,17,False);
  LT_L009 := 1+ CreateParameterSelect('Lijn-type   9% lijn:',Lijntypes,2,False);
   W_L014 := CreateParameterBoolean(' 14% lijn weergeven ? ',False,False);
   C_L014 := 1+ CreateParameterSelect ('Kies kleur  14% lijn:',Kleurkeuzes,17,False);
  LT_L014 := 1+ CreateParameterSelect('Lijn-type  14% lijn:',Lijntypes,2,False);
   W_L023 := CreateParameterBoolean(' 23% lijn weergeven ? ',False,False);
   C_L023 := 1+ CreateParameterSelect ('Kies kleur  23% lijn:',Kleurkeuzes,17,False);
  LT_L023 := 1+ CreateParameterSelect('Lijn-type  23% lijn:',Lijntypes,2,False);
   W_L038 := CreateParameterBoolean(' 38% lijn weergeven ? ',True ,False);
   C_L038 := 1+ CreateParameterSelect ('Kies kleur  38% lijn:',Kleurkeuzes,17,False);
  LT_L038 := 1+ CreateParameterSelect('Lijn-type  38% lijn:',Lijntypes,2,False);
   W_L050 := CreateparameterBoolean(' 50% lijn weergeven ? ',True ,False);
   C_L050 := 1+ CreateParameterSelect ('Kies kleur  50% lijn:',Kleurkeuzes,13,False);
  LT_L050 := 1+ CreateParameterSelect('Lijn-type  50% lijn:',Lijntypes,2,False);
   W_L061 := CreateParameterBoolean(' 61% lijn weergeven ? ',True ,False);
   C_L061 := 1+ CreateParameterSelect ('Kies kleur  61% lijn:',Kleurkeuzes,17,False);
  LT_L061 := 1+ CreateParameterSelect('Lijn-type  61% lijn:',Lijntypes,2,False);
   W_L078 := CreateParameterBoolean(' 78% lijn weergeven ? ',False,False);
   C_L078 := 1+ CreateParameterSelect ('Kies kleur  78% lijn:',Kleurkeuzes,17,False);
  LT_L078 := 1+ CreateParameterSelect('Lijn-type  78% lijn:',Lijntypes,2,False);
   W_L088 := CreateParameterBoolean(' 88% lijn weergeven ? ',False,False);
   C_L088 := 1+ CreateParameterSelect ('Kies kleur  88% lijn:',Kleurkeuzes,17,False);
  LT_L088 := 1+ CreateParameterSelect('Lijn-type  88% lijn:',Lijntypes,2,False);
   W_L094 := CreateParameterBoolean(' 94% lijn weergeven ? ',False,False);
   C_L094 := 1+ CreateParameterSelect ('Kies kleur  94% lijn:',Kleurkeuzes,17,False);
  LT_L094 := 1+ CreateParameterSelect('Lijn-type  94% lijn:',Lijntypes,2,False);
   W_L100 := CreateParameterBoolean('100% lijn weergeven ? ',False,False);
   C_L100 := 1+ CreateParameterSelect ('Kies kleur 100% lijn:',Kleurkeuzes,17,False);
  LT_L100 := 1+ CreateParameterSelect('Lijn-type 100% lijn:',Lijntypes,2,False);
   W_L127 := CreateParameterBoolean('127% lijn weergeven ? ',False,False);
   C_L127 := 1+ CreateParameterSelect ('Kies kleur 127% lijn:',Kleurkeuzes,17,False);
  LT_L127 := 1+ CreateParameterSelect('Lijn-type 127% lijn:',Lijntypes,2,False);
   W_L161 := CreateParameterBoolean('161% lijn weergeven ? ',False,False);
   C_L161 := 1+ CreateParameterSelect ('Kies kleur 161% lijn:',Kleurkeuzes,17,False);
  LT_L161 := 1+ CreateParameterSelect('Lijn-type 161% lijn:',Lijntypes,2,False);
   W_L200 := CreateParameterBoolean('200% lijn weergeven ? ',False,False);
   C_L200 := 1+ CreateParameterSelect ('Kies kleur 200% lijn:',Kleurkeuzes,17,False);
  LT_L200 := 1+ CreateParameterSelect('Lijn-type 200% lijn:',Lijntypes,2,False);
   W_L261 := CreateParameterBoolean('261% lijn weergeven ? ',False,False);
   C_L261 := 1+ CreateParameterSelect ('Kies kleur 261% lijn:',Kleurkeuzes,17,False);
  LT_L261 := 1+ CreateParameterSelect('Lijn-type 261% lijn:',Lijntypes,2,False);
   W_L423 := CreateParameterBoolean('423% lijn weergeven ? ',False,False);
   C_L423 := 1+ CreateParameterSelect ('Kies kleur 423% lijn:',Kleurkeuzes,17,False);
  LT_L423 := 1+ CreateParameterSelect('Lijn-type 423% lijn:',Lijntypes,2,False);
   W_L685 := CreateParameterBoolean('685% lijn weergeven ? ',False,False);
   C_L685 := 1+ CreateParameterSelect('Kies kleur 685% lijn:',Kleurkeuzes,17,False);
  LT_L685 := 1+ CreateParameterSelect('Lijn-type 685% lijn:',Lijntypes,2,False);
  GnLnTyp := 1+ CreateParameterSelect('Lijntype Gannlijnen:',Lijntypes,2,False);
  KlrRef  := 1+ CreateparameterSelect('Kleur Referentie lijn:',Kleurkeuzes,0,False);
  TypRef  := 1+ CreateParameterSelect('Lijntype Referentielijn:',Lijntypes,2,False);
  KlrVrt  := 1+ CreateParameterSelect('Kleur Verticale lijn:',Kleurkeuzes,0,False);
  TypVrt  := 1+ CreateParameterSelect('Lijntype Verticale lijn:',Lijntypes,0,False);
  C_G1_8  := 1+ CreateParameterSelect ('Kleur Gann 1/8 lijn:',Kleurkeuzes,17,False);
  C_G2_8  := 1+ CreateParameterSelect ('Kleur Gann 2/8 lijn:',Kleurkeuzes,17,False);
  C_G3_8  := 1+ CreateParameterSelect ('Kleur Gann 3/8 lijn:',Kleurkeuzes,17,False);
  C_G4_8  := 1+ CreateParameterSelect ('Kleur Gann 4/8 lijn:',Kleurkeuzes,17,False);
  C_G5_8  := 1+ CreateParameterSelect ('Kleur Gann 5/8 lijn:',Kleurkeuzes,17,False);
  C_G6_8  := 1+ CreateParameterSelect ('Kleur Gann 6/8 lijn:',Kleurkeuzes,17,False);
  C_G7_8  := 1+ CreateParameterSelect ('Kleur Gann 7/8 lijn:',Kleurkeuzes,17,False);
  C_G8_8  := 1+ CreateParameterSelect ('Kleur Gann 8/8 lijn:',Kleurkeuzes,17,False);
  C_G1_6  := 1+ CreateParameterSelect ('Kleur Gann 1/6 lijn:',Kleurkeuzes,17,False);
  C_G2_6  := 1+ CreateParameterSelect ('Kleur Gann 2/6 lijn:',Kleurkeuzes,17,False);
  C_G3_6  := 1+ CreateParameterSelect ('Kleur Gann 3/6 lijn:',Kleurkeuzes,17,False);
  C_G4_6  := 1+ CreateParameterSelect ('Kleur Gann 4/6 lijn:',Kleurkeuzes,17,False);
  C_G5_6  := 1+ CreateParameterSelect ('Kleur Gann 5/6 lijn:',Kleurkeuzes,17,False);
  C_G6_6  := 1+ CreateParameterSelect ('Kleur Gann 6/6 lijn:',Kleurkeuzes,17,False);
  C_G1_3  := 1+ CreateParameterSelect ('Kleur Gann 1/3 lijn:',Kleurkeuzes,17,False);
  C_G1_2  := 1+ CreateParameterSelect ('Kleur Gann 50% lijn:',Kleurkeuzes,17,False);
  C_G2_3  := 1+ CreateParameterSelect ('Kleur Gann 2/3 lijn:',Kleurkeuzes,17,False);
  PltsTXT := CreateparameterInteger('Geef niveau Text :',1,200,94,False);

{Omzetten parameters naar bruikbare TDateTime waarde}
    Dag1 := DatumCheck(Jaar1,Mnd1,Dag1);
  Datum1 := EncodeDate(Jaar1,Mnd1,Dag1);
    Dag2 := Datumcheck(Jaar2,mnd2,Dag2);
  Datum2 := EncodeDate(Jaar2,Mnd2,Dag2);

{Bepalen minimale aantal koersbars via de variabele RBars}
If (Datum1 < Datum2) Then RBars := Round(Date-Datum1)+2 ;
If (Datum2 < Datum1) Then RBars := Round(Date-Datum2)+2 ;

{Eigenschappen van de indicator}
With Indicator do
  begin
    RequiredBars := RBars;
    NewBand      := False;
    ScaleRange   := srCommon;
    Shortname    := 'Retracements';
  end;

{Ophalen koerswaarden datum 1 en datum 2 naargelang ingegeven parameters}
 For i:= 0 to BarCount-1 Do
  Begin
   If (Trunc(DateTime[i])= Trunc(Datum1)) Then
    Begin
      Case KrsWrdDtm1 Of
        0:  KrsWrd1 := O[i];
        1:  KrsWrd1 := H[i];
        2:  KrsWrd1 := L[i];
        3:  KrsWrd1 := C[i];
      End;
    End;
   If (Trunc(DateTime[i]) = Trunc(Datum2)) Then
    Begin
      Case KrsWrdDtm2 Of
        0: KrsWrd2 := O[i];
        1: KrsWrd2 := H[i];
        2: KrsWrd2 := L[i];
        3: KrsWrd2 := C[i];
      End;
    End;
   If (i= BarCount-1) Then Hulp1 := C[i];
  End;
  
{ Bij "ongeldige"  datum geen lijnweergave en meldtekst}
 If KrsWrd1 <=0 Then Txt(Now-40,Hulp1,'Op datum-1 geen koers informatie',Kleurselec(14),15);
 If KrsWrd2 <=0 Then Txt(Now-40,Hulp1,'Op datum-2 geen koers informatie',KleurSelec(14),15);
 If (KrsWrd1<=0) Or (KrsWrd2<=0) Then Methode :=99;

{Ervoor zorgen dat Range altijd een positieve waarde is}
 Range := Sqrt(Sqr(Krswrd1 - KrsWrd2));
 
{Bepalen referentiepunt bij retracement:}
 If datum1 > datum2 Then
  Begin
    RefDat := Datum1 ;
    RefKrs := krsWrd1;
    AngStrt:= Datum2 ;
    AngKrs := KrsWrd2;
    If KrsWrd1  < KrsWrd2 Then RknFct :=  1;
    If KrsWrd1 >= KrsWrd2 Then RknFct := -1;
  End
 Else
  Begin
    RefDat := Datum2 ;
    RefKrs := KrsWrd2;
    AngStrt:= Datum1 ;
    AngKrs := KrsWrd1;
    If KrsWrd2  > KrsWrd1 Then RknFct := -1;
    If KrsWrd2 <= krsWrd1 Then RknFct :=  1;
  End;

{Caluclatie Phi en afgeleiden }
  _061 := ((1+Sqrt(5))/2)-1;
  _038 := Sqr(_061);
  _014 := Sqr(_038);
  _023 := _038-_014;
  _009 := _023-_014;
  _078 := Sqrt(_061);
  _088 := Sqrt(_078);
  _094 := Sqrt(_088);
  _161 := ((1 + Sqrt(5))/2);
  _127 := Sqrt(_161);
  _261 := Sqr(_161);
  _423 := _261*_161;
  _685 := Sqr(_261);
  
{Uitrekenen lijnwaarden Fibonacci}
  _L009 :=(_009*Range)*RknFct + Refkrs;
  _L014 :=(_014*Range)*RknFct + Refkrs;
  _L023 :=(_023*Range)*RknFct + Refkrs;
  _L038 :=(_038*Range)*RknFct + Refkrs;
  _L050 :=( 0.5*Range)*RknFct + Refkrs;
  _L061 :=(_061*Range)*RknFct + Refkrs;
  _L078 :=(_078*Range)*RknFct + Refkrs;
  _L088 :=(_088*Range)*RknFct + Refkrs;
  _L094 :=(_094*Range)*RknFct + Refkrs;
  _L100 := (    Range)*RknFct + Refkrs;
  _L127 :=(_127*Range)*RknFct + Refkrs;
  _L161 :=(_161*Range)*RknFct + Refkrs;
  _L200 :=(   2*Range)*Rknfct + refkrs;
  _L261 :=(_261*Range)*RknFct + Refkrs;
  _L423 :=(_423*Range)*RknFct + Refkrs;
  _L685 :=(_685*Range)*RknFct + Refkrs;
  
{Uitrekenen Gann Achtste waarden}
  G1_8 := (0.125*Range)*RknFct + Refkrs;
  G2_8 := (0.250*Range)*Rknfct + Refkrs;
  G3_8 := (0.375*Range)*Rknfct + Refkrs;
  G4_8 := (0.500*Range)*Rknfct + Refkrs;
  G5_8 := (0.625*Range)*Rknfct + Refkrs;
  G6_8 := (0.750*Range)*Rknfct + Refkrs;
  G7_8 := (0.875*Range)*Rknfct + Refkrs;
  G8_8 := (1.000*Range)*Rknfct + refkrs;
  
{Uitrekenen Gann 1/6 waarden}
  G1_6 := (Range/6.0)*RknFct   + Refkrs;
  G2_6 := (Range/3.0)*Rknfct   + Refkrs;
  G3_6 := (Range/2.0)*Rknfct   + Refkrs;
  G4_6 := (Range/1.5)*Rknfct   + refkrs;
  G5_6 := (Range/6.0)*5*Rknfct + Refkrs;
  G6_6 := (Range    )*  RknFct + Refkrs;

{Lijn links en/of rechts verlengen}
  Case Verlengen Of
    0:  Begin
          Lverlng := False;
          Rverlng := False;
        End;
    1:  Begin
          Lverlng := True ;
          Rverlng := False;
        End;
    2:  Begin
          Lverlng := False;
          Rverlng := True ;
        End;
    3: Begin
          Lverlng := True;
          Rverlng := True;
       End;
  End;

{Fibonacci weergave en evt. de Angles}
 If (Methode=0) Or (Methode=1)Then
  Begin
   If W_L009 Then Vert:=TekFiboLijn(RefDat,Now+10,_L009,KleurSelec(C_L009),Lijnsoort(LT_L009),Lverlng,Rverlng,TextInvul(Indic,'9,%'   ,_L009));
   If W_L014 Then Vert:=TekFiboLijn(RefDat,Now+10,_L014,KleurSelec(C_L014),Lijnsoort(LT_L014),Lverlng,Rverlng,TextInvul(Indic,'14,6%'   ,_L014));
   If W_L023 Then Vert:=TekFiboLijn(RefDat,Now+10,_L023,KleurSelec(C_L023),Lijnsoort(LT_L023),Lverlng,Rverlng,TextInvul(Indic,'23,6%' ,_L023));
   If W_L038 Then Vert:=TekFiboLijn(RefDat,Now+10,_L038,KleurSelec(C_L038),Lijnsoort(LT_L038),Lverlng,Rverlng,TextInvul(Indic,'38,2%' ,_L038));
   If W_L050 Then Vert:=TekFiboLijn(RefDat,Now+10,_L050,KleurSelec(C_L050),Lijnsoort(LT_L050),Lverlng,Rverlng,TextInvul(Indic,'50%'   ,_L050));
   If W_L061 Then Vert:=TekFiboLijn(RefDat,Now+10,_L061,KleurSelec(C_L061),Lijnsoort(LT_L061),Lverlng,Rverlng,TextInvul(Indic,'61,8%' ,_L061));
   If W_L078 Then Vert:=TekFiboLijn(RefDat,Now+10,_L078,KleurSelec(C_L078),Lijnsoort(LT_L078),Lverlng,Rverlng,TextInvul(Indic,'78,6%' ,_L078));
   If W_L088 Then Vert:=TekFiboLijn(RefDat,Now+10,_L088,KleurSelec(C_L088),Lijnsoort(LT_L088),Lverlng,Rverlng,TextInvul(Indic,'88,6%' ,_L088));
   If W_L094 Then Vert:=TekFiboLijn(RefDat,Now+10,_L094,KleurSelec(C_L094),Lijnsoort(LT_L094),Lverlng,Rverlng,TextInvul(Indic,'94,2%' ,_L094));
   If W_L100 Then Vert:=TekFiboLijn(RefDat,Now+10,_L100,KleurSelec(C_L100),Lijnsoort(LT_L100),Lverlng,Rverlng,TextInvul(Indic,'100%'  ,_L100));
   If W_L127 Then Vert:=TekFiboLijn(RefDat,Now+10,_L127,KleurSelec(C_L127),Lijnsoort(LT_L127),Lverlng,Rverlng,TextInvul(Indic,'127,2%',_L127));
   If W_L161 Then Vert:=TekFiboLijn(RefDat,Now+10,_L161,KleurSelec(C_L161),Lijnsoort(LT_L161),Lverlng,Rverlng,TextInvul(Indic,'161,8%',_L161));
   If W_L200 Then Vert:=TekFiboLijn(RefDat,Now+10,_L200,KleurSelec(C_L200),Lijnsoort(LT_L200),Lverlng,Rverlng,TextInvul(Indic,'200%'  ,_L200));
   If W_L261 Then Vert:=TekFiboLijn(RefDat,Now+10,_L261,KleurSelec(C_L261),Lijnsoort(LT_L261),Lverlng,Rverlng,TextInvul(Indic,'261,8%',_L261));
   If W_L423 Then Vert:=TekFiboLijn(RefDat,Now+10,_L423,KleurSelec(C_L423),Lijnsoort(LT_L423),Lverlng,Rverlng,TextInvul(Indic,'423,6%',_L423));
   If W_L685 Then Vert:=TekFiboLijn(RefDat,Now+10,_L685,KleurSelec(C_L685),Lijnsoort(LT_L685),Lverlng,Rverlng,TextInvul(Indic,'685,3%',_L685));
  If (methode=1) Then
    Begin
      If W_L009 Then Trendlijn(AngStrt,RefDat,AngKrs,_L009,KleurSelec(C_L009),LijnSoort(TypAnglLn),False,True);
      If W_L014 Then Trendlijn(AngStrt,RefDat,AngKrs,_L014,KleurSelec(C_L014),LijnSoort(TypAnglLn),False,True);
      If W_L023 Then Trendlijn(AngStrt,RefDat,AngKrs,_L023,KleurSelec(C_L023),LijnSoort(TypAnglLn),False,True);
      If W_L038 Then Trendlijn(AngStrt,RefDat,AngKrs,_L038,KleurSelec(C_L038),LijnSoort(TypAnglLn),False,True);
      If W_L050 Then Trendlijn(AngStrt,RefDat,AngKrs,_L050,KleurSelec(C_L050),LijnSoort(TypAnglLn),False,True);
      If W_L061 Then Trendlijn(AngStrt,RefDat,AngKrs,_L061,KleurSelec(C_L061),LijnSoort(TypAnglLn),False,True);
      If W_L078 Then Trendlijn(AngStrt,RefDat,AngKrs,_L078,KleurSelec(C_L078),LijnSoort(TypAnglLn),False,True);
      If W_L088 Then Trendlijn(AngStrt,RefDat,AngKrs,_L088,KleurSelec(C_L088),LijnSoort(TypAnglLn),False,True);
      If W_L094 Then Trendlijn(AngStrt,RefDat,AngKrs,_L094,KleurSelec(C_L094),LijnSoort(TypAnglLn),False,True);
      If W_L100 Then Trendlijn(AngStrt,RefDat,AngKrs,_L100,KleurSelec(C_L100),LijnSoort(TypAnglLn),False,True);
      If W_L127 Then Trendlijn(AngStrt,RefDat,AngKrs,_L127,KleurSelec(C_L127),LijnSoort(TypAnglLn),False,True);
      If W_L161 Then Trendlijn(AngStrt,RefDat,AngKrs,_L161,KleurSelec(C_L161),LijnSoort(TypAnglLn),False,True);
      If W_L200 Then Trendlijn(AngStrt,RefDat,AngKrs,_L200,KleurSelec(C_L200),LijnSoort(TypAnglLn),False,True);
      If W_L261 Then Trendlijn(AngStrt,RefDat,AngKrs,_L261,KleurSelec(C_L261),LijnSoort(TypAnglLn),False,True);
      If W_L423 Then Trendlijn(AngStrt,RefDat,AngKrs,_L423,KleurSelec(C_L423),LijnSoort(TypAnglLn),False,True);
      If W_L685 Then Trendlijn(AngStrt,RefDat,AngKrs,_L685,KleurSelec(C_L685),LijnSoort(TypAnglLn),False,True);
    End;
  End;
  
{Gann 1/8 lijnen weergave + eventueel Angles}
 If (Methode=2) Or (Methode=3)Then
  Begin
    Vert := TekFiboLijn(RefDat,Now+10,G1_8,KleurSelec(C_G1_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'12,5%',G1_8));
    Vert := TekFiboLijn(RefDat,Now+10,G2_8,KleurSelec(C_G2_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'25%  ',G2_8));
    Vert := TekFiboLijn(RefDat,Now+10,G3_8,KleurSelec(C_G3_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'37,5%',G3_8));
    Vert := TekFiboLijn(RefDat,Now+10,G4_8,KleurSelec(C_G4_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'50%  ',G4_8));
    Vert := TekFiboLijn(RefDat,Now+10,G5_8,KleurSelec(C_G5_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'62,5%',G5_8));
    Vert := TekFiboLijn(RefDat,Now+10,G6_8,KleurSelec(C_G6_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'75% ' ,G6_8));
    Vert := TekFiboLijn(RefDat,Now+10,G7_8,KleurSelec(C_G7_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'87,5%',G7_8));
    Vert := TekFiboLijn(RefDat,Now+10,G8_8,KleurSelec(C_G8_8),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'100 %',G8_8));
  If (Methode=3) Then
   Begin
    Trendlijn(AngStrt,RefDat,AngKrs,G1_8,KleurSelec(C_G1_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G2_8,KleurSelec(C_G2_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G3_8,KleurSelec(C_G3_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G4_8,KleurSelec(C_G4_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G5_8,KleurSelec(C_G5_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G6_8,KleurSelec(C_G6_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G7_8,KleurSelec(C_G7_8),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G8_8,KleurSelec(C_G8_8),LijnSoort(TypAnglLn),False,True);

   End;
  End;

{Gann 1/3 lijnen weergeven en evt. Edson Gould SRL lijnen}
 If (Methode=4) Or (Methode=5) Then
  Begin
    Vert := TekFiboLijn(RefDat,Now+10,G2_6,KleurSelec(C_G1_3),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'33,3%',G2_6));
    Vert := TekFiboLijn(RefDat,Now+10,G3_6,KleurSelec(C_G1_2),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'50 % ',G3_6));
    Vert := TekFiboLijn(RefDat,Now+10,G4_6,KleurSelec(C_G2_3),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'66,6%',G4_6));
  If (Methode=5) Then
   Begin
    Trendlijn(AngStrt,RefDat,AngKrs,G2_6,KleurSelec(C_G1_3),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G3_6,KleurSelec(C_G1_2),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G4_6,KleurSelec(C_G2_3),LijnSoort(TypAnglLn),False,True);
   End;
  End;
  
{Gann 1/6 lijnen weergeven + evt. Edson Gould SRL lijnen}
 If (Methode=6) Or (Methode=7) THen
  Begin
    Vert := TekFiboLijn(RefDat,Now+10,G1_6,KleurSelec(C_G1_6),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'16,6%',G1_6));
    Vert := TekFiboLijn(RefDat,Now+10,G2_6,KleurSelec(C_G2_6),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'33,3%',G2_6));
    Vert := TekFiboLijn(RefDat,Now+10,G3_6,KleurSelec(C_G3_6),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'50 % ',G3_6));
    Vert := TekFiboLijn(RefDat,Now+10,G4_6,KleurSelec(C_G4_6),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'66,6%',G4_6));
    Vert := TekFiboLijn(RefDat,Now+10,G5_6,KleurSelec(C_G5_6),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'83,3%',G5_6));
    Vert := TekFiboLijn(RefDat,Now+10,G6_6,KleurSelec(C_G6_6),Lijnsoort(GnLnTyp),Lverlng,Rverlng,TextInvul(Indic,'100 %',G6_6));
  If (Methode=7) Then
   Begin
    Trendlijn(AngStrt,RefDat,AngKrs,G1_6,KleurSelec(C_G1_6),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G2_6,KleurSelec(C_G2_6),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G3_6,KleurSelec(C_G3_6),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G4_6,KleurSelec(C_G4_6),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G5_6,KleurSelec(C_G5_6),LijnSoort(TypAnglLn),False,True);
    Trendlijn(AngStrt,RefDat,AngKrs,G6_6,KleurSelec(C_G6_6),LijnSoort(TypAnglLn),False,True);
   End;
  End;
 
//*************************

If (Methode <99) Then
  Begin
   {Lijn tussen de referentie punten}
    With CreateTrendLine(Datum1,KrsWrd1,Datum2,KrsWrd2) Do
     Begin
      Color := KleurSelec(KlrRef);
      Style := Lijnsoort(TypRef);
     End;
   
   {Verticale lijn}
   With CreateTrendLine(RefDat,RefKrs,RefDat,Vert) Do
     Begin
      Color := KleurSelec(KlrVrt);
      Style := Lijnsoort(TypVrt);
     End;
  End;
  
{Onderstaande Werkt alleen in W$-224, en is handig wanneer de parameter weergave is uitgeschakeld}
{$IFDEF SCRIPTVERSION-4}
  With CreateText(0,0,Instrument.ID+'  '+'Retracement www.JSTAS.com') Do
    Begin
      Y1Pct := PltsTXT;
      X1Pct :=  1;
      VertPosition := vpTop;
      Color:=KleurSelec(1);
      Font.Size:=9;
    End;
 {$ENDIF}

End.
En u weet 't , wilt u iets toegevoegd of aangepast zien, een e-mail is voldoende.
Vriendelijke groet,
JanS ;)

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » di aug 25, 2009 1:16 am

Sorry, vakantie, dus weinig input.

.
Korte update onder: http://www.jstas.com/2009/Dageljiks%20v ... fieken.htm
.
Vriendelijke groet,
JanS ;)
Vriendelijke groet,
JanS ;)

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » zo sep 27, 2009 10:33 pm

Inmiddels is de vakantie periode weer achter de rug.
Tijd om weer wat aan deze topic te gaan doen de komende tijd.
Vandaag eerst maar een korte update waarin ook met tools wordt gewerkt die in deze topic zijn vermeld.
Vanwege tijdgebrek maak ik de update voorlopig alleen nog maar wekelijks.
Wel onder de vaste link: http://www.jstas.com/2009/Dageljiks%20v ... fieken.htm
Onderbouwd commentaar is zoals altijd welkom, hier in deze topic of op het e-mail adres: jan@jstas.com
Veel leesplezier.
Vriendelijke groet,
JanS ;)

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » di jan 12, 2010 12:53 am

Sorry, ik moet nog steeds deze topic even ordenen / opruimen, gaat gebeuren :)

Ik had verwacht na September vorig jaar wat meer tijd ter beschikking te krijgen ... maar helaas... niet dus :(

Ik ben echt ... druk-druk-druk!

Ik zal proberen weer wat meer tijd vrij te maken voor de tijd en rust en vrijheid die mij in deze topic wordt gegund, waarvoor dank :)

Intussen had ik even een vraag voor de echte programmeurs hier, ik zit namelijk even te stoeien met het volgende 'probleem'.

Ik heb een serie, die per kalenderdag een bepaald getal in waarde afneemt, of in een ander geval toeneemt, logaritmisch in dit geval.

Die wil ik als lijn in W$ weergeven via ta-script.

Echter, de series in ta-script werken met koersbars, de indexteller loopt immers op met de er op volgende koersbar, en niet met de er op volgende kalenderdag.

Wat betreft de weekeinden is dat geen probleem, immers zodra DayOfWeek = 6 moet je even de 'weekendsprong' maken.

Op zich werkt dat goed, totdat ...

je de Paasdagen hebt,
je de Pinksterdagen hebt,
je de Kerstdagen hebt
Oud en nieuw,
Extra vakantie dag voor de beursjongens :)
etc. etc.

Nu kun je dat natuurlijk voor elk jaar gaan corrigeren, maar mijn vraag is: --> of ik op een eenvoudiger wijze een reeks die per kalenderdag verloopt kan omzetten naar / combineren met een reeks die alleen werkt met koers-dagen.

Stel: ik zet die lijn uit vanaf the High in Juli-2007, dan is het belangrijk waar die op dit moment ligt.
Daartussenin liggen echter diverse doordeweekse dagen waarop geen handel heeft plaats gevonden en waarvoor de weekendsprong geen oplossing biedt.
Ik wil daar graag een eenvoudige oplossing voor, vandaar mijn vraag.

Indien dit toch per jaar moet worden gecorrigeerd, is daar dan een handig foefje voor ?
Ik ben namelijk gek op handige foefjes :)

Zodra ik de indicator die ik in elkaar aan het frutselen ben werkbaar heb, plaats ik die hier even natuurlijk.

Wilt u reageren buiten het forum om --> Jan@Jstas.com

Alvast bedankt voor het meedenken,
.
Vriendelijke groet,
JanS ;)

Eric
Berichten: 3070
Lid geworden op: za sep 10, 2005 2:41 am
Locatie: Den Haag

Bericht door Eric » di jan 12, 2010 11:48 am

Janus,

Kun je niet uitgaan van de koersdagen (dus de dagen waarop er een koersbar is) ipv kalenderdagen? Dat is namelijk een zekere manier om alle feestdagen, terrorisme-aanslagdagen, beursstoringsdagen etc. niet mee te nemen. Dit werkt natuurlijk wel alleen als je geen referentiedatum buiten de koersbarreeks nodig hebt, maar ik zie geen eenvoudige mogelijkheden om dagnummers anders te corrigeren voor feestdagen.

---
Eric

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » do jan 14, 2010 12:42 am

Bedankt voor de tip Eric,
Ik bouw nu de reeks op tijdens het uitlezen van de koers-bars, en bereken de eventueel benodigde 'sprong' door middel van het uitlezen van de opeenvolgende TDateTime van de koersbar.
Indicator volgt komende dagen, ik zal er wat uitleg bij doen.
.
Vriendelijke groet,
JanS ;)

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » do jan 14, 2010 1:36 am

Versie 1.0 van de indicator is klaar, deze is gemaakt om wat te kunnen experimenteren met e.e.a.

De indicator kan de Jenkins TTL lijnen weergeven en lijnen welke exact volgens het SQ9 verlopen met daarop voor aanpassingen een eventuele deel-factor'
.
Een paar jaar geleden en vooral ook in 2006 heb ik veel over de Jenkins TTL lijnen laten zien, maar dat is verdwenen door een HD-crash, en inmiddels ook niet meer aanwezig op de diverse websites.
Wel vond ik het volgende stukje nog terug in een uithoek op mijn server:

*************************************************

TTL
12-April-2008
Wat is een TTL ?
Om dat uit te leggen gaan we eerst even terug naar Gann met zijn Square of Nine.
Wie even op mijn website kijkt onder het menu item columns komt daar een paar stukjes tegen betreffende het Square of Nine van Gann.
Hieronder ziet u het Square of Nine van Gann afgebeeld.

Figuur 1:
Afbeelding

Vanuit de stukjes weet u dat er een groeispiraal aanwezig is en dat elke rotatie van 360 graden in het square een getal oplevert welke een factor twee hoger ligt.
Immers: de wortel uit 34 geeft 5,83.
Tellen we twee op bij 5,83 dan geeft dat 7,83.
het kwadraat van 7,83 geeft 61,3 en dat is het getal wat 360 graden verder ligt in de groeispiraal ofwel net erboven.
Het Square of Nine is dus een mooie rekenmachine.
Tot zover even een "kort door de bocht" herhaling uit de genoemde stukjes.
De 360 graden cirkel om het square kunnen we zien als het rondje wat de aarde maakt in één jaar tijd om de zon.
365,24 dagen zijn dan 360 graden.
Ofwel, in één jaar tijd "groeit" de koers van bijvoorbeeld waarde 34 naar 61.
In plaats van groei komt er ook krimp voor natuurlijk.
Laten we eens zo'n lijn trekken in een grafiek van de AEX.
.
We nemen als uitgangsdatum even het bodempje van 22-Januari-2008 met een low die dag op 401,45
Laten we even uitgang van een groeifactor van 2 in een jaar tijd zoals in bovenstaand voorbeeld.
De wortel uit 401,45 geeft -> 20,036
Groeifactor 2 waaruit volgt 20,036 + 2 --> 22,036
het kwadraat van 22,036 geeft -> 485,59 als waarde voor over 1 jaar.
Dus we trekken een lijn vanuit de bodem op 22-01-2008 waarde 401,45 naar 485,59 een jaar later.
Die lijn ziet u weergegeven in het groen in grafiek 2.

Figuur 2:
Afbeelding

Mooi is te zien hoe deze lijn, getrokken vanuit 1 punt steun geeft aan de koers intraday op 17-Maart-2008.
Dit geeft ons de mogelijkheid om trendlijnen te trekken vanuit slechts één koerswaarde, een top of een bodem.
Waar het bij een normale trendlijn pas mogelijk is om deze te trekken zodra er meerdere bodems of toppen bekend zijn kan deze trendlijn getrokken worden zodra een bodem of top bekend is.
Bij de gangbare trendlijnen is er altijd discussie, de ene analist trekt de lijn door de slotkoersen, de andere analist door de low of high van de day, en weer een ander trekt de lijn hoe het hem/haar uitkomt, één en ander afhankelijk van zijn/haar humeur.
Met de lijn zoals berekent uit het Square of Nine kan niet worden gesjoemeld, en vandaar dat deze lijn dan ook de naam "True Trend Line" meekrijgt, afgekort TTL.
We kijken dus in principe naar een Gann lijn.
.
Het mooie van een TTL of Gannlijn is de unieke eigenschappen welke deze lijnen hebben.
Het is een combinatie van prijs en tijd, zoals ik ook al heb uitgelegd in mijn stukjes over de SRL lijnen.
De lijnen geven ver in de toekomst aan waar u een reactie van de koers mag verwachten, simpelweg om dat op bepaalde momenten prijs en tijd samenkomen.
Op de momenten waar prijs en tijd samenkomen mag u een reactie van de koers verwachten, het zijn die momenten waarop de koers van "persoonlijkheid" verandert; een stijging wordt omgezet in een daling, of een daling wordt omgezet in een stijging, of de mate van stijging of daling wijzigt ( koers gaat bijvoorbeeld ineens zijwaarts) enz. enz.
Op deze wijze wordt vooruit in de tijd aangegeven waar u bijvoorbeeld gaps kunt verwachten, of toppen of bodems.
.
Laten we eens het koersverloop van de afgelopen maanden bekijken door middel van deze TTL of Gann lijnen.
.
Als eerste zullen we natuurlijk even het idee los moeten laten, dat de koerswaarde van een aandeel of index of wat dan ook groeit of krimpt met de waarde factor-2 in een jaar tijd.
Het kan natuurlijk wel, maar zal meestal niet het geval zijn.
Beter is om diverse gangbare waarden, welke het aandeel of index of commodity in het verleden aanhing, uit te zetten voor de toekomst, en dat is één van de redenen waarom u in een Gann grafiek vaak een paar lijntjes extra ziet staan, en afhankelijk van de gelopen koers in het korte verleden de juiste lijn te pakken.
Met autorijden doet u in feite hetzelfde, u verwacht op de snelweg een snelheid van 100-120 Km/uur maar u past uw snelheid aan aan die waarde welke reëel is op het moment dat u op de snelweg rijdt ( als u tenminste een beetje slim bent ;-))
.
We pakken even als voorbeeld het koersverloop van het laatste kwartaal-2007 tot en met heden.
We zetten vanaf de top in oktober-2007 een dalende lijn uit, en vanaf de bodems daarna stijgende lijnen; allen berekent volgens het Square of Nine zoals boven weergegeven.
Dit geeft ons de volgende figuur waarbij ik even wat overbodige lijnen heb geschrapt.

Figuur 3:
Afbeelding

U ziet vanuit Oktober een dalende lijn met factor 4 en de stijgende lijnen hebben als factor 8.
Kijkt u eens rustig wat er gebeurt met de koers wanneer de lijnen elkaar ontmoeten, ofwel zoals Gann vertelde, wanneer de prijs sqaured met de tijd.
De factor 4 en de factor 8 zijn simpelweg waarden vanuit het korte verleden van het koers verloop.
Het "domweg" positie innemen alleen al op deze waarden geeft winst.
Combineer dit met de RSI en de CompositeIndex,en u begrijpt waarom ik niet begrijp dat er nog steeds (actieve) mensen verlies maken op de beurs.
.
Een volgende keer zal gaan over True-Trend-Channels en wanneer u Gaps kunt verwachten op basis van deze lijnen.
.
Bovenstaande geschreven naar aanleiding van vragen omtrent de update van afgelopen week.
.
Jammer dat veel van mijn materiaal van ruim twee jaar geleden verloren is gegaan.
Destijds liet ik al de volgende grafiek zien begin -2006.

Figuur 4:
Afbeelding

In deze figuur ziet u dat in een stijgende trend, een TTL (groene stijgende lijn ) in combinatie met voorgaande toppen het volgende reactie punt weergeeft.
Ik kom er wel weer een keer op terug.
.
Opmerkingen en vragen mogen naar Jan@JSTAS.com
.
Vriendelijke groet,
Jan ;)
.
Disclaimer: Voor alles op deze website geldt: het zijn slechts ideeën, verwachtingen en hersenspinsels. Ze hoeven niet te kloppen met de werkelijkheid. Handelen met deze gegevens op de beurs is derhalve voor eigen risico, en wordt afgeraden. U kunt daarbij al uw geld verliezen, en meer dan dat !!.
*
***********************************
Tot nu toe had ik nog geen indicator die exact de lijnen via het SQ9 weergaf, en werkte ik met de TTL lijnen als vermeld hierboven.
Berekeningen via het SQ9 deed ik dan via de calculator .
Dat zag er soms leuk uit.
Met onderstaande indicator kunnen we dit nu gaan invullen in de grafiek, zowel lineair als logartimisch, en kunnen we sneller en beter het nut van die weergave bekijken.
Ik kom daar t.zt. wel op terug..
Nog één opmerking, de indicator werkt in W$, maar ik heb hem nog niet getest in Alex.
.
.
17-01-2009 onderstaande code gewijzigd in versie 1.1
.

Code: Selecteer alles

{- Filename: J-TTL_SQ9-TTL -}
{ Auteur:  www.JSTAS.com }
//  Variatie op de TTL-lijn van Jenkins
//  doormiddel van een SQ9-TTL lijn
{ Version 1.1 }

Function KleurSelec(Selec:Integer): TColor;
 Begin
   case Selec of
     1:  Result := clAqua;
     2:  Result := clBlack;
     3:  Result := clBlue;
     4:  Result := clDkGray;
     5:  Result := clFuchsia;
     6:  Result := clGray;
     7:  Result := clGreen;
     8:  Result := clLime;
     9:  Result := clltGray;
     10: Result := clMaroon;
     11: Result := clNavy;
     12: Result := clOlive;
     13: Result := clPurple;
     14: Result := clRed;
     15: Result := clSilver;
     16: Result := clTeal;
     17: Result := clWhite;
     18: Result := clYellow;
     else
       Result := clGray;
   end;
End;
///
 Function Lijnsoort(Lijntype:Integer):TTrendLineStyle;
 Begin
  Case Lijntype of
    1: Result:=LsSolid   ;
    2: Result:=LsDash    ;
    3: Result:=LsDot     ;
    4: Result:=LsDashDot ;
    5: Result:=LsDashDotDot;
  End;
 End;
 //
Procedure FoutMeld(DtK:TDateTime;ClsP:Real;Kleur:TColor);
 Begin
  With CreateText(DtK,ClSP,'Onjuiste Datum ingave')Do
    Begin
      Color    := Kleur;
      Font.Size:= 15   ;
    End;
 End;
///

Var
StrtDate, DTrFct, EndDat, EndDat2, DtE, EndDat3 : TDateTime;
SQ9rks1  : TSeries;
Strtwrde,  Rksw, DTint, Multpl,Eindwrde, Cls, Eindwrde2  : Real;
i, StartDag, StartMaand, StartJaar, UpDown, jaar, maand, dag, factor,
TTLSQ, Schrk, KlrTTL, LtypTTL, Expi,Plaats, KlrNaam , Verl, LngtSQ9, LngSQ9 : integer;
Rknfctr  : Double;
Tekst, Verleng, JaarExtra, Reverse : Boolean;

Begin

Indicator.Newband    := False;
Indicator.ScaleRange := srCommon;
SQ9rks1    := CreateSeries(BarCount);
TTLSQ      := CreateParameterSelect  ('Jenkins of SQ9 lijn:','Jenkins TTL -lijn'#9'SQ9 TTL -lijn',1,False);
StartDag   := CreateParameterInteger ('Dag',1,31,13,False);
StartMaand := CreateParameterInteger ('Maand',1,12,7,False);
StartJaar  := CreateParameterInteger ('Jaar',1900,2100,2007,False);
UpDown     := CreateParameterSelect  ('Teken lijn:','Omlaag'#9'Omhoog',0,False);
Reverse    := CreateParameterBoolean ('Hoog-Laag omkeren ? ',False,False);
Factor     := CreateParameterSelect  ('Geef Duplic. factor op:','0,25'#9'0,5'#9'1'#9'2'#9'4'#9'8',2,False);
LngtSQ9    := CreateParameterSelect ('Lengte SQ9-TTL lijn: ','Zo lang mogelijk'#9'Zelf opgeven',0,False);
LngSQ9     := CreateParameterInteger('Lengte SQ9-TTL-lijn in kalenderdagen:',2,50000,365,False);
KlrTTL     :=1+CreateparameterSelect('Kleur Jenkins TTL-lijn','Aqua'#9'Black'#9'Blue'#9'DkGray'
                               #9'Fuchsia'#9'Gray'#9'Green'#9'Lime'#9'LtGray'#9'Maroon'#9'Navy'
                               #9'Olive'#9'Purple'#9'Red'#9'Silver'#9'Teal'#9'White'#9'Yellow',13,False);
LtypTTL    :=1+ CreateParameterSelect('Lijn-type 1X1 -lijn','Doorgetrokkenlijn'
                              #9'Gestreepte lijn'#9'Gestippelde lijn'#9'Streep-Stippel lijn'
                              #9'Streep-Stip-Stip-lijn',0,False);
Verl       := CreateparameterSelect('J-TTL lijnen verlengen tot: ','Niet verlengen'#9
                                            'Zo ver mogelijk'#9' 1 Jaar'#9' 2 Jaar'#9' 3 Jaar',0,False);

StrtDate   := Encodedate(StartJaar,StartMaand,StartDag);
expi       := CreateParameterInteger('Afwijking van Duplic. factor',1,200,100,False);
Tekst      := CreateParameterBoolean('Indicator-naam weergeven ?',True,False);
Plaats     := CreateParameterInteger('Plaats van naam in scherm',0,98,98,False);
KlrNaam    :=1+CreateparameterSelect('Kleur Indicator naam','Aqua'#9'Black'#9'Blue'#9'DkGray'
                               #9'Fuchsia'#9'Gray'#9'Green'#9'Lime'#9'LtGray'#9'Maroon'#9'Navy'
                               #9'Olive'#9'Purple'#9'Red'#9'Silver'#9'Teal'#9'White'#9'Yellow',13,False);
For i := 1 To (BarCount-1) Do
      Begin
        If Trunc(DateTime[i]) = Trunc(StrtDate) Then
          Begin
            If UpDown=0 Then Strtwrde := H[i];
            If UpDown=1 Then Strtwrde := L[i];
            If reverse Then
              Begin
                If UpDown=0 Then Strtwrde := L[i];
                If UpDown=1 Then Strtwrde := H[i];
                End;
          End;
        If i= (BarCount-1) Then
          Begin
            DtE := Trunc(DateTime[i]);
            Cls := Close[i];
          End;
      End;
      
If Strtwrde=0 Then FoutMeld(DtE-100,Cls,KleurSelec(13));
DTrFct    := StrtDate;
JaarExtra := False;
Verleng   := False;
Schrk     := 0;

Indicator.RequiredBars := Round(Date-StrtDate);

Case Factor of
  0: Multpl := 0.25 ;
  1: Multpl := 0.5 ;
  2: Multpl := 1.0 ;
  3: Multpl := 2.0 ;
  4: Multpl := 4.0 ;
  5: Multpl := 8.0 ;
End;
Multpl := Multpl*Expi/100.0;

For i := 1 To (BarCount-1) DO
  If (i=(Barcount-1)) Then EndDat3 := Trunc(DateTime[i]);
If (LngtSQ9=1) Then EndDat3 := StrtDate+ LngSQ9;

If (TTLSQ=1) Then
  Begin
    For i:=1 To (BarCount-1) Do
      Begin
        If (Trunc(DateTime[i])>=StrtDate)And((SQRT(Strtwrde)-(Rknfctr*DTint*Multpl))>0)And ( Trunc(DateTime[i])<= EndDat3) Then
          Begin
            DTint    := Trunc(DateTime[i]) - Trunc(DTrFct);
            RknFctr  := 2.0/365.0;
            DecodeDate(Trunc(DateTime[i]),jaar,maand,dag);
            If (( jaar/4.0)= (Trunc(jaar/4.0))) Then RknFctr := 2.0/366.0;
            If (UpDown = 1) Then RknFctr := (RknFctr*-1);
            Rksw     := SQR(SQRT(Strtwrde)- (Rknfctr*DTint*Multpl));
            Strtwrde := Rksw;
            SQ9rks1[i]:= Rksw;
            DTrFct   := Trunc(DateTime[i]);
          End;
      End;
    CreateLine(SQ9rks1).Color:=ClRed;
    
      {$IFDEF SCRIPTVERSION-4}
    If tekst Then
    Begin
     With CreateText(0,0,Instrument.ID+' SQ9-TTL') Do
      Begin
        Y1Pct := Plaats;
        X1Pct :=  1;
        VertPosition := vpTop;
        Color:=KleurSelec(KlrNaam);
        Font.Size:=9;
      End;
    End;
   {$ENDIF}
  End;

If (TTLSQ=0) Then
  Begin
    Eindwrde := SQR(SQRT(Strtwrde)-(2.0*Multpl));
    If (UpDown=1) Then Eindwrde :=SQR(SQRT(Strtwrde)+(2.0*Multpl));
    EndDat := StrtDate + 365;
    DecodeDate(Trunc(StrtDate),jaar,maand,dag);
    If (( jaar/4.0)= (Trunc(jaar/4.0))) Then Schrk :=1;
    DecodeDate(Trunc(EndDat+1),jaar,maand,dag);
    If (( jaar/4.0)= (Trunc(jaar/4.0))) Then Schrk :=1;
    If (Schrk=1) Then EndDat := StrtDate+366;
    DecodeDate(Trunc(EndDat),jaar,maand,dag);
    
    Case Verl Of
      0: EndDat  := EndDat;
      1: Verleng := True;
      2: Begin
            EndDat2 := EncodeDate(Jaar+1,Maand,Dag);
            Eindwrde2 := (Eindwrde-(Strtwrde-Eindwrde));
            JaarExtra := True;
         End ;
      3: Begin
            EndDat2 := EncodeDate(Jaar+2,Maand,Dag);
            Eindwrde2 := (Eindwrde-((Strtwrde-Eindwrde)*2));
            JaarExtra := True;
         End ;
      4: Begin
            EndDat2 := EncodeDate(Jaar+3,Maand,Dag);
            Eindwrde2 := (Eindwrde-((Strtwrde-Eindwrde)*3));
            JaarExtra := True;
         End ;
    End;

  With CreateTrendLine(StrtDate,Strtwrde,EndDat,Eindwrde) Do
    Begin
      Color := KleurSelec(KlrTTL);
      Style := Lijnsoort(LtypTTL);
      Extendright:= Verleng;
    End;


  If JaarExtra Then
    Begin
      With CreateTrendLine(EndDat,Eindwrde,EndDat2,Eindwrde2) DO
        Begin
          Color := KleurSelec(KlrTTL);
          Style := Lijnsoort(LTypTTL);
          Extendright := False;
        End;
    End;
      
     {$IFDEF SCRIPTVERSION-4}
    If Tekst Then
     Begin
      With CreateText(0,0,Instrument.ID+' Jenkins-TTL') Do
       Begin
        Y1Pct := Plaats;
        X1Pct :=  1;
        VertPosition := vpTop;
        Color:=KleurSelec(KlrNaam);
        Font.Size:=9;
       End;
     End;
   {$ENDIF}
  End;

end.

Het idee van bovenstaande indicator is om een variant aan te brengen op de TTL lijnen van Jenkins.
Zoals ik al in veel postingen heb laten zien hebben de TTL lijnen van Jenkins  "magische' eigenschappen.
De TTL lijnen van Jenkins verlopen in het kort als volgt:
Neem de wortel uit de koers van vandaag,trek er het getal twee vanaf, kwadrateer de uitkomst en u heeft het
getal voor de koerswaarde een jaar later.
U herkent dit wellicht vanuit mijn stukjes omtrent het SQ9
Vervolgens trekt u een trendlijn door het startpunt en de koerswaarde een jaar later.
Werkelijk verbazingwekkend welke signalen daaruit volgen.
Ik heb daar in het  verleden al zeer veel over neergezet op mijn site.
.
Als variant daarop, om te experimenteren,  wilde ik een script schrijven wat exact lijnen neerzet,
met een dagelijks verloop gebaseerd op het SQ9,
dus niet een moment opname nu en een opname een jaar later, maar een dagelijks bijgewerkte lijn,
volgens het SQ9 van dag tot dag, zolang de lijn loopt.
.
Deze verloopt wezenlijk anders dan de TTL lijnen zoals u zult begrijpen.
Ik heb deze indicator nu net vanavond geschreven, en ga ermee aan het werk, of het nut heeft ??!!??
De tijd zal het leren.
Bedenk, dat wie nooit iets uitprobeerd, ook niets zal leren.
Het uitproberen van ideeën zal soms wel leiden tot teleurstelling ... :(
Maar dommer wordt je er niet van volgens mij :)
Bovenstaande indicator is de eerste versie,  dus wees bedacht op fouten !!
.
Het is raadzaam om in de grafiek eigenschappen onder 'secties' te kiezen voor het NIET weergeven van de naam boven de grafiek.
Dit geeft bij meerdere lijnen een enorme rommel op uw scherm.
Deze indicator plaatst voor u de naam van de index of het aandeel.
.
Het lijn verloop volgens het SQ9 is eender, of u nu een lineaire of een logaritmische grafiek gebruikt,
de waarde voor elke dag wordt immers berekent en vastgelegd in een reeks.
Dit in tegenstelling tot de TTL lijnen, wat immers een lineaire lijn is welke getrokken wordt door begin en eindpunt.
Dus hier is er wel wezenlijk verschil bij een lineare of logartimische schaal verdeling.
.
In bovenstaande indicator kunt u kiezen of u een lijn wilt tekenen exact volgens het SQ9 of volgens de methode van Jenkins via het SQ9.
.
De TTL lijn is via de parameters van het indicator menu instelbaar wat betreft kleur of lijntype,
De SQ9 lijn kan via het grafiek indicator eigenschappen menu worden gewijzigd wat betreft kleur.
.
Opbouwende opmerkingen of suggesties zijn welkom en mogen naar jan@jstas.com of hier in deze topic.
.
Vriendelijke groet,
Jan :)
.


.
.
x
Laatst gewijzigd door Janus op ma jan 18, 2010 12:24 am, 1 keer totaal gewijzigd.
Vriendelijke groet,
JanS ;)

paulkr
Berichten: 379
Lid geworden op: ma jun 25, 2007 1:34 pm
Locatie: Den Bosch

Bericht door paulkr » do jan 14, 2010 2:18 pm

Janus,
Hartelijk dank voor de fantastische aanvulling en de duidelijke uitleg.
Ik volg de wekelijkse column van Cees de Vries en wilde de TTL in de AEX grafiek toevoegen om te zien of deze misschien een aankondiging van richtingverandering zou geven. Echter alvorens de TTL in de analyse te betrekken, heb ik getracht bovenstaande figuur 3 na te bootsen.
Met de standaard waardes vallen de TTL’s geheel anders uit zin WS, zoals je in onderstaand plaatje kunt zien. Gekozen startdatum van de TTL’s zijn:
opwaards: 16-8-2007 en 23-1-2008
neerwaards:13-7-2007
indicator settings: std waardes in het script zoals hier gepost

Enig idee waarom de lijnen anders uitvallen dan in de door jou geplaatste figuur 3?
Gr.Paul


Afbeelding

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » vr jan 15, 2010 12:27 am

PaulKr, als reactie op je opmerking:
.
Even een kort antwoordje, ik zal de lijnen een poosje meenemen in de weekend update zodat je kan zien hoe ik er mee werk, ik ben geen mens van korte antwoorden helaas .
Als eerste, de default waarde van de indicator moet je zien als uitgangspositie waar vanuit je gaat 'zoeken'.
De indicator is geen heilige graal maar sommige dingen werken erg leuk.
Neem bijvoorbeeld de mooie stijging vanaf Maart-2009.
De koer stijgt sterk vanaf die datum en je gaat dan op zoek naar bepaalde indicatoren die je punten van mogelijke steun kunnen geven, en op die punten kun je dan beslissingen neerleggen afhankelijk van de termijn en de wijze waarop je handelt.
Een stukje terug in deze topic staat bijvoorbeeld de volume gewogen steun -weerstand indicator.
We starten nu even als eerste met die indicator onder de stijgende koers vanaf Maart 2009.

Figuur 1:
Afbeelding

We zien dat de koers aangekomen bij de correctieve beweging in Juli-2009 keurig wordt opgevangen door de volume gewogen lijn.
Wat dan vaak gebeurd is dat men een trendlijn trekt onder de bodem van Maart-2009 en onder de bodem van Juli 2009.
In de volgende grafiek ziet u dit even ingetekend.

Figuur 2:
Afbeelding

Of moeten we die lijn als volgt onder de twee bodems doortrekken ?

Figuur 3:
Afbeelding

Daar zie je gelijk een probleem opduiken, welke trendlijn is nu juist, die in figuur 2 of die van figuur 3 ?
Zoiets werkt natuurlijk niet lekker ....
Ze gaan beiden door de twee genoemde bodems, enkel is de ene keer de grafiek weergegeven met een Logaritmische schaal verdeling en de keer erna met een lineaire schaal verdeling.
Zie je hoe mooi de volume gewogen steunlijn in beide grafieken op zijn plaats blijft ?
Zo'n rechte lijn werkt dus niet altijd even fijn, vandaar dat ik de indicator zo gemaakt heb dat je daarmee een lijn kan laten tekenen die groeit of krimpt volgens het "Square of Nine".
Nu zou het wel heel vreemd zijn wanneer een aandeel of index exact zou groeien volgens het Square of Nine.
Het is net als met de Gann-fann-lijnen, je moet een correctie factor toepassen.
Zou vindt je in mijn oudere werk Gann lijnen die exact passen met 1 punt per week, maar ook Gann lijnen die exact passen met 1 punt per koersbar.
Laten we in bovenstaande figuur nu eens die trendlijn weer verwijderen en er een SQ9 lijn uit de indicator ingooien.
Die SQ9 lijn starten we dan in op de bodem van Maart-2009 en leggen die onder de boden van Juli-2009 door.

Figuur 4:
Afbeelding

Die SQ9 lijn kunnen we dus leggen op deze wijze toen de koers afketste op de volume gewogen lijn in Juli 2009.
Mooi is om te zien hoe eind November 2009 de koers steun vond op deze SQ9 lijn.
Hoe plaats je deze lijn:

*Neem de indicator op in je grafiek met als start datum 9-Maart-2009, de bodem.
*Kies voor ómhoog tekenen'.
*Stel de duplicaat factor in zodat de lijn in de buurt van de bodem in Juli komt, dus factor 2.
*Daarna stel je de correctiefactor in, in dit geval kom je uit op116.
*En je ziet hoe mooi die SQ9 lijn als steun fungeert voor de toekomst.
.

Mooi man, en hoe loopt dat wanneer we de grafiek logaritmisch weergeven?

Figuur 5:
Afbeelding


Blijft mooi op z'n plek liggen.
Zou dat een belangrijk punt zijn voor dat moment daar in eind November-2009 waar de koers steun vond op die SQ9 lijn ?
Belangrijke punten zijn vaak die punten waar meerdere indicatoren 'samenkomen'.
Laten we even gek doen, en we gooien er nog een volume gewogen steunlijn bij zoals ik de afgelopen tijd wel in diverse grafieken heb laten zien.

Figuur 6:
Afbeelding

Te zien is dat dit punt een samenkomst was van de SQ9 lijn en de volume gewogen lijn, dus inderdaad een belangrijk punt.
En hoe ziet dit eruit in een linaire grafiek ?

Figuur 7:
Afbeelding

Idem, u ziet dat een berekende lijn mooier werkt dan een rechte lijn door zomaar twee punten.
.
Ik stop hier, ik moet nog e.e.a. voor mezelf doen, maar probeer zelf eens de TTL lijn uit te zetten vanuit Maart-2009 op de wijze van figuur 4 in de posting van 14-Januari-201 12:36
Teken, kijk en verwonder u ;)
Wanneer ik tijd heb voor een weekend update zal ik daarover wat meenemen.
Ook zal ik de komende tijd wat meer TTL- grafieken meenemen in mijn korte stukjes zodat je kan zien hoe ik er mee werk.
.
Bedankt voor je opmerking over deze indicator, zelf heb ik al enkele dingen ontdekt die ik nog ga aanpassen, wanneer je ook wat gewijzigd en/of aangepast wilt zien, graag commentaar.

Vriendelijke groet,
Jan ;)
.
Disclaimer: Voor alles op deze website geldt: het zijn slechts ideeën, verwachtingen en hersenspinsels. Ze hoeven niet te kloppen met de werkelijkheid. Handelen met deze gegevens op de beurs is derhalve voor eigen risico, en wordt afgeraden. U kunt daarbij al uw geld verliezen, en meer dan dat !!.
Vriendelijke groet,
JanS ;)

paulkr
Berichten: 379
Lid geworden op: ma jun 25, 2007 1:34 pm
Locatie: Den Bosch

Bericht door paulkr » vr jan 15, 2010 2:18 pm

Janus,

Bedankt voor de reactie en toelichting hoe de lijnen te plaatsen.
Het zoeken naar de juiste punten voor de TTL van maart 2008 tot heden met behulp van de gewogen steun-weerstand werkt goed.
Ben er nog niet helemaal uit hoe dit het best toe te passen vanaf de bodem maart 2003 en de top in 2007 (de beweging is niet zo rechtlijnig als die vanaf maart 2009).

Tijdens het experimenteren viel overigens op dat de functie “TTL verlengen?” niet de lijn afkapt, waardoor het moeilijk wordt om deze indicator in dezelfde grafiek binnen verschillende periodes te plaatsen. Dit tot tegenstelling van dezelfde functie binnen de gewogen steun-weerstandslijn, waarbij het mogelijk is de lengte van de lijn handmatig op te geven.

Ik kijk uit naar je volgende weekend update .
Gr paul

Afbeelding

paulkr
Berichten: 379
Lid geworden op: ma jun 25, 2007 1:34 pm
Locatie: Den Bosch

Bericht door paulkr » za jan 16, 2010 2:21 pm

Janus,
Heb de TTL in de DJ-index geplaatst en de richtpunten gezocht met de gewogen steun – weerstandslijn. De koersen dansten mooi mee en bleven boven de lijn tm half december.
Ben benieuwd naar je interpretatie van de beweging rond half december, waar de koers de TTL breekt en waarbij een reactie van de koers uitblijft.

Na een periode van stijging volgt altijd een daling, de vraag is echter vanaf wanneer.
Persoonlijk had ik een koers reactie verwacht op het moment dat de TTL wordt gebroken.
Wat is jouw ervaring / analyse hieromtrent?

Gr.Paul

Afbeelding

Janus
Berichten: 1293
Lid geworden op: wo jan 30, 2008 2:07 am
Contacteer:

Bericht door Janus » ma jan 18, 2010 1:25 am

@ PaulKr;

Als eerste even een opmerking over de volume gewogen lijnen in je grafieken.
Volgens de theorie van Dr. Levine kun je deze het beste plaatsen door op de startdatum de gemiddelde prijs op te geven.
Ik werk zelf ook wel met laagste of hoogste prijs, maar dan voor de korte termijn.
In mijn bovenstaande grafieken werkt het korte lijntje met de laagste koers.
Wanneer de koers niet direct met hoge snelheid afscheid neemt van het startpunt dan werkt dit lijntje van de low vaak zeer goed.
Voor de langere termijn werkt de gemiddelde prijs zeer goed.

Dan het volgende na aanleiding van diverse e-mail:
*
Ik heb de TTL indicator aangepast, de namen zijn iets gewijzigd en het is nu mogelijk de lengte van de lijnen op te geven, voor de dagelijks berekende SQ9-TTL-lijn kan dit per dag, en voor de Jenkins TTL-lijn kan dit per jaar.
De code in de topic hierboven heb ik dan ook vervangen door versie 1.1 .

Verder is het nu mogelijk de plaats van de indicatornaam op te geven en ook de kleur van de tekst van de indicatornaam.

Verder merk ik uit de div. mail dat een en ander verwarring op gaat leveren.
Daarom even het volgende:

We hebben tot nu toe in deze topic drie soorten lijnen:
1.) Gann lijnen (SRL-lijnen)
2.) Jenkins TTL-lijnen
3.) SQ9-TTL-lijnen

1.) Gann lijnen:
Gann lijnen zijn lineaire lijnen die groeien met een bepaalde prijs-eenheid per tijd-eenheid.
Kunst hierbij is de waarde van de prijs-eenheid en die van de tijd-eenheid juist in te schatten.
Er zijn diverse methoden om het toekomstig verloop van deze lijnen in te schatten tijdens de opbouw van de trendbeweging, maar daar ga ik een andere keer op in, ik wil ook bijtijds de bestee in ;)
Edson Gould heeft een toepassing van de Gann lijnen omgevormd naar SRL lijnen.
Ook hierbij is het mogelijk om tijdens de opbouw van de trendmatige beweging het mogelijke toekomstige verloop van deze Gannlijnen in te schatten, een dagelijks voorbeeld hiervan ziet u op de website van Mitzi --> http://www.bullnochbear.com/ waar dit tot een ware kunst is verheven.
Waarom de SRL lijnen afkomstig zijn vanaf de Gann lijnen kunt u onder andere lezen in de link: http://www.jstas.com/GT144/Fibo-Gann-EW.htm
*********
2.) De Jenkins TTL lijnen zijn lineaire lijnen waarvan het verloop als volgt wordt bepaald:
Het begin punt is de koerswaarde op de start datum.
Het eindpunt wordt berekent via het Square of Nine een jaar later.
Dus de einddatum is een jaar later en de prijs is de koersstijging of daling 360-graden verder in het SQ9.
Door een lijn door deze twee punten te trekken ontstaat een rechte-lineaire lijn.
verlenging van deze lijn volgt door gewoon deze lijn met de voorgaande daling of stijging per tijdeenheid door te trekken.
Verschillende lijnen kunnen worden verkregen door per tijdeeheid van een jaar een gedeelte van de 360 graden af te legen in het SQ9 of door meer dan 360 graden af te leggen in het SQ9.
Voor uitleg omtrent het SQ9 kijkt u even onder de link: --> http://www.jstas.com/columns.htm
Denkt u er vooral even aan !!! om bij toepassing van de Jenkins-TTL-lijnen ervoor te zorgen dat uw grafiek eigenschappen staan ingesteld op Werkdagen en de grafiek weegave lineair is ( dus vinkje uit bij logaritmisch)
Een logisch iets, maar u zou het zomaar even over het hoofd kunnen zien, nietwaar'?
*********************************************
3.) SQ9-TTL-lijnen
Dit is een variatie op de Jenkins TTL-lijnen.
De Jenkins TTL lijnen zijn lineaire lijnen die door twee snijpunten gaan en daarna gewoon lineair verder lopen.
De SQ9 - TTL - lijnen worden echter per dag berekend aan de hand van het aantal afgelegde graden in het SQ9.
Dit levert een gebogen lijn op, die ook na een jaar gewoon verder per dag volgens het SQ9 berekent wordt, wat mij wat realistischer overkomt.
*
**
Dan waren er mails omtrent de correctiefactor.
De getallen van de correctiefactor lijken nu nog 'onzinnig' ; ik zal de formule berekening wat wijzigen zodat er op die plek een logischer correctie-getal tevoorschijn komt, want die is er :)
.
Wanneer nu deze correctie factor te gebruiken, waarbij op dit moment nog de waarde 100 staat voor geen correctie?
.
Ik wil nu even kort zijn, want de bedstee roept steeds harder ...
.
Bij het gebruik van de Jenkins TTL lijnen om via de kruisingen ervan mogelijk belangrijke koers-keer-data in te schatten werk ik alleen met factor en laat de correctie op 100 staan.
.
Bij het gebruik van een enkele Jenkins TTL lijn om vandaar uit via voorgaande toppen of bodems de toekomstige omkeer in de koerstrend in te schatten, gebruik ik in eerste instantie de factor, en pas ik de correctie toe om vanuit de eerste bodem of top connectie te krijgen via de volgende bodem of top.
De uitkomst hiervan gaat dan meestal perfect op voor het vervolg van de rest van die trend.
.
De SQ9-TTL-lijn gebruik ik als een soort trendlijn.
Deze lijn wordt onder twee bodems gelegd, door middel van de factor en de correctie daarop en blijkt daarna diverse bodems perfect met elkaar te verbinden waaruit weer blijkt dat Gann zijn stelling dat toppen en bodems mathematisch met elkaar zijn verbonden; perfect klopt.
Die correctie daar kom ik nog op terug de komende tijd, die is niet willekeurig zoals u wellicht denkt.
.
Ik had grafieken beloofd omtrent een en ander,
echter hier bij mij geldt:
Prioriteit 1 = Privé zaken
Prioriteit 2 = Eigen beurshandel (eigen grafiek werk etc..)
Prioriteit 3 = Werk voor anderen, zoals U.
U valt onder prioriteit 3, en omdat de voorgaande prioriteiten teveel tijd in beslag namen dit weekend schiet U er helaas een beetje bij in wat grafiek werk betreft ... :)

Uitstel wordt echter geen afstel in dit geval, u moet echter wat meer geduld hebben.

Het lijkt mij dat u met bovenstaande en een beetje goede wil al wel vooruit kunt, de rest beloof ik u voor later.
.
E-mail is altijd welkom, maar bij de hoeveelheid van afgelopen week krijgt u niet meer altijd persoonlijk antwoord.
Ik verwerk dan de antwoorden in de tekst, zoals hierboven.
.
Stay tuned, er komt meer ...
.
Vriendelijke groet,
JanS ;)

paulkr
Berichten: 379
Lid geworden op: ma jun 25, 2007 1:34 pm
Locatie: Den Bosch

Bericht door paulkr » di jan 19, 2010 11:54 am

Janus, bedankt dat je wat tijd hebt vrijgemaakt om een reactie te plaatsen
Zeer gewaardeerd.
Gr.Paul

paulkr
Berichten: 379
Lid geworden op: ma jun 25, 2007 1:34 pm
Locatie: Den Bosch

Bericht door paulkr » za jan 23, 2010 3:05 pm

Eric,

WS plaatst standaard de naam en instellingen van de indicator links boven in het koersscherm.
Gezien de vele parameters van de gewogen steun – weerstandslijn sneeuwt de koerslijn nogal eens onder, na het plaatsen van enkele van deze lijnen.
Is er een mogelijkheid om de naam & instellingen (selectief) onzichtbaar te maken in WS?

Gr Paul

voorbeeld
Afbeelding

Plaats reactie