2015年4月9日 星期四

開發商品的交易系統 - 基礎篇 [35]

EasyTrader ArtNo 259
本篇文章我們要來介紹一個由 Art Putt所創建的短期振盪指標,它主要是想捕捉K棒價格的變化基本公式如右 ((TrueHigh - Open) + (Close - TrueLow)) / (2 * TrueRange)。
從圖中可以看到,黃色指標快速的在 0 到 1的範圍之間來回振盪,是一個非常活躍的指標,而讓指標要達到數字 1,唯一的方式是開盤價等於真實區間的低點,且收盤價是真實區間的高點;相反來說,若指標要到達 0 的位置則是,開盤價等於真實區間的高點,且收盤價等於真實區間的低點,換言之, K棒在開盤後,指標出現直上直下的狀況,暗示著強力的價格波動。
從初步的觀察中,發現0.7與0.3是兩個重要的參考數字 - 當指標值由下而上穿越0.3時,適合買進作多 ,當指標由上而下與0.7交叉時適合作空進場價格可以是當根K棒收盤價,或是下一根K棒的開盤價,或是限價單,當然隨著交易的商品不同,參考的指標值也可以作改變。

接下來我們就一起來針對此策略元素作個測試
系統參數與變數
input:ExitType(4);
inputs:NBarL(24),NBarS(19),TradeProfit(0.045),TradeStopLoss(0.05),ATRs_L(10.7),ATRs_S(6.4);
vars: IsBalanceDay(False),MP(0),PF(0),PL(0),HLRange(100);

Inputs: BuyLev(.30), SellLev(.70);
Variables: SROSc(0), HiOsc(0), LoOsc(0);

MP = MarketPosition ;

if DAYofMonth(Date) > 14 and DAYofMonth(Date) < 22 and DAYofWeek(Date)= 3 then isBalanceDay = True else isBalanceDay =False ;

PF = AvgPrice*TradeProfit ;
PL = AvgPrice*TradeStopLoss ;

{calculation of the Support/Resistance value}
If TrueRange <> 0 Then SROSc = ((TrueHigh - Open) + (Close - TrueLow)) / (2 * TrueRange);

{Stop Setup}
If MP <> 1 Then Begin
If SROsc Crosses Below BuyLev Then LoOsc = SROsc;
If SROsc < BuyLev AND SROsc < LoOsc Then LoOsc = SROsc;
End;

If MarketPosition <> -1 Then Begin
If SROsc Crosses Above SellLev Then HiOsc = SROsc;
If SROsc > SellLev AND SROsc > HiOsc Then HiOsc = SROsc;
End;

{Long Entry}
if EntryType = 1 then begin
If MP <> 1 and SROsc Crosses Above BuyLev Then Buy Next Bar at Market;

{Short Entry}
If MP <> -1 and SROsc Crosses Below SellLev Then Sell Next Bar at Market;
end;

{Exits}
if ExitType = 1 then SetStopLoss(PL * BigPointValue) ;

if ExitType = 2 then Begin
SetStopLoss(PL * BigPointValue) ;
setProfitTarget(PF * BigPointValue) ;
end;

if ExitType = 3 then Begin
if MP > 0 and BarsSinceEntry = NBarL then ExitLong next bar at Market ;
if MP < 0 and BarsSinceEntry = NBarS then ExitShort next bar at Market ;
end;

if ExitType = 4 then Begin
SetStopLoss(PL * BigPointValue) ;
setProfitTarget(PF * BigPointValue) ;
if MP > 0 and BarsSinceEntry = NBarL then {Sell } ExitLong next bar at Market ;
if MP < 0 and BarsSinceEntry = NBarS then {Buy} ExitShort next bar at Market ;
end;

if IsBalanceDay or date = 1150224 then setExitonClose ;
台指期 30 min K 多空留倉 交易週期 2004/12/31~ 2014/12/31 交易成本 1200 

加上如意多空網  台指期 30 min K 多空留倉 交易週期 2004/12/31~ 2014/12/31 交易成本 1200
結論:本篇透過開盤價/收盤價與真實區間高低點的快速波動來尋找進場點 ,而指標參考的範圍是以接近波動的極限值內來定義,策略構思來自於 TS策略集,有需要其他更多元素的讀者請參考此篇連結下載
MagicQS167

沒有留言:

張貼留言