2007年6月26日 星期二
在分線中抓取日線的價格
在HTS中,也許有人會需要抓取日線的價格(開、高、收、低)的資料來使用,但是在分線中除非你用時間的限定加上INDEX去抓取特定時間的價格,不然是抓不到日線的資料的,尤其是昨天、前天、大前天...前N天的日線資料。
HTS中有內建在分線中抓日線資料的函數,但是使用上卻不是直接抓取就行,必須如下的架構。
************
//先宣告一個陣列
Array:MyArray[84](-1)
VALUE1=HighOfDay(0,MyArray)//這就是今天的日線高點
VALUE2=HighOfDay(1,MyArray)//這就是昨天的日線高點
VALUE3=HighOfDay(2,MyArray)//這就是前天的日線高點
VALUE4=CloseOfDay(0,MyArray)//這就是今天的日線收盤
VALUE5=LowOfDay(1,MyArray)//這就是昨天的日線低點
VALUE6=OpenOfDay(2,MyArray)//這就是前天的日線開盤
************
然而,如果你直接這樣去取很多個日線的資料來運用,你會發現...錯亂!!
我猜測這算是HTS的一個BUG吧,不過,你可以這樣去取「1」個日線資料來用。
如果你一定要抓好幾個來用,比如要在分線中知道日線的5日均線,就必須要知道5天的收盤價來相加除以5,但是在程式中取5個如下的資料卻會發現是取不到的,用PRINT指令去檢查就知道你只會抓到最近的一個。
這時候,請你「自創函數」,也就是說自己做函數,來抓取「今天的日線收盤」、「昨天的日線收盤」、「前天的日線收盤」...AND SO ON
然後再用運用函數的值來計算,很複雜吧^^,加油!!
我舉個例:這就是自己做一個3天前的日線收盤的函數。
塞入如下程式碼
*******
Array:CloseArray[84](-1)
CLOSE_DAY_Y3 = CloseOfD ( 3, CloseArray)
*******
那麼你作了「一堆」這樣的函數之後,想在分線中計算日線的5日線就可以這樣寫了:
*******
VALUE1=( CLOSE_DAY_Y0+CLOSE_DAY_Y1+CLOSE_DAY_Y2+CLOSE_DAY_Y3+CLOSE_DAY_Y4 ) / 5
*******
Now,try it!
熱門文章
-
殷鑑不遠。這是 2019/07/03 的台指期貨,在大約 10來秒的時間之中,台指閃崩了近 500點,並且快速回復。這樣類似的事件,在台指不是空前,也不會絕後,即使台灣期貨交易所有所謂的動態穩定機制在運作,這一天,據我所聽聞到也有不少友人在這很短的時間內... 中槍了。這裡,我們...
-
經過多年的策略開發對腦力的壓榨,如果手上的素材(資料)沒有新東西的話,基本可以說很快就會從滿腔熱血走到老狗變不出新把戲。因為最容易取得的資料就是商品歷史價格,策略的開發也就幾乎是圍繞在價格及其衍生的數值為基礎,也就是價格因素策略。 台灣是一個特別奇妙的市場,交易所公開的資料相...
-
STO 訂閱購買: https://www.touchance.com.tw/sto/index 推展「 以選擇權執行策略訊號 」一段時間日子後,深感這工具的程式碼即使經過面對面的詳細解說,其實對絕大部分的人來說,難度依然是非常的高!我想,上過課的同學其實就是買工具回去用吧 XD...
-
在 MultiCharts 裡,本來我以為 EntryPrice(0) 就代表了最後一個進場的成本價,經過測試後,確定了 EntryPrice( 0 ) 不是最後一次進場價,而是最後進場方向的第一筆價格(可查閱"程式交易語法大全 page 255")。什麼意思...