交易進場寫法在執行上的差異比較

1Shares
Image
這篇文章是我在FB社團文章的延伸(文章留言也記得看看,很棒的討論),更深入的去說明幾種進場寫法在XQ的執行上所產生的差異,及對後續策略執行的影響,我覺得是還滿重要的,搞清楚可以避免在交易時發生一些奇奇怪怪的問題
寫法1: 所有判斷式都寫在一起
這是最糟糕的狀況,因為XQ會一直執行這個進場的判斷,如果符合,就會要執行setposition,就會出現無效交易指令的訊息,而出現這個無效交易指令訊息最大的問題在哪呢? 那就是會中斷了後面的出場計算,就是說只要進場一直出現無效交易指令,那策略就永遠不會出場了
像是下面的寫法,都是會一直出現無效交易,一定要避免
  • if position=0 and  進場邏輯 then setposition(1);
  • if date<>date[1] and  進場邏輯 then setposition(1);
  • if date<>date[1] and  進場邏輯 then setposition(1) else setposition(-1);
  • if date<>date[1] and currenttime=090000 and 進場邏輯 then setposition(1);
寫法2: 把邏輯判斷分成主要+次要
將邏輯分成主要跟次要,要先符合主要邏輯然後在執行次要邏輯,這樣的寫法基本上對了,但還是有可能出現無效交易指令的訊息,如下面範例的寫法,即使開了逐筆洗價,這些函數的最小時間單位似乎為1秒,所以就算進場後馬上成交,但如果那一秒還沒結束,而價格仍然在變動,在逐筆洗價的狀況就會出現出現無效交易指令的訊息,如下圖,09:00:00.187 雖然成交了,但後面成繼續出現無效交易指令的訊息
範例1
if currenttime=090000 then begin
  if 進場邏輯 then setposition(1);
end;
範例2
if date<>date[1] then begin
  if 進場邏輯 then setposition(1);
end;
寫法3: 主要邏輯判斷為position+次要邏輯
把主要邏輯放上position,會是最好的做法,因為position是採用了intrabarpersist的計算方式,只要position一變動,數值馬上變動,不符合就不會執行次要邏輯,自然就不會出現無效交易指令的訊息
if position=0 then begin
  if 進場邏輯 then setposition(0);
end;
小結
交易算是新的功能,很多時候也不知寫法上在哪裡要注意的,這篇希望能幫助大家少走一點冤枉路喔~~
如果您願意支持A+策略網繼續提供優質好文,歡迎使用我們的XQ推薦碼@VIP999訂閱模組,只要您持續訂閱XQ模組,就可以是我們的VIP會員,閱讀VIP文章喔,詳細說明,請看這邊
Image by Freepik

1Shares


發佈留言

在〈交易進場寫法在執行上的差異比較〉中有 2 則留言

  1. 「Reki」的個人頭像

    要克服逐筆洗價交易失敗,只要下單的判斷加上”是否為同一根 bar”的條件就行,同一根 bar就不執行 SetPosition

    1. 「查理哥」的個人頭像

      感謝,這個辦法好

相關文章

[VIP] 當沖交易如何做到收K進場即時出場2

上一篇文章大概說明了如何在逐筆中運用condition[1]做到收K進場,即時出場,不過,這樣的運用還有些需要注意的細節,將會在本篇文章說明,不過寫的有點複雜,請耐心閱讀,對你的回測一定會有幫助的。

當沖交易如何做到收K進場即時出場1

想要讓回測績效貼近實單績效,你一定要知道如何做到收K進場即時出場,本文將不同的回測設定與程式碼撰寫方式做了比較,證明在逐筆回測中是可以收K後進場的,而且這樣的作法,自動交易也可以執行,不需要向過往把進場跟出場分開寫,更容易維護策略。

20250322[貓老大][XQ週末特訓班][講義下載]飆股的起點

貓老大「飆股的起點」講座資料,需要的請註冊後到最下方點下載,包含有講義跟XQ 雷達檔

[VIP] XQ自動交易不採坑: 交易進場日跟選股一致了嗎? (月、季、年資料)

上一篇跟大家分享了把日資料選股條件寫成自動交易腳本的正確方式,這篇文章將要繼續來分享月、季、年資料選股條件在自動交易內的正確撰寫方式。

XQ自動交易不採坑: 交易進場日跟選股一致了嗎? (日資料)

在新版XQ支援自動交易可以直接取得財報資料後,策略終於可以不用分開寫在選股與交易兩個模組裡面了,這大幅提升了策略開發的速度與後續維護的方便性。不過,當把選股條件寫入自動交易時,會遇到不同頻率的資料、還有些資料是在盤後才更新,取錯期數,很有可能發生選股與交易回測時,進場都是一致的,但一到實單就出現落差,本篇文章就是要來測試不同寫法對於進場日的影響,並找出正確的寫法,讓選股與交易不管是回測還是實單,都能保持一致的進場時機。

20241019[貓老大][XQ週末特訓班][講義下載]價量秘密 (2):從營收角度解析飆股的關鍵

貓老大「從營收角度解析飆股的關鍵」講座資料,需要的請註冊後到最下方點下載,包含有講義跟XQ 頁面指標檔案

20240928-XQ特訓班-查理哥-多策略交易技巧PPT

這次的多策略交易技巧,應該是把自己的壓箱寶都拿出來了,多是自己實驗出來的結果,方式可能對也可能錯,但就是給大家一個思考的方向去開發出自己的多策略交易方式。

20240914江大的特訓班簡報檔,含完整MSCI策略簡報

貓大的講座資料,需要請的註冊後到最下方點下載,包含有PPT跟XQ 程式碼檔案

20240824貓老大XQ達人講座資料

貓大的講座資料,需要請的註冊後到最下方點下載,包含有PPT跟XQ 程式碼檔案

20240817查理哥XQ達人講座PPT

今天講座的規劃,主要是要分享複製與優化策略的步驟,幫大家打個基礎,下次的講座,可就是直接進入主題了,不拖戲了~~

如何解綁XQ推薦碼? 刪帳號大法

XQ全球贏家的個人版有個推薦碼制度,你要你填寫了推薦人的推薦碼,推薦人就可以獲得你訂閱金額25%的點數回饋,可以用來抵扣之後訂閱模組的金額,而被推薦人有啥好處呢? XQ官方給的,就是首次訂閱模組可以拿到$100的優惠,那之後呢? 之後就啥鬼都沒有了~~ 😂😂😂

雙11,A+策略網也來三個優惠湊下熱鬧

這次的雙11促銷,A+策略網也來湊個熱鬧,搞了三個優惠給大家,請捧捧場啊~~ :-D :-D

[公告] 9/1號起,全面調整VIP會員加入方式

9/1號起,A+策略網將會有幾個跟會員資格有關的重大調整,請看說明

如何在Mac安裝XQ全球贏家 (m1, m2 CPU)

關於如何在使用m1或m2 CPU的蘋果電腦內執行XQ全球贏家軟體,XQ官方已經有提供了一篇教學文章,之所以會寫這篇,主要原因在文章內用到的虛擬機軟體Parallel是要付費的,而這篇文章,要教的是另外一個套vmware fusion player軟體,這個軟體的專業版是要錢的,但個人板可以免費使用

院長三六趨勢線+法人籌碼變化指標頁面分享

院長11/30在永豐金的講座,分享了一個三六趨勢線,讓用戶可以抓到趨勢又避免過度交易,院長還很貼心的幫大家多加了些法人籌碼變化,可以更有效的來協助大家做判斷,由於檔案索取踴躍,院長直接開放讓所有人都可以下載,雖然是鎖碼的,但只要好用就好,管他有沒有鎖碼,使用期限到2023/12/31

[選股] 運用陣列及雙迴圈統計各股每月紅K次數

一直都想要做個統計看看股票是不是在某個月份會有特別的表現,前陣子看到豐XQ的量化交易pro簡單裡面的做出陣列常勝軍影片,學到了幾招,終於有點動力來把這個統計表做出來了,原本的影片只有統計下個月的勝率,但自己喜歡一次看到所有月份的勝率統計,所以運用了豐XQ一部份的程式碼,加入三個陣列及雙迴圈的技巧,把這個統計表做出來

如何計算所有進場商品損益,一次出場

有網友問了個問題,希望能夠計算場中所有商品的損益,如果賺到一定金額或賠到一定金額,就全部一起出場, 想要實現這樣的功能,是有一點難度的,需要在一些條件下才能成立

運用Array統計所有股票的狀況

在XQ裡面,大多是在計算個股的狀況,但比較少把個股狀況全部一起做統計判斷,主要的原因在於程式碼在撰寫上較為複雜、運算上也較為緩慢,讓許多人打退堂鼓,不過,要做到這件事,還真的不是太難,且只要程式碼能精簡點,運算上是不會太慢的

運用Array建構時序資料 – 繪製景氣燈號指標

所謂運用Array建構時序資料,是啥意思呢? 簡單的講,就是array內的數值是照時間順序排列,就像我們每天的開高低收、成交量這些,可以用[0]、[1]去取過去的值,只要能實現這件事情,很多我們自己收集來的資料,就能跟使用XQ內建的資料一樣,做出各種計算了,看了XQ點點滴滴上的文章,似乎沒有發現有關這方面的運用,那咱們就來自己搞一下囉

如何讓XQ每天早上自動啟動

既然邁入了自動交易,總是希望能更輕鬆點,甚至早上電腦自己開、XQ自己開、策略自己啟動、自動賺錢,然後自己可以睡晚晚~~😆😆,這樣的事情,都是可以實現的,除了自動賺錢外,畢竟誰也沒法保證啊~~

最近發文

加入我們

Categories

最新留言