2010年4月15日 星期四
This bar at Close with Q_Time(下)
繼上篇 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
至於 This bar at Close 與 Next bar at Market 間 還會有停損或是停利上的影響,那又是另外一個題目了。
熱門文章
-
下單大師這個下單機,提供了萬用API的模式去接收交易策略的即時部位,號稱說可以做到千分之一秒的奇蹟,有沒有這麼神?其實不必在意,至少這個方式在我目前看來,夠快。畢竟從訊號的產生到成交之間的環節不少,要是有速度慢的狀況,還得一個一個去找解方。 這篇文章提供的方式不再需要輸出文字...
-
在 MultiCharts 裡,本來我以為 EntryPrice(0) 就代表了最後一個進場的成本價,經過測試後,確定了 EntryPrice( 0 ) 不是最後一次進場價,而是最後進場方向的第一筆價格(可查閱"程式交易語法大全 page 255")。什麼意思...
-
一些 專業版-MultiCharts 能做,而券商版不能做的事情,除了圖表數量限制、投資組合回測外,最重要的就是在編輯程式碼之中,幾乎把要對外聯繫的關鍵字都給切斷了。這一篇就是教你,如何讓你的 券商版-MultiCharts 重新取回對外聯繫的能力。 ※ 當初獲知的知識來源: ...
-
在 MultiCharts 中要把一些所需的資訊輸出出去,存成文字檔(.txt)的形式,內建於 MultiCharts 的 fileappend 與 print 指令都能順利辦到。另外,國內有凌波大分享的 outputfile.dll 與 下單大師的 omSignTXT.dll ...