量化炒股10:技術指標的運用2

今天這篇文章主要講述兩個方面內容,一個技術指標的歷史排序,另一個是副圖上的技術指標。

一、技術指標的歷史排序

我們在覆盤的時候,有時可能會有如此想法:對過去的某個日期的全部股票或部分股票的某些指標進行排序。舉例來說,想看一下2021年6月1日的滬深300板塊中300只股票的漲幅排名。這時我們可以透過下面的方法來實現:

首先,如下圖找到滬深300板塊:

量化炒股10:技術指標的運用2

之所以選擇滬深300板塊,是因為這個板塊只有300只股,一會兒的計算速度會快一些,大家也可以選擇自己想檢視的板塊,甚至全部4000多隻A股也可以。

在滬深300板塊中,隨便在某一隻股票上點選右鍵,點選彈出選單中間位置的“歷史行情。指標排序”,如下圖:

量化炒股10:技術指標的運用2

點選之後,可能會提示您需要下載完整的資料,點選確定下載等待其下載完畢即可,之後我們可以看到介面發生了變化,如下:

量化炒股10:技術指標的運用2

再在這個介面中點選右鍵,彈出如下選單:

量化炒股10:技術指標的運用2

選擇其中的“選擇交易日”,就會彈出一個視窗:

量化炒股10:技術指標的運用2

這時咱們就可以輸入想要排序的歷史日期了,本例中,選擇2021年6月1日,將日期修改完畢之後,點選“確定”,這時所有的股票資料就都是6月1日的了,一般預設的是那一天的漲幅從大到小排序,軟體預設給出的幾個資料除了當日漲幅之外,還有收盤價、成交量等資料,我們可以選擇自己需要的指標排序。

但是,軟體預設提供的指標太少,沒有咱們想排序的指標,特別是沒有咱們自己編寫的指標怎麼辦?下面講一下如何將自己編寫好的指標公式進行歷史排序。

還是舉個例子,比如我們建立了一個指標,這個指標是想表達過去10個交易日的振幅,這時我們先按照上一章介紹的步驟,建立一個新的指標公式,取名叫“振幅”,在指標公式編輯器中輸入語句:

振幅:HHV(H,10)/LLV(L,10);

我們將10日內的最大值除以10日內的最小值定義為“振幅”。將指標儲存關閉。

再在任意一隻股上點選右鍵,在彈出選單中選擇“更改排序指標”:

量化炒股10:技術指標的運用2

點選“更改指標排序”之後,彈出如下視窗:

量化炒股10:技術指標的運用2

下拉進度條找到剛剛編輯好的指標公式“振幅”,一般都在最後一個。點選右側的“確定”,這時我們發現頁面中的最右側就出現了“振幅”這個指標公式的取值:

量化炒股10:技術指標的運用2

我們可以透過點選右上角的“振幅”二字,對其進行排序,點選一次從大到小排序,再點選一次就可以從小到大排序。

如果想退出當前的歷史排序介面,按一下鍵盤上的“Esc”鍵即可退出。

上面就是技術指標公式如何實現歷史排序的過程,大家可以自己實驗,這個功能可以幫助我們覆盤和選股。比如,一個交易策略如果是:買入上個月最後一日成交量最大的前3只股票,持有一個月,到下個月再重複這個規則(只是舉例!)。那麼這個策略的歷史測試可能不是很方便了,就需要咱們手動測試或覆盤這個方案是否可以,這時歷史指標排序功能就派上用場了。

二、副圖上的技術指標的運用

上一章我們講述瞭如何在K線圖的主圖上顯示技術指標的過程,那麼如何在副圖上顯示我們想要的技術指標呢,過程和主圖的顯示很類似。

我們開啟某一隻股後,一般預設是上中下三個視窗,最上面的是K線,被稱之為“主圖”,中間和下方的都被稱之為“副圖”,一般軟體預設的兩個副圖是成交量和MACD。

我們也可以根據自己的需要將視窗的個數進行增減,在主圖空白處,點選右鍵,選擇自己需要的視窗個數:

量化炒股10:技術指標的運用2

下面我們還是透過舉例來說一下技術指標在副圖上的運用。拿最下面的副圖來說,我們一般看到的MACD的副圖是這個樣子的:

量化炒股10:技術指標的運用2

而一些交易策略,特別是纏論衍生的一些背離或背馳理論,經常會用到MACD,特別是MACD頂或底的數值比較,比如想快速知道上圖中白色圈中MACD的最大值和黃色圈中MACD的最大值,都分別是多少,這時如果可以將具體的數值顯示在上面方便多了。

我先將修改後的樣子展示出來:

量化炒股10:技術指標的運用2

下面說一下具體的實現過程:

我們首先按照上一章講述的建立技術指標公式的步驟建立一個新的技術指標,注意這時建立的技術指標就不需要修改下面紅色圈的地方了:

量化炒股10:技術指標的運用2

畫線方法的地方還是保持其預設的“副圖”。本技術指標起名為“MACD頂底”。

在編輯器中輸入如下語句:

DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);

DEA:EMA(DIFF,9);

MACD:2*(DIFF-DEA),COLORSTICK;

MACD頂:=MACD>REF(MACD,1)&&MACD>REF(MACD,2)&&MACD>REFX(MACD,1)&&MACD>REFX(MACD,2)&&MACD>=0;

DRAWNUMBER(MACD頂,MACD,MACD),COLORRED,DRAWABOVE;

MACD低:=MACD

DRAWNUMBER(MACD低,MACD*0。99,MACD),COLORGREEN;

其中前三行就是MACD的定義(取其常用引數),其實軟體已經給出了很多常用的技術指標,大家有興趣的話可以在公式管理器中檢視,需要什麼基本指標可以直接複製過來再修改成自己需要的指標。比如MACD的定義在下圖中可以找到:

量化炒股10:技術指標的運用2

我們繼續說上面的語句,除了MACD的定義之外,還有四行語句用於定義MACD的頂和底,拿MACD頂來說,定義為:當前的MACD比前兩根都要大,比後兩根也要大,並且當前的MACD值是大於0的,所以語句寫成:

MACD頂:=MACD>REF(MACD,1)&&MACD>REF(MACD,2)&&MACD>REFX(MACD,1)&&MACD>REFX(MACD,2)&&MACD>=0;

這行語句中,用到了未來函式REFX(這個函式就是對後面第N根K線進行取值),這裡先提醒一下,未來函式的使用一定要謹慎再謹慎,用於這種副圖的顯示還可以,千萬不要用於交易模型中,切記!以後將會專門說一下未來函式的問題。這裡之所以用未來函式也是想將數值顯示在合適的位置。

定義完MACD頂之後,再將其顯示出來:

DRAWNUMBER(MACD頂,MACD,MACD),COLORRED,DRAWABOVE;

這時使用了DRAWNUMBER函式,具體函式的使用說明可以參見軟體的函式說明。

同理,對於MACD底的定義和顯示也類似,在這裡就不再贅述了,有興趣的朋友可以自行研究一下。

在寫完技術指標之後,將其儲存,在MACD副圖的區域(注意一定要在MACD這個副圖的區域,不要在K線主圖上點選右鍵),點選右鍵,彈出如下視窗:

量化炒股10:技術指標的運用2

點選“選擇副圖指標”,彈出框如下:

量化炒股10:技術指標的運用2

選擇之前我們建立技術指標公式的位置,一般我都習慣儲存在“其他型別”中(建立指標時已做過選擇),點選“其他型別”前面的“+”號,選擇我們剛剛建立的“MACD頂底”後,點選右側的“確定”,我們就可以發現之前的預設的MACD副圖變成新編輯的帶有階段頂底數字的圖形了。

上面是一個修改MACD指標的例子,大家也可以根據自己的需求來建立需要的副圖指標,以幫助覆盤或交易。比如:在成交量副圖上畫出一些自己需要的曲線,用以最近是否有放量的情形等。

至此,關於技術指標公式的運用就全部講完了,本來之後應該講公式管理器中的最後一個部分“條件選股公式”,但我考慮了一下,在講選股公式前,還是先講一下未來函式和過度最佳化這兩個問題。以免大家落入未來函式和過度最佳化陷阱。

總之,我還是以前提到的宗旨,我寫這些文章沒有別的訴求,唯有希望節省大家的時間並且少走彎路。