請問在自動交易中心的腳本
我想在盤前,取得前一天收盤價,用CloseD(0)、和CloceD(1)都不對,請問該用那個函數?
請問自動交易中心,如何在盤前下單?
請問在自動交易中心的腳本
我想在盤前,取得前一天收盤價,用CloseD(0)、和CloceD(1)都不對,請問該用那個函數?
請問自動交易中心,如何在盤前下單?
我使用CloseD(1),但比對比過前一天收盤價,仍然是錯的。
Hello Williamyu,
麻煩您告知是用在什麼商品什麼日期,並提供腳本來檢驗。
小幫手推測您可能是用在日夜盤台指期,該商品換日的時間為 13:45,或許您誤解成是在 05:00 時換日。
請問:
那如果每天都要最新值,是不是不要排程,而是每天的早晨,例如0700以後啟動策略,就可以正確抓到前一天收盤價?
腳本如下
value1 = getfield("Close","D")[1];//宣告(value1)為變數,預設為前一天收盤價
Vars:BTV(getfield("Close","D")[1]);//宣告(BTV買進目標價)為變數,預設為前一天收盤價
Vars:STV(getfield("Close","D")[1]);//宣告(STV賣出目標價)為變數,預設為前一天收盤價
BTV = value1-X;
STV = value1+Y;
If Position = 0 and Filled = 0 then begin SetPosition(1,BTV);
end;
If Position = 1 and Filled = 1 then begin Setposition(0,STV);
end;
William
Hello Williamyu,
GetField("Close", "D")[1] 是依據Bar的日期來對位的。
只要您運算的當根Bar日期是今天,那麼 GetField("Close", "D")[1] 就會取得昨日的收盤價。
如果您是在回測或是資料讀取筆數時運算,而運算的那根Bar的日期是其他日期的話,那麼就會是該日期的前一天。
所以在即時的狀況下,只要是運算在當日的Bar上,您當天什麼時候啟動,GetField("Close", "D")[1]都會是昨日的收盤價。
小幫手建議您,可以使用 print 函數來將變數印出,或許會比較容易理解。
另外網站上有教學區,裡面有XS語法的基礎和應用可以閱覽。
6 評論