1. 程式人生 > >恆溫器 Thermostat 擇時策略研究

恆溫器 Thermostat 擇時策略研究

一個會換擋的交易策略


前言

趨勢行情不會永遠持續下去,事實上市場大部分時間都處於震盪行情,所以才會有人希望能得到一種交易策略,既可以用在趨勢行情,也可以用在震盪行情。


潮汐指數

恆溫器 Thermostat 交易策略,就是這種設計理念,在趨勢行情中採用趨勢策略,在震盪行情中採用震盪策略。這有點像汽車換擋,而決定換擋時機的因素,則是以潮汐指數(Choppy Market Index,簡稱CMI)為評判標準。


CMI 計算公式為:
收盤價減去29日前的收盤價的絕對值,然後,除以30日內的最高價減去30日內的最低價。

// CMI 指標:

CMI:=ABS(C-REF(C,29))/(HHV(H,30)-LLV(L,30))*100;


策略架構

一般來說 CMI 的值在0~100區間,值越大,趨勢越強。當 CMI 的值小於20時,策略認為市場處於震盪模式;當 CMI 的值大於等於20時,策略認為市場處於趨勢模式。


整個策略架構,可以簡化的寫成下面這樣:

  • 如果 CMI < 20,執行震盪策略;

  • 如果 CMI ≥ 20,執行趨勢策略;


架構就是這麼簡單,剩下的就是把震盪策略的內容和趨勢策略的內容,填充到這個框架裡面。


震盪策略內容
震盪策略

在震盪市場中,通常存在一種現象:如果今天價格上漲的話,那麼明天的價格下跌的概率更大。而今天價格如果下跌的話,那麼明天的價格上漲的概率更大,而這也正是震盪市場的特性。


// 關鍵價格:

KOD:=(H+L+C)/3;

所以這裡首先定義一個關鍵價格(最高價+最低價+收盤價的平均值)。如果當前價格大於關鍵價格,那麼明天應該震盪看空。相反的,如果當前價格小於關鍵價格,那麼明天應該震盪看多。


BE:=IFELSE(C>KOD,1,0);

SE:=IFELSE(C<=KOD,1,0);

在震盪行情中看多,只代表價格上漲的概率更大一些,並不是指價格一定就會上漲。所以把做多的閾值設定的比較低一點,把做空的閾值設定的比較高一點。


震盪看多進場:

  • 做多:最新價>max(開盤價+0.5*10日ATR,3日平均低價)

  • 做空:最新價≤min(開盤價-0.75*10日ATR,3日平均高價)


在震盪行情中看空,只代表價格下跌的概率更大一些,並不是指價格一定就會下跌。所以把做空的閾值設定的比較低一點,把做多的閾值設定的比較高一點。


震盪看空進場:

  • 做多:最新價>max(開盤價+0.75*10日ATR,3日最低價)

  • 做空:最新價≤min(開盤價-0.5*10日ATR,3日最高價)

// 定義10日ATR指標

TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));

ATR10:=MA(TR,10);




另外為了防止假突破,導致策略來回止損,因此加入了一個最高價與最低價3日均線濾網來避免這種情形。


// 定義最高價與最低價3日均線

AVG3HI:=MA(H,3);

AVG3LO:=MA(L,3);


最後計算出震盪市的進場價格:

LEP:=IFELSE(C>KOD,O+ATR10*0.5,O+ATR10*0.75);

SEP:=IFELSE(C>KOD,O-ATR10*0.75,O-ATR10*0.5);

LEP1:=MAX(LEP,AVG3LO);

SEP1:=MIN(SEP,AVG3HI);


震盪行情平倉條件:

  • 當最新價大於最高價的3日均線時,平多;

  • 當最新價小於最低價的3日均線時,平空;


趨勢策略內容

趨勢策略

當 CMI 值大於等於20,即市場處於趨勢模式,該策略系統在趨勢模式下運用布林通道策略。首先定義布林通道:


  • 布林中軌為50日收盤價均線

  • 上軌是中軌+2倍的50日收盤價標準差

  • 下軌是中軌-2倍的 50日收盤價標準差


MA50:=MA(C,50);

UPBAND:=MA(C,50)+STD(C,50)*2;

DNBAND:=MA(C,50)-STD(C,50)*2;

趨勢策略中的開倉邏輯:

  • 做多:最新價突破布林上軌

  • 做空:最新價跌破布林下軌


需要注意的是,因為震盪模式的出場是以3日高低均價為準。但是把這個標準放在趨勢模式下就不合時宜了。因此,此時的平倉方式是以當前價格與布林中軌的位置關係來判斷。


趨勢行情平倉條件:

  • 平多:當最新價小於布林中軌

  • 平空:當最新價大於布林中軌


策略原始碼

策略原始碼

附上策略原始碼連結,開啟連結直接執行:https://www.fmz.com/strategy/127033


回測
策略回測

策略回測


為了將回測結果儘量接近實盤交易,這裡把手續費設定為交易所的2倍,開倉和平倉各加2跳的滑點,回測的資料品種為螺紋鋼指數,交易品種為螺紋鋼主力連續。固定1手開倉。以下是在1小時級別的初步回測績效報告。


策略回測


結尾

從資金曲線和資料來看,該策略表現良好,在螺紋鋼品種回測中,除了2017年下半年有較大回撤外,整體資金曲線是穩步向上的。綜上,恆溫器策略的自動調節交易方式,為大家應對震盪行情提供了一定的思路。感興趣的讀者,可以根據自己的理解適當修改,做進一步的深入研究。


相關推薦:

[ 策略下載 ] 震盪與趨勢混合策略恆溫器策略