日XS指標與日自動交易內買賣訊號不一致? 若指標與模擬帳號一致後如何導入實際帳號進行交易?

  •   121 
  • 最後發表   XQYi  2023 十一月 03
XQYi 發文於   2023/10/23

交易程式碼

input: Length(14,"天數");

value1 = Average(TrueRange, Length);

value2=open-low;

value3=high-open;

value4=high-low+0.0001;

value7=open-(value1)/4;

value8=open+(value1)/4;

condition1=high >= value8-0.0001 ;

condition2= low <= value7 ;

if condition1 then setposition(-1,value8);

if condition2  then setposition(1,value7);

 

指標程式碼

input: Length(14,"天數");

value1 = Average(TrueRange, Length);

value2=open-low;

value3=high-open;

value4=high-low+0.0001;

 

value7=open-(value1)/4;

value8=open+(value1)/4;

condition1=high >= value8-0.0001 ;

condition2= low <= value7 ;

Plot1(value1, "ATR",checkbox:=0);

if condition1 then plot2(value8,"S");

if condition2  then  plot3(value7,"B");

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/10/27

Hello xqyi,

 

需注意在即時自動交易運作時,日頻率的話會強制逐筆洗價。

故盤中條件和盤後的資訊 (指標最後畫出的結果) 可能不合。

您可以使用 print 函數將腳本運作時的相關數值印出比較確認。

 

另外在交易腳本小幫手會建議用部位庫存限制進出場,細節可參考 自動交易語法介紹

如果還是有問題的話,麻煩告知自動交易和指標不同的商品和日期時間,並提供 交易策略匯出檔和頁面匯出檔勾選(包含)腳本 以及 XQ Log 來確認。

Log資料夾(預設路徑:C:\SysJust\XQLite\LOG)直接壓縮後提供即可。

您可以直接將檔案上傳,如果檔案過大的話也可以保存到雲端後將連結Mail至客服信箱 XQservice@XQ.com.tw 且務必附上 討論文章連結網址(小幫手才能盡早處理)。

感謝。

XQYi 發文於   2023/10/27

我的指標程式是符合我的需求,但交易程式是否符合我以下的需求?

我的交易需求是

1.價位達到我的買進訊號即丟出委託並迅速成交,所以我設定提高一檔

2..價位達到我的賣出訊號即丟出委託並迅速成交,所以我設定降低一檔

3.當股票無庫存時,可以允許現股先買進後賣出和融卷先賣出後買進,不允許現股先賣的方式(會有借卷風險)

4.當股票有庫存時,可以允許現股先買進後賣出和現股先賣出後買進,其他不允許

5.該個股未完成當沖(買賣)不得進行下一次交易,,若完成當沖,則才可進行下一次交易,避免交割金額的擴大

(25日交易時,設金額上限15萬最大交易次數1,但買進13萬成交後,再委託賣出14萬時,遭拒,紀錄出現交易金額26萬超過上限)

 

若我的程式碼不符所提需求,請直接修改我的程式碼,這樣可能比較能快速解決問題

自動交易中心該如何設定才是正確?

XQ小幫手 發文於   2023/11/03

Hello xqyi,

 

1&2. setposition 可以給委託價,addspread 可以計算加幾檔。

 

所以 if condition1 and filled =< 0 and position =< 0 then setposition(1, addspread(close, 1)); 可以讓條件1符合時且部位庫存小於等於0的狀況下將部位調整成1。

if condition2 and filled > 0 and position > 0 then setposition(-1, addspread(close, -1));   可以讓條件2符合時且部位庫存大於0的狀況下將部位調整成-1。

 

除此之外,也可以在自動交易策略中設定。

 

3&4. 您可以使用 position 和 filled 控管,如同上面的範例。

當空手 (部位庫存為0) 的時候,策略只能夠多方進場。

需注意這邊的 position 和 filled 是該策略的,而非實際庫存。

 

5. 上面的寫法只會讓庫存在 1 和 -1 中來回,所以您出場的時候同時會反向進場。

不會有加碼的狀況。

會被安控是因為反向進場時也會納入計算,而非出場影響。

 

請注意 setposition(1) 並不是買一張,而是將部位調整成一張。

所以假設原本有二張的話會賣出一張,原本放空一張的話會變成買進二張。

 

指標上使用日頻率只會畫出當日最後的結果,而自動交易使用日頻率會逐筆洗價,所以盤中符合條件就會交易,而收盤時不一定會符合造成兩者不同。

您可以考慮使用選股或雷達,兩者皆有日頻率非逐筆洗價。

但需注意就算使用雷達也無法自動下單,因為日頻率策略運算時市場已經收盤。

發表回覆
Close