Юрий Иванович (jc_trader) wrote,
Юрий Иванович
jc_trader

Лучшая система из FuturesTruthMagazine?

На сайте Futures Truth Magazine есть рейтинг лучших фьючерсных торговых систем всех времен и народов. На первом месте система "Dual Thrust".

----------------------------------------
Top 10 Systems Since Their Release Date
Issue #3 2009 - published in July 2009

Annual % Return

1. Dual Thrust 364.4%
2. Auto Core Duo 172.8%
3. Impetus SP 169.5%
...
--------------------------------------------

Полистав интернет, обнаружил код этой системы для Трейдстейшн. Он вот такой:



Code:
Inputs: K1(.5),K2(.5),Mday(1),Nday(1);
Vars: BuyRange(0), SellRange(0);
Vars: BuyTrig(0),SellTrig(0);
Vars: HH(0),LL(0),HC(0),LC(0);

If CurrentBar > 1 Then Begin
HH = Highest(High,Mday);
HC = Highest(Close,Mday);
LL = Lowest(Low,Mday);
LC = Lowest(Close,Mday);

If (HH - LC) >= (HC - LL) Then Begin
SellRange = HH - LC;
End Else Begin
SellRange = HC - LL;
End;

HH = Highest(High,Nday);
HC = Highest(Close,Nday);
LL = Lowest(Low,Nday);
LC = Lowest(Close,Nday);

If (HH - LC) >= (HC - LL) Then Begin
BuyRange = HH - LC;
End Else Begin
BuyRange = HC - LL;
End;

BuyTrig = K1*BuyRange;
SellTrig = K2*SellRange;

If MarketPosition = 0 Then Begin
Buy at Open of next bar + BuyTrig Stop;
Sell at Open of next bar - SellTrig Stop;
End;

If MarketPosition = -1 Then Begin
Buy at Open of next bar + Buytrig Stop;
End;

If MarketPosition = 1 Then Begin
Sell at Open of next bar - SellTrig Stop;
End;

End;



Но что то сомнительно. Наверное дезинформация, судя по результатам. Хотя, если параметры настроить, может что и получится?

переписал код для WLD3.

Code:

{#OptVar1 1;1;10;1}
var Bar, p, Mday, Nday, K1, K2: integer;
var HH, HC, LL, LC, SellRange, BuyRange, BuyTrig, SellTrig: float;
var bLongSAR: boolean;
Mday := #OptVar1;
Nday := #OptVar1;
K1 := 5/10;
K2 := 5/10;

for Bar := 20 to BarCount - 1 do
begin

HH := Highest(bar-1, #High, Mday);
HC := Highest(bar-1, #Close, Mday);
LL := Lowest(bar-1, #Low, Mday);
LC := Lowest(bar-1, #Close, Mday);

if (HH - LC) >= (HC - LL) then
SellRange := HH - LC
else
SellRange := HC - LL;

HH := Highest(bar-1, #High, Nday);
HC := Highest(bar-1, #Close, Nday);
LL := Lowest(bar-1, #Low, Nday);
LC := Lowest(bar-1, #Close, Nday);

if (HH - LC) >= (HC - LL) then
BuyRange := HH - LC
else
BuyRange := HC - LL;

BuyTrig := K1 * BuyRange;
SellTrig := K2 * SellRange;


if LastPositionActive then
begin
p := LastPosition;
bLongSAR := PositionLong( p );
if PositionLong( p ) then
begin
SellAtStop( Bar, PriceOpen(bar) - FloatToStr(SellTrig), p, '');
end;
if PositionShort( p ) then
begin
CoverAtStop( Bar, PriceOpen(bar) + FloatToStr(BuyTrig), p, '');
end;
end;
if not bLongSAR then
begin
BuyAtStop(bar, PriceOpen(bar) + BuyTrig, '');
end;
if bLongSAR then
begin
ShortAtStop(bar, PriceOpen(bar) - SellTrig, '');
end;
end;





Subscribe

  • 14 comments
  • 14 comments

Comments for this post were locked by the author