金字塔跨周期 VBA編程:測試過去的數據,2013.3.1這根日K線用GetHistoryData可以調用 [金字塔]
- 咨詢內容:
VBA編程:測試過去的數據,2013.3.1這根日K線用GetHistoryData 可以調用,我想在這根K線上調取當天的60分鐘K線,如果虧損就要止損,怎么調用當天的四要K線中的某一要呢? 跨周期
- 金字塔客服:
VBA中遇到這種跨周期是比較麻煩,因為GetHistoryData 只能對一個品種對象調用,如果你需要同時處理2個品種,那么你就必須要用數組先保存一個,然后再調用另一個。
然后在用自己保存的之前的數組數據與第二個品種的數據進行處理。
至于你說的跨周期的問題,就必須要你自己用算法來對另一個周期的數據進行快速查找了。
- 用戶回復:
第一次提問,沒想到版主在周末能回答問題,金字塔公司該發給你獎金了啊。
Set HistoryDay = marketdata.GetHistoryData( "rb10","sq", 5) '得到日線數據
History.date(History.Count-i) '得到歷史日K線的日期,比如得到2013.3.1
JinShou=History.Close( History.Count- i ) '得到歷史K結的收盤價
Set HistoryHour = marketdata.GetHistoryData( "rb10","sq", 4) '得到60分鐘線數據
我要得到在2013.3.1這天60分鐘的第二根K線收盤價,我要在這根K線上判斷是否止損,怎么得到這指定的K線收盤價啊?
好象沒有指定日期得到指定K線的功能呢
(有一種變通方案,就是測試在收盤后進行,每根日K線對應四根1小時K線,回朔去找對應的1小時K線,但我在測試時確實見到數據不全的情況,不一定對應四根呢)
(另外一個問題,我測試是用螺紋鋼連續合約還是用螺紋鋼指數合約,兩者有好大區別呢)
(此方案是用歷史K線數據測試盈利情況,寫報告之用,非常急用)
- 網友回復:
摘抄編程幫助中的信息給你
GetPosFromDate(DateData)
得到得到指定日期時間DateData的數據的基于0索引的序號。
如果指定日期超過數據范圍返回-1。示例:
'得到上期所指定品種的日線數據
Set History = marketdata.GetHistoryData("rb00","sq",5)
'顯示指定日期的數據所在位置
MSGBOX HISTORY.GetPosFromDate("2010/12/28")提醒一下,你二次調用GetHistoryData后,第一次的調用就失效了,也就是你不能再Set HistoryHour 這個句話后再來用HistoryDay對象的數據。
解決問題請參考
http://www.weistock.com/bbs/dispbbs.asp?BoardID=5&ID=12404&skin=0 4樓的處理方法
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 262069696 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容