基於新型相對強弱指數在日內策略中的使用

一、摘要

傳統的相對強弱指數(Relative Strength Index)是以雙線來反映價格走勢的強弱,這種圖形可以爲投資者提供操作依據,非常適合做短線差價操作。

RSI 根據市場上供求關係平衡的原理,通過比較過去一段時期內價格上漲和下跌的幅度來判斷市場上多空雙方買賣力量的強弱程度,從而判斷未來市場走勢。

二、RSI的作用

在實際交易中,RSI 一般只作爲判斷價格走勢的參考,其本身難以發出準確地交易信號。它只是輔以其他技術分析的一種佐證。例如,在形態理論中,當頭肩頂形態確認時,如果此時 RSI 處於超買區,則進一步加強了反轉發生的可能性。

其數學原理是,簡單來說是以數字計算的方法求出買賣雙方的力量對比,譬如有 100 個人面對一件商品,如果 50 個人以上要買,競相擡價,商品價格必漲。相反,如果 50 個人以上爭着賣出,價格自然下跌。

三、RSI 的定義

首先定義上漲幅度 U 和下跌幅度 D:
在這裏插入圖片描述

接着定義相對強弱(Relative Strength):
在這裏插入圖片描述

其中,SMA(x, n)爲 x 的週期爲 n 的簡單移動平均值。
將 RS 歸一化後,得到RSI:
在這裏插入圖片描述

歸一化後保證了 RSI 的取值範圍在 0 ~ 100 之間,這樣使得不同時刻的 RSI 具有可比性。通過定義可以看出,RSI 與 RS 成正相關關係,而 RS 與過去 n 個週期內平均上漲幅度成正比,與過去 n 個週期內平均下跌幅度成反比。

因此,RSI 衡量了過去 n 個週期內,平均上漲幅度相對於平均下跌幅度的大小,即過去 n 個週期內,多頭相對於空頭的力量強弱。其值越大,表明過去一段時間多方越強勢;其值越小,表明過去一段時間空方越強勢。

四、RSI策略

傳統的 RSI 擇時策略主要分爲兩大類。一類是反轉策略,即當 RSI 大於(小於)某一較大(較小)值時,認爲多方(空方)力量佔優的局面會有所改變。

另一類策略則剛好相反,即當 RSI 由小變大(由大變小)時,表明多方(空方)力量佔優,同時認爲這種趨勢會繼續延續下去。下面分別具體介紹。

RSI反轉策略:
設 RSI 上閾值爲 M,則下閾值爲 100 - M。M < RSI < 100 的區域定義爲超買區,即此時多方在過去已經拉昇一段時間,此後空方佔優的概率更大一些;反之,0 < RSI < 100 - M 的區域定義爲超賣區,此時空方已經壓價一段時間,此後多方佔優的概率更大。

因此,當 RSI > M 時平倉並做空,當 RSI < 100 - M 時平倉並做多,如下圖所示。一般 M 的取值爲 80 或 70。
在這裏插入圖片描述

RSI 趨勢策略
RSI 趨勢策略與移動平均線趨勢策略類似,當短期 RSI 上穿(下穿)長期 RSI 時,認爲此事多方(空方)開始發力,價格上漲(下跌)的趨勢會繼續延續一段時間。短期 RSI 上穿長期 RSI 叫做黃金交叉,是買入時機;短期 RSI 下穿長期 RSI 叫做死亡交叉,是賣出時機,如下圖所示。

在這裏插入圖片描述

五、傳統的 RSI 擇時策略用於股指期貨

但是 RSI 用於量化交易的效果如何呢?下面我們在 IF300 上測試一下傳統的 RSI 擇時策略。爲了突出本質,我們採用了最簡單的 RSI 擇時策略,不設置止盈和止損。

代碼如下:

/*backtest
start: 2015-02-22 00:00:00
end: 2020-04-09 00:00:00
period: 1d
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
*/

function main() {
    $.CTA('IF000', function (st) {
        var r = st.records;
        if (r.length < 14) {
            return;
        }
        var rsi = talib.RSI(r, 14);
        var rsi1 = rsi[rsi.length - 2];
        var mp = st.position.amount;
        if (mp != 1 && rsi1 < N) {
            return 1;
        }
        if (mp != -1 && rsi1 > 100 - N) {
            return -1;
        }
    });
}

回測結果
在這裏插入圖片描述

可以看出,無論是用於短線還是中長線,RSI 反轉策略得到的收益均爲負。傳統的 RSI 反轉策略無法單獨直接用於量化交易。

六、策略弊端

那麼有沒有更好的、可用於股指期貨或商品期貨的 RSI 擇時策略呢?我們從傳統的 RSI 擇時策略的缺點入手。傳統 RSI 反轉策略的缺點是隻利用單獨週期的 RSI 指標。雖然短期 RSI 處於超賣區,但可能較長期的 RSI 處於超買區,此時做空只能在短線獲得很少的盈利,在較長線則很可能虧損。

而傳統的 RSI 趨勢策略是交叉的滯後性,往往是上漲了一段時間纔出現交叉,此時距離下次反轉爲時不多,所以獲利空間小。同時,交叉只考慮了長短週期的 RSI 的相對大小,而沒有考慮 RSI 本身的絕對大小。因此,將兩個傳統策略的優勢相結合,可以得到新的長短期 RSI 擇時策略。

七、策略升級

爲了克服採用單一 RSI 的弊端,我們在兩個不同週期的 K 線上,用相同的參數週期 N,分別計算短期和長期 RSI 。這樣就能更好的反映中長線的多空力量強弱。

爲了克服採用 RSI 相對大小的弊端,我們隊長期和短期 RSI 分別設定兩個閾值 L 和 S。當長期 RSI > L 時,認爲長期來看多方佔優勢,當短期 RSI > S 時,認爲多方開始發力,趨勢將會延續;反之亦然。

因此,首先我們可以對 L 和 S 的趨勢範圍有一個預判。由於短期 RSI 比長期 RSI 更加敏感,所以 L < S。L的取值範圍應該在 50 左右,S 的趨勢範圍應該在 80 左右。這樣才能保證長期 RSI 其篩選作用。

八、策略邏輯

在這裏插入圖片描述

  • 多頭條件:長期 RSI > L,並且短期 RSI > S。
  • 空頭條件:長期 RSI < 100 - L,並且短期 RSI < 100 - S。
  • 平倉條件:浮盈與虧損達到一定程度時平倉,或者時間等於收盤前 5 分鐘平倉。

改進的 RSI 交易策略分別計算不同週期的 K 線上的 RSI 指標,當低頻 K 線的 RSI 較爲強勢,高頻 K 線的 RSI 非常強勢時做多,當低頻 K 線的 RSI 較爲弱勢,高頻 K 線的 RSI 指標非常弱勢時做空,並在收盤前平倉。動手能力強的小夥伴可以參考這個邏輯加以升級改進。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章