This bar Close with Q_Time(下)

阿政

 http://www.yctseng.net/2010/04/this-bar-at-close-with-qtime_15.html

 

繼上篇 This bar at Close with Q_Time(上) 這次要來談談如何運用 Q_Time 來協助 This bar at Close 達到實際運作幾乎或是說非常接近歷史回測,我只是說"幾乎"或是"非常接近"而不是做到,也就是說這樣的手法絕大多數可以得到我們預想的結果,但是一定會成功如常運作嗎?不一定~

首先,我們先分辨一下 Time 與 Q_Time 的差異。這兩者是不一樣的,不僅僅只是同意代換字。Time 指的是 K棒的收盤時間,而Q_Time 指的則是最新 Tick 的時間,舉例以 5 分線圖來說,當盤中真實時間在09:13:08的時候,你可以在當下做個Print( Time, Q_Time ) 應該會得到 091500 091308xxxx 很明顯的,我們會得到兩個不一樣的數值。但是也會看到 Q_Time 的部份只有在最新的這根K棒有數值(不管是否已收盤),之前K棒的 Q_Time 通通是 0 !當然,之前的K棒內塞有超多 Tick ,在HTS 我猜它是乾脆就忽略掉,一律 Return... 0。 

再來,This bar at Close 與 Next bar at Market,盤中運作的食物上應該是幾乎相同的,所以我們需要處理的就是每天的"最後"這1根K棒。在非結算日的日子,要處理的是 K棒時間( Time )= 134500 的這根K棒。但是因為 Q_Time 除了最新的 K棒以外,數值通通為 0 這個特性也不能忘記,否則,我們會失去了歷史上的訊號,當然~回測的部份也跟著不見。

作法如下:

if Condition XX= True and T=134500 and ( Q_Time <= 134440 or Q_Time = 0 ) then
Buy / Sell / ExitLong / ExitShort ..... This bar at Market
end if

是的,在這裡我寫上了 This bar at Market。有在使用自動下單機的朋友應該很清楚這是個非常危險的指令,只要在這個 IF 語句的判斷式內含有"最新價格"及其衍生的數值,同 1根K棒發生來回掃價觸發下單機高頻率的丟市價單就不是什麼新鮮事了。

而為了在將來真的可以做到所謂的收盤站上就在收盤價進/出場,這恐怕是我目前所知的必要之惡了。在條件判斷式中,加入Time=134500讓這個語句只在最後1根K棒有可能作用,並且加入 Q_Time<=134440 讓這個語句只在 134440~134500中間這10秒鐘才有作用的可能性。至於加上 or Q_Time=0 當然是為了留下這個IF語句所作動的訊號不要消失,因為明天一開盤,這根有訊號的K棒會因為 Q_Time 變成 0 而讓訊號消失的,如果你沒有加上 ( Q_Time <= 134440 or Q_Time = 0 ) 的話。


舉個實用上的例子。如果我想要在帳面虧損超過50點的狀況下,不要抱單留倉的話:

if PositionLoss(0)<= -50*PointValue and
   T=134500 and ( Q_Time <= 134440 or Q_Time = 0 ) then
  ExitLong this bar at Market
  ExitShort this bar at Market
end if

本文內容僅供參考,無任何買賣建議,投資人應謹慎評估,風險自負。

你可能感興趣

    精選文章

    更多
    台灣、中國、日本、韓國GDP總體檢,AI時代僅台灣走出高成長,產業分化的風險
    要存多少錢,才能開始錢滾錢?一個算式算出資產成長門檻,這是財富自由第一關
    金融富邦金、玉山金衝鋒,液冷散熱奇鋐、雙鴻登高!鴻海、緯創蓄勢待發,下周盤勢重點
    47100這關從7月壓到現在!大盤周五拉尾盤收上5均,下周能長紅終結2個月的壓制
    鴻海、緯創、雙鴻、奇鋐強攻!記憶體缺貨,輝達降規換量,機櫃出貨數不減反增
    欣興被搜索,景碩、南電跟著跌:ABF 是集體出事,或只是連坐被錯殺?