請選擇 進入手機版 | 繼續訪問電腦版

COCO研究院

 找回密碼
 註冊
搜索
查看: 11634|回復: 14

市場穿透性的迷思

[複製鏈接]
發表於 22-8-17 11:49 | 顯示全部樓層 |閱讀模式
本帖最後由 萬年船 於 22-8-17 11:50 編輯

剛接觸海外期貨的人,最想做的就是把現有的策略直接移植到海外市場去,通常會出自於兩個原因:

  • 比較省事,不用再研發新策略
  • 認為有市場穿透性作為基礎,移植後在新市場的交易會更穩定

第一個原因自然是成立的,沒問題,但第二個原因可能就未必成立了(等一下論述原因並且證明),所以進入海外市場時,最好還是一個城池(市場)一個城池(市場)慢慢攻克,這樣才能真的穩定,畢竟跨足海外市場,圖的就是分散風險、增加穩定性

論述

策略在多市場的穿透性自然是越高越好,代表背後的邏輯是普遍存在於市場上的真東西,所以此交易邏輯是有所依據的,而非瞎湊出來的overfitting下的產物,但這個真東西不代表在另一個能被穿透的市場上也是穩定的,穩定的東西靠的是統計上的顯著性(或利基),顯著性越高才越穩定

證明

以下舉一個實例來證明『市場穿透性與另一個市場的穩定性無關』,此例子以美國市場的那斯達克(NQ)、標普(ES)、道瓊(YM)來當測試標的物,由前者穿透到後二者,測試條件如下

本穿透策略的特性
  • 策略類型:當沖
  • 進場單:限價單
  • 出場單:限價單、停止單、市價單
  • 可最佳化參數:7個
  • 策略複雜度:簡單(主要只有一個多頭進場IF敘述、一個空頭進場IF敘述、setexitonclose、停利指令、停損指令,如此而已)
  • 每年交易次數:數百筆


那斯達克(NQ)

  • 傭金設定:$2.03
  • 滑價設定:每口$2.15
  • 限價單回測設定:穿價1 tick才算成交(此設定實際交易,會比回測績效好)


標普(ES)

  • 傭金設定:$2.03
  • 滑價設定:每口4.13
  • 限價單回測設定:穿價1 tick才算成交(此設定實際交易,會比回測績效好)


道瓊(YM)

  • 傭金設定:$2.03
  • 滑價設定:每口2.22
  • 限價單回測設定:穿價1 tick才算成交(此設定實際交易,會比回測績效好)

測試時間為2007~2018(12年)的In-Sample資料,把那斯達克的這個策略直接套用在標普與道瓊,且每個參數都設一樣,如果權益曲線都向上,那無疑就是代表穿透了,如下圖所示

2022-8-17 上午 06-40-25.png

2022-8-17 上午 07-02-32.png

很明顯的在In-Sample測試中,第一個圖顯示本策略確實由那斯達克穿透到標普與道瓊,再看第二個績效指標圖,年化夏普值由原本那斯達克的1.25降低到標普與道瓊的0.5左右,此時大家可能會跑出一個念頭,反正被穿透的標普與道瓊還是賺錢,雖然績效低一些,也無所謂,有市場穿透性的基礎當靠山,將來一定還是能穩定賺錢的

接著我們來驗證此此念頭是否正確,前面我們用的是2007~2018(12年)In-Sample的資料,現在改用之後Out-of-Sample 2019~2022年7月的資料(約3年半),如下圖所示


2022-8-17 上午 07-31-22.png

2022-8-17 上午 07-38-01.png

由第一個圖可以看到被穿透的標普與道瓊在後來的Out-of-Sample資料都在走蛇行,而年化夏普值更是變的很低,甚至變負的,問題出在哪呢?傳說中的市場穿透性難不成要走下神壇了嗎?其實也不是說市場穿透性沒用了,而是穿透到別的商品或市場時,利基還要夠多才行,這樣在被穿透的商品或市場,套用相同策略才容易穩定

這時大家可能又會跑出另一個念頭,雖然那斯達克、標普、道瓊都是美國市場,但畢竟還是不同成分股所組成,參數還是要有差異化才會穩定,有道理,接著我們再把標普與道瓊在In-Sample資料下進行最佳化,結果如下圖所示

2022-8-17 上午 08-33-57.png

2022-8-17 上午 08-39-52.png

在In-Sample資料下進行最佳化,曲線變得漂亮了,年化夏普值也接近1或超過1了,緊接著再來看之後Out-of-Sample的表現,如下圖所示

2022-8-17 上午 08-53-32.png

2022-8-17 上午 08-58-01.png

由第一個圖可以看到標普與道瓊在後來的Out-of-Sample資料還是在走蛇行,而年化夏普值也是變的很低,甚至變負的

我把OE (Out-of-Sample Efficiency)定義為
OE = Out-of-Sample年化夏普值 / In-Sample年化夏普值
OE概念上跟WFO的WFE類似,現在我們來看那斯達克(nq)與最佳化版本的標普(es)、道瓊(ym)的OE值

  • OE(nq) = 1.35 / 1.25 = 108 (%)
  • OE(es) = 0.46 / 0.87 = 53 (%)
  • OE(ym) = -0.11 / 1.14 = -10 (%)


只有那斯達克的OE值是優良的,而標普的OE值則是勉勉強強,最差的則是道瓊還小於50%,甚至是負的,所以真的能放心下去交易的只有那斯達克,標普與道瓊雖然策略也能穿透過來,但利基不夠,仍不適合實際交易

最後結論
  • 往海外期貨發展時,不要急著一次全部到位,想直接搭著市場穿透性的翅膀,隨隨便便網羅一堆市場,因為在沒有足夠利基(或統計上的顯著性)的情況下,投資組合可能會變得更不穩定;一個市場一個市場慢慢研究,顯著性足夠時才加進投資組合,這樣才是上策
  • 策略在別的市場具有穿透性,只能說明在原本市場的交易是更可信賴的,但是在被穿透的市場上交易未必仍有穩定性(除非也有足夠的利基或統計上的顯著性)



評分

參與人數 5金錢 +11 收起 理由
wldtw2008 + 2 好文章,我推薦
songmoney + 2 感謝分享
jackthetan + 2 太強了
Samvju + 2 感謝分享
tinyding + 3 感謝分享

查看全部評分

 樓主| 發表於 22-9-19 10:47 | 顯示全部樓層
本帖最後由 萬年船 於 22-9-19 10:49 編輯

附上本策略分別在這三個商品執行WFO後,其WFO的樣本外績效(Out-of-Sample Risk-Adjusted Return),如下圖所示

  • WFO樣本外績效(NQ) = 1.78
  • WFO樣本外績效(ES) = 0.67
  • WFO樣本外績效(YM) = 0.21



2022-9-19 上午 09-50-39.png

2022-9-19 上午 09-47-45.png

2022-9-19 上午 09-52-27.png



發表於 22-8-17 13:38 | 顯示全部樓層
我就是那個想一次到位的人..XD這篇文對我很有幫助,會再反覆閱讀思考

評分

參與人數 1金錢 +2 收起 理由
萬年船 + 2 其實大部分人都是

查看全部評分

發表於 22-9-17 10:27 | 顯示全部樓層
感謝大大分享!!! 非常難得的好文章!!
發表於 23-8-29 02:15 | 顯示全部樓層
滑價設定:每口2.22好像是 micro 的價格

mini 的都應該10倍? 不知我是否想錯? micro 2007年還沒有,所以我想應該還是mini
 樓主| 發表於 23-8-29 05:06 | 顯示全部樓層
本帖最後由 萬年船 於 23-8-29 05:08 編輯
TrendRover 發表於 23-8-29 02:15
滑價設定:每口2.22好像是 micro 的價格

mini 的都應該10倍? 不知我是否想錯? micro 2007年還沒有,所以我 ...

是mini(YM)沒錯,不過是帶量時段的滑價設定(美中08:00-15:15),因為此策略是當沖策略
早期在2016年10月有進行嚴謹的量測,在美中08:00-15:15,YM的平均買賣價差約1.17個最小跳動點(現在是多少,就不知道了)
而停止限價單直接掛在交易所,所以設定滑價2.22

請參考此篇的說明:海外期貨(Globex)商品的當沖交易成本估計(Slippage Ratio設0.38)

發表於 23-9-1 02:30 | 顯示全部樓層
萬年船 發表於 23-8-29 05:06
是mini(YM)沒錯,不過是帶量時段的滑價設定(美中08:00-15:15),因為此策略是當沖策略
早期在2016年10月 ...

那斯達克(NQ)
  • 傭金設定:$2.03
  • 滑價設定:每口$2.15

這邊有 $ 2.15 我誤以為是美金

 樓主| 發表於 23-9-7 11:36 | 顯示全部樓層
TrendRover 發表於 23-9-1 02:30
那斯達克(NQ)
  • 傭金設定:$2.03

  • NQ滑價設定:每口$2.15,此值是美金沒錯

    2016年有嚴謹量測過NQ,在美中08:00-15:15的平均買賣價差約1.13個最小跳動點
    此帶量時段滑價 = 5 * 0.38 * 1.13 = $2.15
    (最小跳動點$5、Slippage Ratio設0.38)


    評分

    參與人數 1金錢 +2 收起 理由
    TrendRover + 2 按一個讚

    查看全部評分

    發表於 23-9-18 07:54 | 顯示全部樓層
    謝謝萬年船大大.

    想問一個很基礎的問題. 看到您的backtest報表是感覺一次可以測3個instruments, 並把equity curve排在一起. 請問您是如何做出這樣的設定呢? 我都每次只能跑出一個圖, 然後再關掉跑下一個 :(
     樓主| 發表於 23-9-18 14:05 | 顯示全部樓層
    rc76 發表於 23-9-18 07:54
    謝謝萬年船大大.

    想問一個很基礎的問題. 看到您的backtest報表是感覺一次可以測3個instruments, 並把equit ...

    我一次也只測一個instrument
    文中只是把三個回測圖剪貼黏在一起而已

    發表於 23-9-18 22:53 | 顯示全部樓層
    好的! 謝謝萬年船大大!
    發表於 23-10-4 14:58 | 顯示全部樓層
    請問萬年大:

    ---> 穿價1 tick才算成交(此設定實際交易,會比回測績效好)

    這是什麼意識呢? 請問在回測怎麼樣做這樣的設定呢? 是把slippage費用多加1 tick嗎
    發表於 23-10-4 15:10 | 顯示全部樓層
    感謝分享,學到了不少概念,蔡基繼續努力學習
     樓主| 發表於 23-10-5 15:56 | 顯示全部樓層
    rc76 發表於 23-10-4 14:58
    請問萬年大:

    ---> 穿價1 tick才算成交(此設定實際交易,會比回測績效好)

    2023-10-5 下午 03-54-18.png
    發表於 23-10-7 19:20 | 顯示全部樓層
    抱歉, 原來這是在回測內設定. 謝謝萬年大!
    您需要登錄後才可以回帖 登錄 | 註冊

    本版積分規則

    手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

    GMT+8, 24-5-26 14:39

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

    快速回復 返回頂部 返回列表
    理財討論網站 | AI繪圖AI超擬真美女AI beauty AI Stable DiffusionAI正妹AI Lookbook