EasyTrader ArtNo 051
拉瑞·威廉姆斯是威廉指標(W&R)的創始人,當今美國著名的期貨交易員、作家、專欄編輯和資產管理經紀。他是羅賓斯杯期貨交易冠軍賽的總冠軍。在不到十二個月的時間裏使1萬美金變成了110萬美金。他就職於美國國家期貨協會理事會,並曾在蒙大拿州兩次競選國會議員。在過去的25年裏,他是始終被公眾追隨的優秀投資顧問之一,曾多次被《巴倫斯》雜誌、《華爾街日報》、《福布斯》雜誌和《財富》雜誌專訪過。著有《短線交易秘訣》一書。本策略為其另一種價格波動策略(開盤價+ 前三日最大波動區間的百分比)
原文的邏輯比較為:
1.當日低點與前三日高點價差(動能)
2.前一日高點與三日前低點價差 ,兩者取其大作為波動範圍的參考,再乘上一百分比加上隔日開盤價就成為買賣訊號上下通道
{原作為日線交易 ,改為 15分/30分/60分K 留倉 ,來回成本 1200 ,回測期間 2001~2013/10/31}
{15min K}
inputs: LongEntryR(1.2),LongExitR(1.3),ShortEntryR(0.6),ShortExitR(0.3),HLRange(100) ;
{30min K}
{inputs: LongEntryR(1.2),LongExitR(1.3),ShortEntryR(0.6),ShortExitR(0.3),HLRange(70) ;}
{60min K}
{inputs: LongEntryR(1.2),LongExitR(1.3),ShortEntryR(0.6),ShortExitR(0.3),HLRange(70) ;}
Vars: VE(0),MP(0),isBalanceDay(false);
MP = MarketPosition ;
if DAYofMonth(Date) > 14 and DAYofMonth(Date) < 22 and DAYofWeek(Date)= 3 then isBalanceDay = True else isBalanceDay =False ;
if date <> date[1] then Begin
if DataCompression > 1 then Begin
Value1 = AbsValue(High[4]-Low[1]) ;
Value2 = AbsValue(High[2]-Low[4]) ;
end else Begin
Value1 = AbsValue(HighD(4)-LowD(1)) ;
Value2 = AbsValue(HighD(2)-LowD(4)) ;
end;
end;
VE = MaxList(Value1,Value2) ;
if VE >= HLRange and VE < 240 then Begin
{if Open + VE*LongEntryR > MinList(HighW(1),HighW(0)) then}
Buy at Open + VE*LongEntryR stop ;
{exitlong}
{exitlong}
Sell at Open - VE*LongExitR stop ;
{if Open -VE*ShortEntryR < MaxList(LowW(1),LowW(0)) then}
{if Open -VE*ShortEntryR < MaxList(LowW(1),LowW(0)) then}
Sell at Open-VE*ShortEntryR stop ;
{exitshort}
{exitshort}
tks
回覆刪除作者已經移除這則留言。
回覆刪除請教,Buy at Open + VE*LongEntryR stop<=是不是要改成 buy at open of next bar+VE*LongEntryR stop才對ㄚ???
回覆刪除這個跟平均振幅文章的寫法是不同
回覆刪除Buy at Open + VE*LongEntryR stop (這根 K棒 Open Price )
buy at open of next bar+VE*LongEntryR stop (下一根 K棒 Open price)
請問 Buy at Open + VE*LongEntryR stop 在mc中會編譯錯誤
回覆刪除是不是要改成Buy next bar at Open + VE*LongEntryR stop
是的
回覆刪除簡單卻可以經得起長期考驗的策略 真棒
回覆刪除