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