2013年12月19日 星期四

開盤價與收盤價的慣性 - QStick 指標 (程式碼)

EasyTrader ArtNo 077
本指標原文為 Q-Stick 指標,這指標由錢德(Chande)所發明,用來衡量K線圖上,紅K棒與黑K棒數量比例的大小。錢德(Chande)在工程領域有博士學位,並擁有九個美國專利。他經常在相關雜誌和工程期刊出版了大量論文,他在設計創新的交易系統的專業知識得到了廣泛認可

QStick指標的公式 = Summation(Close-Open,N)/N*100
先取N日的計算天期,再將N日期間內各日的「收盤價-開盤價」加總, 再除以N即得。


開盤和收盤價格之間的距離是K線圖表的核心所在。所以QStick指標是將N日期間內的各日K棒都加在一起,讓黑K棒值與紅K棒值相互抵銷後, 最後看剩下的是黑K棒較多,還是紅K棒較多。所以這個指標值以零為中間值,表示黑K棒與紅K棒的力道相同,當QStick指標大於0時,表示紅K棒較多,而小於0時,表示黑K棒較多。


指標程式碼
Input:BarNo(20),UpBand(5),DnBand(5) ;
Vars:SumBar(0);
SumBar = Summation(Close-Open,BarNo) ;
if BarNo <> 0 then Qstick = SumBar/BarNo ;

Plot1(QStick,"QStick") ;
Plot2(0,"Zero") ;
Plot3(UpBand,"UpBand") ;
Plot4(-DnBand,"DnBand") ;

測試程式碼
Input:BarNo(20),UpBand(5),DnBand(5),TradeStopLoss(0.02),TradeProfit(0.05);
Inputs:NBarL(6),NBarS(6) ;
Vars:SumBar(0),QStick(0) ,PF(0),PL(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 ;

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

SumBar = Summation(Close-Open,BarNo) ;
if BarNo <> 0 then Qstick = SumBar/BarNo ;
Condition1 = Qstick Cross over UpBand ;
Condition2 = Qstick Cross under -DnBand ;

if Condition1 then Buy next bar at Highest(High,3) stop {Market} ;
if Condition2 then Sell next bar at Lowest(Low,3) stop { Market} ;

{
if MP > 0 and BarsSinceEntry = NbarL then ExitLong next bar at Market ;
if MP < 0 and BarsSinceEntry = NbarS then ExitShort next bar at Market ;
}

{setProfitTarget(PF*BigPointValue) ;}
setstoploss(PL*BigPointValue) ;

if IsBalanceDay then SetExitonClose ;

基本設定: 台指期 留倉 回測週期 2001/1~2013/10/31 交易成本 1200



QStick 原始程式會隨著時間框架的縮短,交易次數會跟著增加特別是 15min K已達 1790 次,即使 30 min K 也達 1331 次 ,這部份我們可以透過前面舊文所用過的不同濾網作測試

原始策略 30分鐘回測結果


QStick + 濾網A 回測結果


QStick + 如意多空網回測結果 (如意多空網)


MagicQS027

6 則留言:

  1. 根據你提供的程式碼帶入Multichart中進行回測出來的數據跟你所顯示的歷史績效沒有一個是相同的,而且差距非常大,應該可以懷疑你的歷史數據是有問題的!! 錯誤的歷史數據會讓你的回測資料變得很漂亮,要小心喔!! 魔鬼藏在細節裡~~~

    回覆刪除
  2. 您好!謝謝您的意見,即使兩個同是使用Multichart的用戶,績效回測也一定有差異,我的歷史資料源都是代理商提供 ,跟 MC由代理商提供是一樣的道理 ,我的測試也經過朋友 MC的測試都在 10%上下 的差異! ,若您還有疑問,可以寄給我您回測的資料與使用程式碼! 彼此討論一下 OK的

    回覆刪除
  3. 請問有mail信箱嗎?我把回測資料寄給你參考!!

    回覆刪除
  4. 作者已經移除這則留言。

    回覆刪除