免費下載
訂閱模組
搜尋
自動交易中心支援手動調整部位的功能
2022-08-09 15:07:56
目前自動交易必須在策略啟動之前先設定好商品的部位,一旦啟動之後部位只能依照策略的交易指令自動調整,無法手動控制。從上線以來,我們收到了很多客戶的建議,希望可以在策略啟動之後還可以手動調整部位,例如使用者可能用其他方式下單買進之後,希望自動交易可以接手處理出場的動作,或是使用者手動賣出之後,希望自動交易端可以自動更新到目前的實際部位。

在這次的改版內,自動交易增加了可以手動調整部位的功能,策略啟動之後可以調整商品的部位,也可以手動加入新的商品。希望藉由這個功能,讓自動交易可以更符合使用者的交易流程。

接下來小編將介紹各種手動調整部位的使用情境,章節索引傳送門如下:

手動進場後,透過自動交易執行停損停利

如果使用者想要手動下單,然後在買進之後,讓自動交易可以自動執行停損/停利的出場動作,那麼可以透過「庫存異動時自動加入執行」的這個選項來完成。

首先我們先設計一個停損停利的出場腳本,範例如下:

//多單停損(%)
input: profit_percent(2, "停利(%)");
input: loss_percent(1.5, "停損(%)");
if Filled > 0 then begin
 { 依照成本價格設定停損/停利 } 
 if profit_percent > 0 and 
 Close >= FilledAvgPrice*(1+0.01*profit_percent) then begin
 { 停利 }
 SetPosition(0, label:=”停利出場”);
 end else if loss_percent > 0 and 
 Close <= FilledAvgPrice*(1-0.01*loss_percent) then begin 
 { 停損 }
 SetPosition(0, label:=”停損出場”);
 end;
end;

接下來我們幫這個腳本設定一個自動交易策略,執行商品選擇交易帳號的庫存,策略部位選擇依庫存,同時勾選「庫存異動時自動加入執行」這個新的選項。

當我們這樣子設定之後,策略啟動時會自動抓取庫存內的商品,依照庫存部位開始執行,同時也會監控庫存的變化,當有新的商品加入庫存時,商品就會自動執行

接下來策略啟動之後,如果我們從XQ下單,當委託成交時,而且成交的商品是之前庫存內沒有的商品的話,自動交易策略就會自動抓取成交的部位以及成交均價,同時開始執行這個商品。之後當這個商品的價格觸及停損/停利的價格時,自動交易策略就會自動執行出場的動作。

幾點注意事項:

  • 你可以從任何管道下單,只要XQ可以收到委託回報/成交回報的話,這個功能就會正常運作。
  • 當成交商品第一次出現在庫存內時,自動交易策略就會開始執行這個商品,之後如果你又手動買賣這個商品的話,因為商品已經開始執行了,自動交易策略就不會再執行這個商品了。如果你希望自動交易策略的部位可以依照你的手動交易自動調整的話,請參考下個章節。
  • 如果委託數量大於1的話,自動交易策略會等到委託單完全成交之後才會開始執行這個新的商品。

手動加碼後,調整部位

在上個情境內手動進場的是先前並不存在於庫存內的商品,透過「庫存異動時自動加入執行」的選項可以讓自動交易策略自動執行這個庫存內的新商品。

那麼如果使用者手動進場的是目前就已經存在於庫存內的商品,可是使用者希望手動執行的交易在成交之後可以讓自動交易自動同步最新的部位的話,那麼我們要怎麼做呢?

這樣子的情境,可以透過調整商品部位的方式來完成。

我們先手動加碼 1 口庫存內的台股指數商品,完全成交後,開啟策略執行中的商品監控頁,對台股指數商品點擊滑鼠右鍵,會出現「調整商品部位」選項。

接下來點擊「調整商品部位」此時會出現「調整部位」視窗。你可以在這裡填入策略部位與策略均價,按下確定後,這檔商品的策略部位以及成交均價就會依照指定的數值重新調整。

手動加入新的執行商品

如果自動交易策略的商品是依照帳號庫存的話,那麼可以透過「庫存異動時自動加入執行」這個功能來讓策略自動監控庫存的商品異動,當庫存內有新的商品時,都會自動執行。

可是如果自動交易策略的執行商品不是依照帳號庫存的話,有沒有辦法在啟動之後,可以加入新的商品呢?

答案是可以的,只要你從策略執行中的商品監控頁,在空白處點一下滑鼠右鍵,就會出現「新增執行商品」選項。

點擊「新增執行商品」選項後,會彈出選擇商品視窗,此時你可以輸入想要加入執行的商品代碼或名稱。

按下完成按鈕後,會出現「新增商品」視窗,此時你可以填入「策略部位」與「策略均價」,按下確認按鈕後,這個商品就會開始執行。

到這裡為止,我們複習一遍調整執行商品/商品部位的各種方式:

  • 如果策略的執行商品是帳號的庫存商品的話,可以透過「庫存異動時自動加入執行」來確保自動交易策略會執行庫存內的所有商品。
  • 如果執行之後,使用者手動調整了商品的實際部位的話,可以透過「調整商品部位」的功能來修正策略內的部位。
  • 如果執行之後,使用者想要加入新的商品的話,可以透過「新增執行商品」的功能來加入新的商品。

上面這三個功能都可以在不停止策略的情形底下,手動的調整策略內的部位。

同場加映:重新啟動已經停止的商品

自動交易策略啟動後,其中的某些商品可能會因為以下因素而停止執行:

  • 執行交易時因為發生錯誤,所以自動停止執行。
  • 使用者手動停止這檔商品的執行。

在這次改版後,使用者也可以手動啟動已經停止執行的商品。

在底下的示範畫面內,我們先手動停止一檔商品,然後再啟動這檔商品,同時設定新的部位。

首先到策略執行中的商品監控頁,找到欲停止的單一商品列,點擊「停止」按鈕。

此時會跳出「停止商品」視窗與「一併刪除委託」的核取方塊,這裡的委託是指由該策略送單出去的委託。選項設定完後,再按下確認,該單一商品就會停止執行。

接下來,使用者找到欲重啟的商品列,點擊「重啟」按鈕,此時會出現「調整部位」視窗。

填入想要設定的部位跟均價之後,按下確定按鈕,策略就會重新執行這個商品。

自動交易中心這次新增的功能,小編就介紹到這邊,大家可以參考上述章節使用看看,感謝大家耐心的收看,咱們下次見。