Breakout Systeem

Stel hier uw vragen over TA-script, of help anderen met het oplossen van hun probleem
Plaats reactie
Rombout Kerstens
Berichten: 54
Lid geworden op: wo sep 14, 2005 6:27 pm
Locatie: Delft (Kantoor Keyword)
Contacteer:

Breakout Systeem

Bericht door Rombout Kerstens » do dec 04, 2014 4:09 pm

Onlangs gaf ik weer een workshop betreffende 'Turtle Trading'. Er waren weer veel vragen over de entry en exit signalen in Wall Street, Alex Pro en Binck ProTrader.

Bij deze een TA-script breakout-indicator die aansluit op de 'Turtle Trading' methodiek zoals die ook wordt beschreven in het boek 'Praktijkgids Indicatoren'.

Dit boek met een uitgebreide beschrijving van 'Turtle Trading' is te bestellen via: http://keyword.abostore.nl/Catalog/Boeken

'Turtle systeem 1' heeft de standaard parameters: 10,20 (dagkoersen)
'Turtle systeem 2' (langere termijn) heeft de parameters: 20,50 (dagkoersen)

Het systeem gaat sequentieel long en short. Na een exit wordt dus gewacht op de volgende valide breakout.

LET OP! Het turtle trading money management is NIET verwerkt in de indicator. Het is dus uitsluitend een hulpmiddel om de entry en exit te vinden. Backtesten geeft dus GEEN realistische resultaten.

Met dank aan Eric Jansen voor de code:

Code: Selecteer alles

{- Filename: Breakout system -}

var
  nKort, nLang, i: integer;
  sHiKort, sHiLang, sLoKort, sLoLang: TSeries;
begin
{ Parameters }
  nKort := CreateParameterInteger('Korte periode', 1, 999, 10, true);
  nLang := CreateParameterInteger('Lange periode', 1, 999, 20, true);

{ Indicator eigenschappen }
  with Indicator do 
  begin
    RequiredBars := nLang;
    NewBand := false;
    ScaleRange := srCommon;
  end;

{ Berekening }
  sHiKort := HighSeries(High, nKort);
  sHiLang := HighSeries(High, nLang);
  sLoKort := LowSeries(Low, nKort);
  sLoLang := LowSeries(Low, nLang);

{ Signalen }
  for i:=FirstValidIndex(sHiLang)+1 to BarCount-1 do
  begin
    if Close[i] > sHiLang[i-1] then EnterLong(i) else
      if Close[i] < sLoLang[i-1] then EnterShort(i) else
        if Close[i] < sLoKort[i-1] then ExitLong(i) else
          if Close[i] > sHiKort[i-1] then ExitShort(i);
  end;

{ Weergave }
  with CreateLine(sHiLang) do
  begin
    Name := 'Hi lang';
    Color := clSilver;
  end;
  with CreateLine(sLoLang) do
  begin
    Name := 'Lo lang';
    Color := clSilver;
  end;
  with CreateLine(sHiKort) do
  begin
    Name := 'Hi kort';
    Color := clYellow;
  end;
  with CreateLine(sLoKort) do
  begin
    Name := 'Lo kort';
    Color := clYellow;
  end;
end.

Plaats reactie