2014年11月7日 星期五

★雙布林通道(台指期)

《Wen外期策略團隊》
簡單利用快慢兩個不同的布林通道分別控制進出場的簡單系統,以下是台指期的測試,供讀者練習。

回測設定:

●商品:TXF@60K(修正換月價差的歷史資料)
●手續費設定:單邊500元 (來回1000元)
●回測時間:2003/1/21~2014/10/13
●其他:只測試多單。
指標:(白色是慢布林進場點,黃色為快布林出場點)



文章程式碼參考Active trader網站

Code:

vars:SlowerLB(0),FasterLB(0),LongBase(0),ShortBase(0),LongRisk(0),ShortRisk(0);

//For the Bollinger-band system (group A):


SlowerLB = 18; //(36, 72)
FasterLB = 12; //(24, 48)
LongBase = Average(Close, SlowerLB) + StdDev(Close, SlowerLB) * 2.2;
ShortBase = Average(Close, SlowerLB) - StdDev(Close, SlowerLB) * 2.2;
LongRisk = LongBase - Average(Close, FasterLB);
ShortRisk = Average(Close, FasterLB) - ShortBase;

//For the Donchian systems (group B):


{
SlowerLB = 18; //(36, 72)
FasterLB = 12; //(24, 48)
LongBase = Highest(High, SlowerLB);
ShortBase = Lowest(Low, SlowerLB);
LongRisk = LongBase - 0.5 * (Highest(High, FasterLB) + Lowest(Low, FasterLB));
ShortRisk = 0.5 * (Highest(High, FasterLB) + Lowest(Low, FasterLB)) - ShortBase;
}


//Shared code:

vars:EntryLevel(0),ExitLevel(0);
If EntriesToday(date) < +1 Then begin
EntryLevel = LongBase;
ExitLevel = LongBase - LongRisk;

end

Else begin

EntryLevel = EntryLevel[1];
ExitLevel = maxlist(LongBase - LongRisk, ExitLevel[1]);

end;

If marketposition=0 then begin
buy next bar at EntryLevel stop;
// sellshort next bar at Entrylevel stop;
end;

If marketposition=1 then begin
sell next bar at ExitLevel stop;
end;

回測結果:Screen Shot 2014-10-13 at 10.50.16 AM.pngScreen Shot 2014-10-13 at 10.50.09 AM.png


Screen Shot 2014-10-13 at 10.50.22 AM.png





0 留言:

張貼留言

如果有私人問題想請教,請透過網站右方『與站長聯絡』之表單,謝謝!

----------------------------------------------------------------------------------------------------
網站聲明(Disclaimer)
本教學網站內所提供之程式碼(包括函數、指標、訊號)屬開放程式碼,用意在於讓使用者學習程式語法之撰寫,使用者可以任意修改語法內容並調整參數。本網站所有之內容(包括文章、影片、歷史紀錄、程式碼、教材)限用於個人學習使用,請勿轉寄、濫用,嚴禁私自串接帳戶交易。
-------------------------------------------------------------------------------------------------