來(lái)源:掘金量化 myquant.cn 作者:胡琛
前言:
我們經(jīng)常能聽(tīng)到某些股票分析師,夸夸其談什么均線多頭排列,雙均線金叉,KDJ 金叉,MACD 金叉,綜合判定當(dāng)下 行情多頭強(qiáng)勢(shì),正是我們買入賺錢的好時(shí)機(jī),然后拿出某只強(qiáng)勢(shì)上漲的股票例證:您看這只股票的這一波大漲是不是 都出現(xiàn)我所說(shuō)的買入信號(hào)呢?
實(shí)際情況,當(dāng)某只股票行情走勢(shì)很好,出現(xiàn)類似指標(biāo)金叉的信號(hào)是很常見(jiàn)的現(xiàn)象。但是有時(shí)候某只當(dāng)日股票波動(dòng)很大, 同樣出現(xiàn)指標(biāo)金叉買入信號(hào),然而為什么次日股價(jià)不漲反而轉(zhuǎn)跌呢?
那么,到底這樣的信號(hào)可靠性如何,正確率又怎么樣呢?這里,我們利用掘金量化交易平臺(tái),基于歷史行情,市場(chǎng)數(shù)據(jù), 對(duì)全市場(chǎng)股票進(jìn)行模擬交易,根據(jù)技術(shù)指標(biāo)信號(hào)進(jìn)行操作,驗(yàn)證這些技術(shù)指標(biāo)到底效果怎樣? 同時(shí),我們會(huì)根據(jù)技術(shù)指標(biāo)的計(jì)算方式,對(duì)其內(nèi)在含義進(jìn)行分析,引導(dǎo)大家去了解它的交易邏輯。
常見(jiàn)技術(shù)指標(biāo)舉例
雙均線
雙均線策略是市面上經(jīng)常見(jiàn)到的一種擇時(shí)操作,具體而言,就是比較長(zhǎng)短兩個(gè)周期的均線,當(dāng)短期均線突破長(zhǎng)期均線的時(shí)候,我們認(rèn)為短期趨勢(shì)向上,應(yīng)該進(jìn)場(chǎng);當(dāng)長(zhǎng)期均線突破短期均線的時(shí)候,則認(rèn)為短期趨勢(shì)向下, 應(yīng)該出場(chǎng)等待 (針對(duì)國(guó)內(nèi)股票) 或者賣空 (針對(duì)境外股票和期貨等支持賣空的品種)。
目前市場(chǎng)上流行的均線一般主要是兩種,一種是簡(jiǎn)單的均線,即將過(guò)去一段時(shí)間內(nèi)的價(jià)格計(jì)算簡(jiǎn)單平均,之后 隨著新的數(shù)據(jù)過(guò)來(lái),均線也會(huì)有新的值產(chǎn)生;但是這種簡(jiǎn)單均線的計(jì)算方式,將過(guò)去一段時(shí)間的價(jià)格認(rèn)為是等權(quán)重的,這會(huì)導(dǎo)致我們看到的均線相比股價(jià)變化,滯后太過(guò)嚴(yán)重,因此,有人提出了指數(shù)平滑移動(dòng)平均線,將 離當(dāng)前日期更近的價(jià)格賦予更大的權(quán)重,為了計(jì)算需要,我們假設(shè),當(dāng)日收盤價(jià)定義為 , 之前第 日的收盤價(jià)定義為 , 于是,我們就有如下公式:
除了簡(jiǎn)單均線,指數(shù)平滑移動(dòng)平均線,還有很多其他類的均線,包括累計(jì)移動(dòng)平均線,加權(quán)移動(dòng)平均線,指數(shù)加 權(quán)移動(dòng)平均線等,具體計(jì)算公式和說(shuō)明可以看英文wiki。
KDJ指標(biāo)
KDJ的計(jì)算方式具體分為以下幾個(gè)步驟:
1. 隨機(jī)未成熟指標(biāo) (RSV) 的計(jì)算: (收盤價(jià) - 日最低價(jià)) / ( 日最高價(jià) - 日最低價(jià)) * 100
2. K 值:RSV 值的 日移動(dòng)平均
3. D 值:K 值的 日移動(dòng)平均
4. J 值:
其中, 的取值一般為 9, 與 的取值一般均為 3.
從計(jì)算方式,可以知道,最近 9 日的最高和最低形成了一個(gè)通道,最近一日的收盤價(jià)在這個(gè)通道內(nèi)距離通道底側(cè) (9 日最低價(jià)) 位置由 RSV 表示,因此,RSV 的 3 日平均表明了最近 3 日收盤價(jià)在通道內(nèi)的平均位置,表明 短期收盤價(jià)的運(yùn)行趨勢(shì);而 D 值作為 K 值的 3 日平均,則表明了收盤價(jià)的更長(zhǎng)期的趨勢(shì),因此,利用 KD 均 線的位置關(guān)系,我們可以去評(píng)判最近的趨勢(shì)運(yùn)行方向。而 J 值的定義,一個(gè)比較容易的理解方式是,其表明了短期 短期趨勢(shì)力量的強(qiáng)弱,而且,因?yàn)閷?duì)于 K 的權(quán)重設(shè)置為 3,對(duì)于 D 的權(quán)重設(shè)置為 2,可以認(rèn)為 J 值對(duì)于短期 價(jià)格更為敏感。如果將 J 值具體展開(kāi),表達(dá)式為 , 可以看出 J 值會(huì)在 166.67 和 -66.67 之間波動(dòng),實(shí)際情況中,J 值經(jīng)常會(huì)在 20 到 80 之間波動(dòng),如果價(jià)格不斷上行, 則 J 值會(huì)在大于 80 的區(qū)域運(yùn)行;如果價(jià)格不斷下行,則 J 值不斷在 20 以下區(qū)域運(yùn)行。
MACD指標(biāo)
MACD的計(jì)算方式具體分為以下幾個(gè)步驟:
· 12 日 EMA 的計(jì)算:EMA12 = 前一日 EMA12 X 11/13 + 今日收盤 X 2/13
·26 日 EMA 的計(jì)算:EMA26 = 前一日 EMA26 X 25/27 + 今日收盤 X 2/27
· 差離值(DIF)的計(jì)算:DIF = EMA12 - EMA26
· 今日 DEA = (前一日 DEA X 8/10 + 今日 DIF X 2/10)用(DIF-DEA)*2 即為 MACD 柱狀圖。
從 MACD 計(jì)算公式進(jìn)行分析:
· 12 日和 26 日的 EMA 差值體現(xiàn)了短期 (12 日) 和長(zhǎng)期 (26) 日的趨勢(shì)變化,即 DIF 的涵義,當(dāng) DIF 不斷 變大時(shí),表明短期趨勢(shì)不斷向上;反之,則不斷向下
· 對(duì) DIF 進(jìn)行指數(shù)移動(dòng)平均計(jì)算,則體現(xiàn)了趨勢(shì)的延續(xù)性,也就是 DEA 的含義,當(dāng)用 DIF - DEA 的時(shí)候,表明當(dāng)期趨勢(shì)相比一段時(shí)間內(nèi)的趨勢(shì)的能量大小,因此,如果看到紅柱長(zhǎng)度不斷萎縮,表明向上的力量越來(lái)越弱;反之, 則表示趨勢(shì)的力量很強(qiáng);
技術(shù)指標(biāo)回測(cè)與分析
最原始策略
基于以上技術(shù)指標(biāo)的分析,我們很容易就形成簡(jiǎn)單的股票買賣邏輯,譬如,雙均線金叉我們就買入,雙均線死叉 我們就賣出;KD 金叉就買入,KD 死叉就賣出;MACD 紅柱時(shí)買入持有,一旦 MACD 綠柱了,立刻賣出,那么 這樣的交易邏輯是否合理,能否賺錢呢?
此時(shí),回測(cè)技術(shù)的使用,能極大地幫助我們?nèi)?duì)指標(biāo)有效性合理性進(jìn)行判斷和分析。這里,我們使用掘金量化平 臺(tái)進(jìn)行回測(cè),回測(cè)周期為 2016 年 6 月 17 日到 2017 年 8 月 21 日。同時(shí),為了避免出現(xiàn)針對(duì)某一支股票上應(yīng)用技術(shù)指標(biāo)回測(cè)而出現(xiàn)類似幸存者偏差的問(wèn)題,我們分別對(duì)滬深 300 的成分股和中證 500 的成分 股分別進(jìn)行了回測(cè)分析。收益曲線具體可以看下面 6 張圖。左邊從上往下,依次為雙均線策略,KD策略和MACD策略在滬深300成分股上的回測(cè)收益曲線;右邊3圖從上往下依次為雙均線,KD以及MACD策略在中證500成分股上的回測(cè)收益曲線。
技術(shù)指標(biāo)到底有沒(méi)有用?
從上面的結(jié)果,我們可以看到,有些指標(biāo)有些效果,有些指標(biāo)甚至有反面效果,那么,是否技術(shù)指標(biāo)就沒(méi)有用, 或者我們選擇的指標(biāo)難道不對(duì)?
其實(shí),我們可以從幾個(gè)方面去理解技術(shù)指標(biāo):首先,單指標(biāo)而言,很多股票交易邏輯都跑不過(guò)滬深 300 的指數(shù), 如果只是單純做投資,那不如直接去買滬深 300 的指數(shù)基金。但是,從歷史的滬深 300 走勢(shì),我們也能看 出來(lái),哪怕滬深 300 指數(shù),都是有漲有跌的,如果去保證我們買入在低點(diǎn),賣出在高點(diǎn),這個(gè)也不是說(shuō)隨機(jī) 就能做到的。我們投資的資金不是說(shuō)能一直都保留不動(dòng)的,中間可能會(huì)隨機(jī)要取出來(lái),如果說(shuō)不小心在指數(shù)處于 低點(diǎn)的時(shí)候賣出,而在指數(shù)高點(diǎn)的時(shí)候買入,未免不合時(shí)宜。因此,哪怕對(duì)于指數(shù),我們也希望能夠去做 一些擇時(shí)操作,能夠去盡量追漲殺跌。
但是,從之前的回測(cè)結(jié)果看,單一的技術(shù)指標(biāo)效果似乎很一般,是否說(shuō)技術(shù)指標(biāo)就沒(méi)有效果了呢?其實(shí)這時(shí)候, 我們可以返回過(guò)來(lái)看技術(shù)指標(biāo)的內(nèi)稟涵義,雙均線,包括 KD 均線,用到的技術(shù)都是看短期趨勢(shì)和長(zhǎng)期趨勢(shì) 的比較,但是,兩者看的時(shí)間趨勢(shì)范圍是不同的,一個(gè)是 5,20 日的趨勢(shì),一個(gè)是 9,3,3 形成的短, 長(zhǎng)周期趨勢(shì)比較,而 MACD 不僅包含了另外的時(shí)間范圍內(nèi)趨勢(shì)的變化,更是加入了趨勢(shì)變化強(qiáng)弱的概念, 對(duì)于這些從不同維度看待股票的技術(shù)指標(biāo),我們完全可以去做多個(gè)指標(biāo)的結(jié)合,一方面從多個(gè)角度去確認(rèn) 我們進(jìn)場(chǎng)信號(hào)的正確性,另一方面是去盡早找到應(yīng)該離場(chǎng)的點(diǎn)在哪里。
篇幅所限,筆者這里簡(jiǎn)單做了一個(gè)雙均線與KD均線雙重信號(hào)確認(rèn),出場(chǎng)結(jié)合 MACD 的策略,并將其應(yīng)用到滬深 300 上, 回測(cè)效果如下圖所示。由于每次只買1手股票,因此縱軸顯示收益率的值會(huì)比較小。各位讀者如果感興趣,完全可以基于對(duì)技術(shù)指標(biāo)的理解,去開(kāi)發(fā)屬于自己的策略, 譬如,更具 MACD 量柱的長(zhǎng)短,也就是趨勢(shì)力量的強(qiáng)弱去決定進(jìn)出場(chǎng),去根據(jù) KDJ 中 J 值的含義, 去做關(guān)于 J 值的股票交易邏輯策略。
關(guān)于技術(shù)指標(biāo),市面上要不就批的很臭,要不就奉為圭臬,歸根結(jié)底,都是一葉障目,只看到了短期的某一支或某幾支股票,而某些股票大師又會(huì)去挑出符合他們說(shuō)辭的股票走勢(shì)來(lái)試圖給他們的言論加上說(shuō)服力。其實(shí),如果投資者懂一些回測(cè)技術(shù),利用歷史數(shù)據(jù),去將自己的想法簡(jiǎn)單實(shí)現(xiàn),對(duì)于這些指標(biāo)應(yīng)該能有一些自己的判斷。
在本文,筆者之所以用滬深300的成分股和中證500的成分股去做指標(biāo)的回測(cè),目的就是為了避免只操作幾支股票,出現(xiàn)幸存者偏差,另一方面,通過(guò)更多投資標(biāo)的的組合,也能將風(fēng)險(xiǎn)控制在一定范圍內(nèi),以避免單獨(dú)一支或幾支股票出現(xiàn)黑天鵝,導(dǎo)致投資出現(xiàn)不可控的風(fēng)險(xiǎn)。
此外,由于中國(guó)股市中,個(gè)股與大盤指數(shù)相關(guān)性極強(qiáng),因此,完成可以加入大盤指數(shù)的擇時(shí)判斷,然后再去操作個(gè)股,如果大盤指數(shù)擇時(shí)信號(hào)很差,那么,完全可以空倉(cāng)等待,寧不做,不做錯(cuò)。
聯(lián)系客服