2013年10月31日 星期四

配對交易 - Pair Trading


    最近開始在研究配對交易(Pairs Trading)又稱為價差交易或是統計套利,對兩個有相關性走勢的商品做一多一空的組合交易。

    常見的配對交易有台金/電金/台電指期貨的配對。


    一般常見的Pair Trading的方式,是使用兩個商品相減或是相除組成一個新的價格做交易。使用的是價差發散的策略(買強空弱)



    最近研究的是,使用同族群高相關性的類股做均值回歸(Mean Reversion)、賭價差收斂的策略。而使用的方式不是一般常見的兩個商品相減或相除的方式。


    交易策略方式非常簡單,使用一般常見的震盪指標(KDRSICCI等)去判斷,在短週期內兩個商品的相對強弱力道。當兩個商品在短期內的強弱力道相差太遠時則空強買弱,賭同族群的兩個商品會均值回歸。



  以下是幾組現貨的簡易回測結果,回測使用的參數全部相同。而兩個不同的商品的部位大小(Position Sizing)也全部使用相同的方式及參數。


以下回測Position Sizing使用方式為 P(張數) = 5,000/20日的ATR

台積電-聯電


矽品-日月光


中信金-富邦金



16 則留言:

  1. 我是程式交易≠Holy Grail的站長,我自己對現貨的邏輯也有一些想法,不知道可否聊聊?

    wenschair@gmail.com

    回覆刪除
  2. 高手!!
    想和您請教價差交易的概念~~
    希望能聊聊
    hc65843@gmail.com

    回覆刪除
  3. 您好:看完覺得蠻有趣的,股票相關價差研究希望有機會能夠和您討論看看

    我主要是作全球期指當沖和價差交易~有空聊聊嚕

    macrotrader01@gmail.com

    回覆刪除
  4. 請問:您網站的每日權益紀錄是自動記錄還是手動登記的呢? 很想弄一個但不知如何起手!

    回覆刪除
    回覆
    1. 每天手動紀錄的喔,我是使用google雲端硬碟的試算表功能

      刪除
  5. Hi JC :
    看到你這篇友分享價差交易,寫得很不錯,只是內容有許多不太明瞭
    例如投資組合如何選定?在程式交易中如何使用?以及如何回測?
    不知您是否有更多的資料可以參考呢?

    elton.huang8888@gmail.com

    回覆刪除
  6. 配對交易可能不是這麼簡單...我結錄一下國外專家整理的比較
     Co-integrated:
     Long term
     Co-movement of price
     Random walk each
     Mean-reversion
     Correlated:
     Short term
     Co-movement of return
     Both move in the same direction
     Trend only, not sensitivity
    您做的應該是paired "return" 價差交易, 而非共整合的配對交易
    MC或TS 除非自己開發外掛, 否則很難做統計計量, R有quant 相關packages,Matlab 的economics toolbox, 這兩個接上下單API就可以做計量交易了

    您寫得不錯, for your reference.

    回覆刪除
    回覆
    1. 的確,配對交易沒有這麼簡單,當初寫文章的時候標題下太大了XD

      感謝你提供的參考~

      刪除
  7. Hi JC,

    Nice job on your article. My question is, what is your entry strategy and exit strategy. Also what's your hedging ration on your positions? I assume you used 5000/20 day ATR? I don't know a whole lot about using ATR in this case. What's your intuition on using ATR in this case? Do you assume that the pairs will converge in a relatively short (around 20 days) horizon?

    回覆刪除
    回覆
    1. Hi Cheng:

      進出場方式,在文中已經有提到
      "使用一般常見的震盪指標(KD、RSI、CCI等)去判斷,在短週期內兩個商品的相對強弱力道。當兩個商品在短期內的強弱力道相差太遠時則空強買弱"

      就使用兩個商品的傳統震盪指標判斷相對強弱而已,發散就進場,收斂後就出場。

      此篇的pair trading並不是使用常見的cointegration test ,或是其他有統計理論基礎的檢定,主要只是有一個簡單想法,對它進行回測並展示而已。

      這邊的交易訊號的計算產生,是根據兩個價格序列的震盪指標強弱計算,與hedge ratio無關,不是使用spread = X - R*Y 這個spread時間序列進行判斷及回測。

      部位大小使用5000/ATR(20),只是希望將兩邊的部位的波動程度差不多,
      若商品A的日平均震幅為商品B的兩倍,ATR(A) = 2 * ATR(B),則我希望商品B的部位是商品A的兩倍:

      Position(B) = 2 * Position(A)

      當然日ATR(20)只是過去20日的true range的平均,無法推測未來的波動,所以其實也只是隨意所選取的一個方式。

      刪除
  8. Hi JC:

    you have good ideas, can we chat? maxclchen@gmail.com
    my pairs trading paper
    http://myweb.fcu.edu.tw/~chenws/pairs.pdf

    回覆刪除
  9. 您好,
    請問您是怎麼回測的? 有用ADE嗎?
    我自己試著寫配對交易,在一個底稿下開兩張圖表
    一張圖表data1 放商品A data2 放商品B,一張圖表data1 放商品B data2放商品A
    但回測只能看一張圖表的而已,配對交易應該是要兩張圖表加起來
    能否請教一下該如何讓兩張圖表的回測結果佳總呢?
    謝謝

    回覆刪除
  10. Hi JC

    謝謝您的分享,不知道您是否還有繼續這個策略的研究?
    我主要是做程式交易的當沖和CTA多商品策略為主
    最近剛好在研究配對交易策略,想補足投組的多元性
    如果方便交流想法的話,再麻煩您私訊囉,感恩!!

    rattler.tsai@gmail.com

    回覆刪除