door ReneV » ma 19 mei 2003, 17:57
Ik heb de" Close < Close[LT2] AND Close > Close[LT1 + LT2] " er in gebakken, maar de resultaten zijn beroerd. Minder dan 20% winnende trades op de dax. Hou het maar bij het origineel, voeg er wat stops en targets aan toe, eventueel nog een break even stop. Bij futures data zorgt een limit order voor een lagere drawdown in een vlakke markt. Voor de "Range" kun je ook de "TrueRange" gebruiken.
De enige min van het ROC Trend systeem is dat het soms de boot mist. De Roc kruising heeft soms reeds plaatsgehad voordat de koers het trend gemiddelde is gepasseerd. PMult is een schaal factor, zodat het ook op andere data te testen is.
----------------- let op TRADESTATION code ----------------
Inputs: RocAvgL(10), RocL(50), TrendL(100);
Inputs:LT1(40), LT2(11);
Inputs:ST1(40), ST2(11);
Inputs:SmoothL(10), LLimit(1.0), SLimit(1.0), VolatilityL(10);
Inputs:LTargetPts(10), STargetPts(10);
Inputs: LStpPts(0.6), LBepAPts(1.00), LBepBPts(0.01), SStpPts(0.6), SBepAPts(1.00), SBepBPts(0.01);
Inputs:PMult(100);
Variables: ?Smooth(0), Roc(0), Avg(0), Trend(0);
Variables: ?Atr(0), LStop(0), SStop(0);
Variables:LBep(False), SBep(False);
Smooth = XAverage((High+Low)*0.5, SmoothL);
Avg = XAverage(Close, RocAvgL);
Roc = Momentum(Avg, RocL);
Trend = XAverage(Close, TrendL);
If Marketposition = 1 Then
Begin
{ Break even stop }
If Close > Entryprice + LBepAPts * PMult Then
LBep = True;
If LBep Then
ExitLong ("L-Bep") Entryprice + LBepBPts * PMult Stop;
{ Profit Target }
Exitlong ("L-PT") Entryprice + LTargetPts * PMult Limit;
{ Stop Loss }
ExitLong ("L-Stp") Entryprice - LStpPts * PMult Stop;
End;
If Marketposition = -1 Then
Begin
{ Break even stop }
If Close < Entryprice - SBepAPts * PMult Then
SBep = True;
If SBep Then
ExitShort ("S-Bep") Entryprice - SBepBPts * PMult Stop;
{ Profit Target }
ExitShort ("S-PT") Entryprice - STargetPts * PMult Limit;
{ Stop Loss }
ExitShort ("S-Stp") Entryprice + SStpPts * PMult Stop;
End;
If (Marketposition <> 1 AND Close > Trend AND Roc Crosses Above 0) Then
{If (Marketposition <> 1 AND Close > Trend AND Close < Close[LT2] AND Close > Close[LT1 + LT2] AND Roc Crosses Above 0) Then}
Begin
Buy ("L-Roc-1") Smooth + LLimit * XAverage(Range, VolatilityL) Limit;
LBep = False;
End;
If (Marketposition <> -1 AND Close < Trend AND Roc Crosses Below 0) Then
{If (Marketposition <> -1 AND Close < Trend AND Close > Close[ST2] AND Close < Close[ST1 + ST2] AND Roc Crosses Below 0) Then}
Begin
Sell("S-Roc-1") Smooth - SLimit * XAverage(Range, VolatilityL) Limit;
SBep = False;
End;
Groetjes Ren