最近拜讀了劉大1984很久以前的一篇文章。在認識交易系統的各個層面上,感覺又有新的提高。尤其是在討論交易系統應對行情波動的方面,對交易周期和系統參數與以前的認識又有所不同。本文把我的體會記錄一下。
為了能夠在一個“頻道”上去理解、分析問題,我在闡述內容之前,會對一些名詞重新表達一下。也就是用我的語言,再對一些我們“耳熟能詳”的名詞進行重新“定義”。所以,可能有些內容我們在看的過程中,會覺得有些無聊。但把細節和最根本的定義理清,后面再討論更深入的問題時就不會因為對名詞的“歧義”而導致理解障礙了。
==========
這篇文章,我計劃分成四個部分來闡述:
1,“周期”是什么;
2,“系統參數”是什么;
3,“周期”與“系統參數”的關系;
4,從波動的角度理解周期與系統參數。
==========
1,“周期”是什么
在討論這個問題前,我要先聊一下“K線”。
什么是K線,這個大家恐怕都知道。
但是,為了更好的表達我后面的思路,我覺得我還是有必要先說一下K線(以下部分內容引用了討論群里的一位朋友的講解,我認為他對K線的定義很科學,完善了我對K線的理解)。
咱們提到的K線也叫bar(不是bra!╮(╯▽╰)╭)或kline。是由開盤價(open)、最高價(high)、最低價(low)、收盤價(close)和成交量(volume)組成的(我們暫時不討論成交量)。
從開盤價與收盤價的相對位置來區分這根K線是“陽線”還是“陰線”。更基本的內容我就不贅述了。
我要談的是,構成K線的4個價格本質上,是對一個時間段內所有成交價格的一個抽樣。也就是說,這4個價格是從這一個時間段內所有成交的價格中按照規則抽取出來的。
抽取的規則是:
開盤價:對應著此段時間的起始成交價格(日K線通常是集合競價價);
收盤價:對應著此段時間的最后一個成交價格(也有其他形式,如股票日K線就是最后3分鐘的集合競價價);
最高價:對應著此段時間內最大(max)的成交價格;
最低價:對應著此段時間內最小(min)的成交價格。
通過這4個價格,就將這一個時間段內價格的所有無序波動給“抽象”的描述了出來。可以說K線是個“抽象”的藝術!
我做了一個示意圖。黑色的線代表價格在這段時間內的走勢。我們可以看到,在K線上,開、高、低、收四個價格是一樣的,但具體的細節走勢確卻是千差萬別的。
不過,盡管具體的走勢完全不同。但K線都描述出了一個統一的結果——價格漲了,且漲了多少可知;而且波動的大小亦可知。
用上圖來說,就是把這段時間里,價格最高最低曾經到過哪;結束時,相對起始時價格最終是上漲了的,這些狀態給描述了出來;并且可以計算出漲了多少,總體的波動是多大。
也就是說,K線刻畫出了一段時間結束后,價格最終的痕跡和狀態,但代價是犧牲掉了細節。
為什么要說K線呢?
因為,被K線忽略掉具體走勢細節的這段時間長度,就是“周期”!
舉例來說:
日線周期中的每一根K線代表的就是一個交易日。也就是,用一根K線忽略掉了一個交易日的交易細節。
小時線周期,則是每一根K線代表一個小時。即,用一根K線忽略掉了一個小時的交易細節。
所以,我要說的第一個問題,“什么是周期”,指的是K線所忽略的交易細節的時間長度。
----------
2,“系統參數”是什么
我們用的技術指標或交易系統一般都離不開參數。
比如,“20日簡單移動平均線”這個說法,指的就是在日線周期中,用連續20根K線的收盤價來計算算數平均值。并且新的均值數據跟隨最新的K線同步計算,形成“移動”的效果。
這里面的“20”就是參數。
它的意義其實就是在劃定要進行統計的樣本空間。
我們在使用技術指標的時候,都是有一個默認的前提的,即技術指標屬于統計學范疇。通過對過去一段數據的統計和計算,得出一個描述性的數據。進而通過這個數據來判斷過去一段時間內,價格的狀態。
比如上面的“20日簡單移動平均線”就是一個不斷對新的20根日K線的收盤價計算平均值的過程。
我們來看張圖:
圖中紅色的曲線是“20日簡單移動平均線”(后面都用20日均線作為簡稱了)。確切的說,我們看到的這條紅色曲線是20日均線的歷史軌跡。
真正當前應該看的均值其實是那條水平方向的雙點虛線。
因為,這條虛線才是圖中20根K線收盤價的平均值。我們從這張圖上,也大體上能看出來,這條虛線將收盤價分成了上下兩部分。數一下我們能看到有9根K線的收盤價是低于這條雙點虛線的,同時有11根K線的收盤價是高于雙點虛線的。
這就是對歷史數據進行統計后,計算出的平均值。
所以,如果不確定一個參數,我們就無法選取歷史數據的樣本空間。只有確定了一個參數,我們才能夠用統計學的方法去計量這個劃定的樣本空間內的數據情況。
從這里我們也能看出,很多量化人提到的“過擬合”,其實就是把過去的歷史數據,用最合理的取樣方法去劃定樣本空間。而這個怎么“合理地劃定樣本空間”的過程就是確定參數的過程,也就是過擬合的過程。
----------
3,“周期”與“系統參數”的關系
我們在確定周期的過程,其實就是確定時間框架的過程。也就是說,我們在決定忽略哪些細節。
而系統參數的確定過程則是在劃定樣本空間的過程。
當這兩者一結合,我們就知道了,我們是要忽略所選周期以下的交易細節,同時利用統計學的計量方法去研究上一級別周期的細節。
比如我們確定下來的時間周期是1小時周期,這表明我們忽略掉每個小時內的交易細節了。
如果我們選擇的參數是120(假設一個交易日有6個小時交易時間)。也就是我們劃定的樣本空間是120根1小時K線。那么,120根K線除以6,就等于20天。
也就是說,我們研究的這120根K線其實是在對20個交易日里的細節情況進行研究。
來,看張圖:
圖中,上半部分是日線周期,參數為20的均線;下半部分是小時線周期,參數為120的均線。
我們發現,在日線收盤后,這兩條均線的數據是很接近的(圖中數據相同,是因為忽略了小數部分,通常會存在誤差)。
也就是說,我們在選定的周期中,設置的參數,實際上是在研究更大周期所忽略的細節。
2014年金融帝國到清華做講座。在講座結束后,我有幸跟帝國攀談了一會兒。帝國在講座中談到了,他在進行足夠的品種分散后,放棄了參數分散。所以,我特意問了一下帝國如果不進行參數分散的話,是否考慮過周期分散。帝國的回答很直接:“周期分散本質上就是參數分散。”
我認為,這就是“周期”與“系統參數”之間的關系了。
----------
4,從波動的角度理解周期與系統參數
啰嗦了半天,終于到重點了!
這就要回到劉大1984的那篇《行情的四種類型》了。
文章中有一段對波動的定義,我認為是極好的。特引用如下:
我們在市場上交易,主要應對的就是行情的波動。無論是以應對震蕩行情為主的回歸類策略,還是以應對單邊趨勢行情為主的趨勢跟蹤類策略。我們都是為了鎖定與我們策略相對應的行情而不斷的分析、研究和判斷的。
可以說,周期的選取,其目的是在忽略一定的細節后,在為統計更大周期的波動幅度做準備;而參數的選取,則是在為統計的時間跨度做準備。
當兩者確定后,就可以對樣本空間的波動性進行描述了。
這也是為什么有句話說“討論行情,不明確周期,就是耍流氓”的原因。因為周期就是在劃定波動幅度。
但如果只說周期而不談參數的話,同樣是無法將互相討論的雙方觀點統一起來的。所以,如果要再有人討論行情,最好先明確周期,然后再把參數帶上。
當這兩者準備好后,我們就可以用標準差、ATR等工具來計算波動性了。不過,這里我們也要明確,我們無論用的什么統計工具在計算,我們計算的結果都是樣本空間的波動情況。這代表不了未來波動性就一定變或一定不變。
所以,我們還是離不開假設。
我曾經提過一個觀點:行情在微觀層面傾向于自我增強的趨勢特性,在宏觀層面傾向于陰陽循環的回歸特性。
這里的“微觀”和“宏觀”的表述依然是很模糊的。
但其實要表達的意思就是,行情通常會維持某種狀態運動一段時間,但這種狀態一定會在某種情況下發生轉變。
簡單說,就是震蕩行情通常都會震蕩一段時間,然后突然轉變為向上或向下的單邊趨勢行情。而這種單邊趨勢行情通常也會延續一段時間后,再在某種因素的刺激下,突然轉變為震蕩或者與之前方向相反的單邊趨勢行情。
這里面的“一段時間”就看我們選取的周期和參數了。兩者結合能夠更好的去描述這個“一段時間”的跨度問題。
那么我們的假設是什么呢?就是,假設行情會延續。并且為即將到來的轉變做好防御工作。
比如說,我們發現波動性減小,那表明我們統計的樣本空間中的價格呈收斂的態勢,也就是說樣本空間的價格是震蕩狀態。那么,我們就首先假設行情會繼續震蕩下去。并且,我們去定義一下這個震蕩的邊界。如果這個邊界沒有打破,我們就認為當前狀態依舊是震蕩。那么用震蕩策略的話,只要關注這個邊界是否被打破就可以了。同樣的道理,在單邊趨勢行情發展過程中,波動性將會擴大,那么我們就假設單邊趨勢會繼續延續。同時也為這個單邊趨勢的結束邊界做好跟蹤即可。
可以說,就是通過對樣本空間的統計描述,來假設未來這種狀態會延續,同時對這種狀態的結束做好防御即可。
==========
說了很多,其實一句話就能概括:定義好周期,設置好參數,用一套標準化的交易規則去應對市場波動。
只不過,我們在認識交易、理解交易的過程中,總是會產生各種想法。而各種想法中,很多想法又會導致我們迷失方向。交易的過程就是一個提高認知的過程。思考的過程很復雜,但結論其實很簡單。如果只拋結論,那么對不了解結論產生過程的人來說,就難免產生一種不堅定。而這種不堅定則是誘發“學習效應”的罪魁禍首。
關于學習效應,大家可以看看金融帝國的《走出幻覺走向成熟》。






