請教圖表程序交易的若干問題 [金字塔]
- 咨詢內容:
交易品種為股指期貨,策略是每天下午15點10分比較上證指數當日交易量比前一日縮量達30%以上時,立即進場做多的程序是不是這樣寫:
a:=OPENMINUTES(CURRENTTIME)>265 and ref("000001$AMOUNT",0)<ref("000001$AMOUNT",1)*0.7;
Buy(holding=0 and a,1,marketr);
多單用昨日最低價止損和次日收盤前(也定在開倉1周期后的開盤后第265分鐘)不管漲跌都平倉程序,是不是這樣寫:
sell(HOLDING>0 and ENTERBARS>0,100%,stopr,ref(low,1));//昨低為多單止損
SELL(holding>0 and ENTERBARS>0 and OPENMINUTES(CURRENTTIME)>265,100%,MARKETR);//次日收盤前平多問題1:上證指數15點已收盤,而股指期貨15點15分收盤,15點10分是股指期貨當日開盤第265分鐘,所以用“OPENMINUTES(CURRENTTIME)>265 ”作為開倉條件,是否可靠?OPENMINUTES(CURRENTTIME)使用的是本地計算機時間?能不能根據交易所的時間更精確讓上面的開倉指令運行在15點10分之后,而與本地計算機時間無關?
問題2:金字塔的評測程序中,加了“OPENMINUTES(CURRENTTIME)>265”之后,永遠不開倉,不知道是我用錯了,還是實盤時能開倉而評測時不能用該函數?
問題3:OPENMINUTES為開盤分鐘數,中午休市的1個半小時應不應該算進去,如“股指期貨日線”,11:30~13:00期間休市,那么13:10分是第265分鐘還是第355分鐘?
問題4:交易股指期貨合約,但程序中引用了另一品種數據,比如上證當日成交額ref("000001$AMOUNT",0),會不會因為上證指數不是當前圖表而無法實時下載更新數據,從而使引用的數據不準確?如果無法實時更新未打開的品種數據如何解決?
問題5:金字塔中,平安銀行代碼和上證指數代碼都是“000001”,如何確保"000001$AMOUNT"是上證的成交額?或者說如何區分平安銀行和上證的引用方式?
問題6:我程序中了marketr符號,評測時是在當日收盤開倉,那么在實盤時,應該是在當日開盤第265分鐘(即15點10分)時市價開倉,我理解的對嗎?
問題7:我用stopr設昨日低點為止損,用ref(low,1)是否正確?像股指期貨交易所并不支持止損單,那么該指令是否就無效了?如果無效,那么我是否只能用“固定時間間隔”(例如每10秒調用),并通過程序檢查當前價格是否已低于昨日低點,如果是就市價平倉?
像股指期貨是否只支持marketr、market、limitr和limit,并且實盤時marketr與market無區別,limitr和limit則生成限價單掛在交易所?但股指期貨不支持stopr和stop是嗎?問題8:手工交易時,我發現即使要市價平倉也必須先撤銷限價單,那么我程序中連續用了兩個sell指令,sell發出MARKETR時會不會自動撤銷stopr或limitr單?
問題9:如果平倉指令中,marketr會自動撤銷stopr或limitr,那第二次發出stopr會不會自動撤銷第一次的stopr,limitr呢?
問題10:我開倉前用holding來判斷是否有持倉,如果是市價開倉就沒問題,但如果我用limitr來采用限價單開倉,那么buy發出的限價單是不是不算持倉(即holding不計算buy發出的限價單)?所以用limitr來開倉的話,是不是容易在未成交時又發了一個限價單(因為holding仍然等于0)?如果是這樣,應該如何避免?
- 金字塔客服:
1??梢圆挥胦penmintues來定義多少根k線,
直接用time來表示,比如time=151000,就是表示是151000這根k線
2。引用數據直接使用callstock函數,市場合約寫成'sh000001',和平安銀行進行區分
3。用雙引號引用,被引用周期的前一根k線不是用ref方式,而是"sh000001$close##day"一個#表引用當前數據,二個#表引用前一根數據
4。openminutes是否算修盤,這個問題可以自己測試一下
5。marketr在實際開倉時間的市價下單
6.stopr這個函數是用于測評的,并不用于實際下單
7。不自己進行操作或者做系統設定,不會自動撤單的
8.holding是圖表上的虛擬持倉,當圖表上有了信號,就會算作持倉,和實際交易,下單類型沒有關系,所以不論buy下的是market還是limitr,都會計算入持倉
- 用戶回復:
先了解一下策略大致情況,便于更具體有效的回答樓主的疑問
環境介紹:
//運行周期:???
//運行模式:走完一根k線,固定時間間隔 ???
//交易品種:IF1303
系統簡介:
根據上證指數日線交易量來決定是否開倉(當日日線交易量比前一日日線交易量縮量達30%以上時,開多)?????
止損:多單-昨日最低價
收盤前平倉:次日收盤前五分鐘
[此貼子已經被作者于2013-3-12 10:57:29編輯過] - 網友回復:
謝兩位客服的熱心全面答復。
環境介紹:
運行周期:日K線
交易品種:IF1303
運行模式:固定時間間隔(30秒間隔)
我主要程序都是在開盤后10分鐘內,以及收盤前10分鐘內進行條件判斷。
所以jinzhe講的time并不能獲取開盤分鐘數,因為我是在日線上的。
所以,我剩下6個問題:
1、日線Time不能獲取分鐘數,那日K線周期上,如何判斷該K線自開盤后運行了多長時間?只有用本地時間CurrentTime這一個辦法是嗎?
2、jinzhe用的代碼“sh000001”是指平安銀行還是上證指數?另外一個該用什么代碼?
3、雙引號引用用ref,我評測是得出正確結果的,實盤時不準確是嗎?
4、"sh000001$close##day"的用法不是很明白,能進一步解釋下嗎?
5、holding是虛擬持倉,如果holding為0,卻用了sell平多,holding會變成負數嗎?
6、請對“后臺程序交易模式”給予一些學習資料,以及提供可行的評測后臺程序的替代方案,我本身是程序員,編寫后臺程序盡管復雜一點應該也沒問題。
再次感謝!
[此貼子已經被作者于2013-3-12 18:15:08編輯過] - 網友回復:
另外還有一個問題忘記回答了:
我交易IF1303合約時,圖表顯示IF1303日線,而上證(sh000001)指數沒有顯示出來,如果程序一直運行幾天,會不會導致上證指數不更新,所以引用不了數據。該怎么辦?
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 1145508240 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容