運用交易語法撰寫進場取得未平倉成本出場

  •   124 
  • 最後發表   XQYi  2024 一月 16
XQYi 發文於   2023/12/09

https://www.xq.com.tw/learn/xsat/openinterest/
文中提到

//當「目前商品的預期部位是0,且進場條件為Ture」則將目前商品的預期部位設為1,委託價格使用市價。
//也就是送出一筆「市價買進1張」的委託單。
if position = 0 and InCondition then setposition(3,market);

Q1. 如果自動中心內腳本設定的策略部位選擇 "依庫存",此程式碼中Position=0會自動修改為實際庫存量或是如何?
Q2.選擇 "依庫存"但此時實際庫存2,若腳本setposition(3)是會再買進1張 還是3張?
Q3,選擇 "依庫存"但此時實際庫存2,若腳本setposition(1)原本是想買進1張,此時是繼續買進1張 還是賣出1張?

 

//當「目前商品的預期部位非0,且出場條件為Ture」則將目前商品的預期部位設為0,委託價格使用市價。
//也就是送出一筆「市價平倉持有張數」的委託單。
if position <> 0 and OutCondition then setposition(0,market);

Q4. 此時的平倉,在勾選依庫存狀態下,策略執行是否會把原有的庫存股(現股、融資、融卷)全部賣出?

Q5. 選擇依庫存是因為有庫存量在,若賣出訊號先觸發,可以先賣,若選依腳本因尚未買進無法賣出。或若依腳本不選依庫存,賣出訊號先觸發也能先賣庫存?

XS小編 發文於   2024/01/16

Hello xqyi,

 

1.可參考 自動交易策略參數總覽 的說明。

設定為依庫存是當策略啟動時在運算完歷史資料區間之後,系統會依照當時帳號的庫存,自動調整策略的部位,以及策略的未平倉成本。

依庫存只有策略啟動的時候會作調整,運作到一半的策略若實際庫存因為手動交易等因素改變的話,策略庫存是不會跟著變動。

 

2.如果啟動策略時實際庫存為2且設為依庫存,則策略的起始部位庫存會是2。

執行到setposition(3)會將策略部位調整成3,由於部位為3、庫存為2,故會買進1張,讓兩者相等。

 

3.同上,執行到setposition(1)會將策略部位調整成1,由於部位為1、庫存為2,故會賣出1張,讓兩者相等。

 

4.會將策略庫存全部平倉,若策略庫存為0的話 setposition(0) 就不會有動作。

而策略庫存是否和實際庫存相等請參考1.的說明。

 

5.視您賣出訊號執行的 setposition 數值為何,策略會是賣出還是沒有動作是和您的策略庫存及策略部位有關。

舉例來說,賣出訊號會執行 setposition(0) 的話,若策略庫存為0的話就不會有動作。

發表回覆
Close