自動交易庫存更新頻率

  •   543 
  • 最後發表   charlie1234  2021 八月 26
charlie1234 發文於   2021/08/09

小幫手好

 

想了解自動交易的庫存是否為即時更新?

發現股票買進或賣出後,庫存並沒有即時更新,要等到新的K棒開始時,才會更新 (使用5分K)

如下圖,泰豐11:00:33秒已成交出場,但電腦到11:04分,庫存都還有泰豐,到11:05才消失 

 

庫存如無法及時更新,非常不利於操作當沖且停損利較小的人,因為有可能一進場,

就碰到停損利點位,但因為庫存沒更新,所以沒觸發出場

甚至原本應該停利變停損

 

請小幫手解答,謝謝

排序方式: 標準 | 最新
charlie1234 發文於   2021/08/10

補充

跟設定幾分線無關

今天測試,拖了很久庫存才出現,而且進了四檔股票,但只出現兩檔

9:33~9:41進了四檔股票,庫存都一直沒出現該四檔股票,到了9:49更新了,但竟只出現兩檔

庫存竟然不是一起更新,會不會太神奇了??

請小幫手協助

 

 

if volume>500 and close>1.03*getfield("收盤價","D")[1] then setposition(1,market);


//-------出場

input: profitP(1.02,"獲利多少出場");

if position=1 then begin
    if close>=profitp*Filledavgprice then setposition(0,market);
end;    

  • 按讚來自於
  • san378
charlie1234 發文於   2021/08/10

大概知道庫存不更新的原因了

 

如果有買或賣股票,點黃色框框的tab,是不會更新庫存

需要點藍色框,不同策略後,再點回原策略那,才會更新庫存

 

雖然發現不更新原因,但卻衍生幾個疑問

1. 如果沒其他策略,庫存是不是就不更新了?

2. 庫存沒更新,是否影響出場的監控呢? 

3. 庫存的更新應該是要能自動出現,不太可能還要這樣人工去點

 

煩請小幫手了解下

謝謝

 

  • 按讚來自於
  • san378
charlie1234 發文於   2021/08/11

今天用模擬單實測

自動交易頁面庫存沒更新的情況下,"不"影響出場的監控,不過庫存還是希望能做到即時更新,方便追蹤

 

另外,我用以下程式碼,開啟逐筆交易,交易時出現了以下問題

var: onlyonce(0);

if date<>date[1] then onlyonce=0;

if position<=0 and onlyonce=0 then begin
if volume>100 and close>=1.03*getfield("收盤價","D")[1] and close<=1.06*getfield("收盤價","D")[1]  then setposition(1,market);
end;

//-------出場

input: profitP(1.02,"獲利多少出場");

if position=1 then begin
    if close>=profitp*Filledavgprice then setposition(0,market);
    onlyonce=1;
end;

 

問題1: 進場後,未碰到停利點,馬上又出場,且觸發時間對不上

以訊舟為例,9:02:31.865進場,9:02:32.114就出場,但出場價完全沒碰到停利的點位

而且,進場觸發時間也怪怪的,如無記錯,符合條件後會等到下一筆交易,才觸發送出

根據訊舟交易明細,距進場觸發時間9:02:31之前的一根為9:02:20秒,這是洗價或觸發延遲了嗎?

 

 

問題2: 很多股票買進成功,但馬上出現執行失敗,且說明為"未知錯誤"

這樣的情況不是每檔進場的股票都發生,而執行失敗的股票,被列入交易異常,就算碰到停利點,也不會出場

 

問題3: 異常股票的庫存紀錄與實際庫存不同

南茂這檔股票,狀態為異常,自動交易的實際部位為0, 但模擬帳戶又有股票

 

 

問題4:異常股票的績效不監控

出現異常的股票似乎就暫停監控了,但如果還是有股票在庫存,無法即時看到損益,實不是很方便去做後續處理

這點請小幫手反映,看能否解決

 

以上一堆問題,再麻煩小幫手協助,謝謝

 

 

 

 

XQ小幫手 發文於   2021/08/13

Hello charlie1234,

 

若您選擇依庫存的話,在您啟動策略的時候,策略會出現確認視窗,上面會有查詢按鈕讓您可以即時更新庫存資訊。

且您若點選編輯的話,也有查詢按鈕可以讓您更新庫存資料。

另外需注意的點在於,就算您選擇的是依庫存,當策略啟動後手動或是其他策略的進出場對該策略的部位和庫存是不會有影響的。

啟動後策略的部位與庫存皆獨立於外部的操作。

所以有可能會發生:

策略A庫存 2030 1張

策略B庫存 2030 -1張

實際庫存 2030 0張

實際庫存與策略的庫存不相同的狀況。

 

關於您提到模擬交易執行的問題,小幫手用回測和即時的作測試都沒有發生您所說的情況,print出來的數值也沒有問題。

連同您異常狀態的檢驗需要麻煩您提供 自動交易中心匯出檔勾選(包含)交易腳本、以及XQ Log。

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

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

 

關於您提到的成交時間,XS在逐筆的狀況下運作方式是這樣:

每有一筆成交,腳本就會運作一次,如果符合條件的話就會送單。

由於您的狀況是市價單,所以模擬交易就會馬上送單並判斷是否成交。

在回測的狀況則是因為最短就是1分鐘頻率逐筆OHLC,所以觸發後就會模擬送單然後在下一個價格成交。

 

異常股票的績效不監控問題小幫手會轉告相關人士作未來參考。

感謝。

 

charlie1234 發文於   2021/08/23

 

謝謝小幫手

同樣的問題(下單後馬上刪單,及執行失敗,未知錯誤的問題),又發生了,

關於執行失敗,我想原因有可能是因為該股票成交了,來不及刪單,所以出現這個錯誤

但是,為何下單後,又馬上刪單,這就需要小幫手協助了

我猜或許跟下單延遲有關,因為所有被觸發商品的價位,當天更早前都有出現過

相關檔案,今天會email

 

charlie1234 發文於   2021/08/26

謝謝小幫手的測試

我應該是找到問題所在了

出場的地方,沒有加入filled去做判斷

導致進出場的錯亂

測了兩天,沒有延遲出場,沒有立刻刪單,也沒有其他錯誤訊息出現了

 

發表回覆
Close