設(shè)為首頁 | 加入收藏 | 今天是2024年12月23日 星期一

聚合智慧 | 升華財(cái)富
產(chǎn)業(yè)智庫(kù)服務(wù)平臺(tái)

七禾網(wǎng)首頁 >> 程序化交易 >> 程序化交易技巧心得體會(huì)

俸旻老師:你所不知道的的量化交易

最新高手視頻! 七禾網(wǎng) 時(shí)間:2015-10-28 13:30:58 來源:中國(guó)大數(shù)據(jù)產(chǎn)業(yè)觀察網(wǎng)

俸旻,北京大學(xué)數(shù)學(xué)學(xué)院學(xué)士和博士,曾任職于微軟亞洲研究院副研究院,從事網(wǎng)絡(luò)安全、信息安全研究;曾任職于華為技術(shù)有限公司,從事無線通訊技術(shù)研究,開發(fā)了全球第一套TD-LTE Relay樣機(jī);擁有專利國(guó)內(nèi)國(guó)際專利20余項(xiàng)。


  俸旻:非常榮幸來到這兒給大家做一個(gè)講座,這么多人,還有點(diǎn)小緊張。其實(shí)這個(gè)市場(chǎng)有很多做得比我好的,可能大家接觸的比較少,但是我接觸的比較多,因?yàn)槲覕?shù)學(xué)系出身,我的同學(xué)里面有很多在這一行做得非常好的。當(dāng)然還有帶我入門的清華計(jì)算機(jī)系的一個(gè)師兄,也做得非常好,希望大家有機(jī)會(huì)多向他們學(xué)習(xí)。


  下面開始講座,講座開始會(huì)讓大家建立一些概念,比如說拿一個(gè)量化交易策略讓你投資你要知道怎么評(píng)估;你做量化交易研究要知道量化交易的流程。然后我會(huì)講一下,量化交易是很復(fù)雜的系統(tǒng)工程,我會(huì)把我做的計(jì)算機(jī)的架構(gòu),我做的研發(fā)系統(tǒng)的架構(gòu)都給大家說一下。這些是很多對(duì)沖基金在用的架構(gòu)。后面的比較枯燥一點(diǎn),偏計(jì)算機(jī)、偏數(shù)學(xué)。我以前就在做碼農(nóng),好不容易在做金融了,其實(shí)還是在做碼農(nóng)。


  看一下量化交易,先看一個(gè)實(shí)例,什么是量化交易。


  我們做量化交易,先要觀察,找一些信號(hào),有人就做觀察,假設(shè)他看到“一年之中有很多天股指期貨價(jià)格波動(dòng)率超過3%”。于是他就有了一個(gè)想法,希望在波動(dòng)率比較大的天判斷好方向,加大倉(cāng)位,在其余天控制虧損。他就打開他的電腦,進(jìn)行無數(shù)次的研究、測(cè)試、再研究、再測(cè)試。這個(gè)很早的策略的實(shí)盤曲線如圖,這反映了當(dāng)時(shí)的原始思想,就是在有特別明顯趨勢(shì)的天,它大幅度的盈利了,但是其它天在不斷的回撤,但是每一天的回撤都特別小,一年賺了30%。這是量化交易1.0的工作方式。最主要的工作是建立模型,寫代碼,做測(cè)試;測(cè)試以后發(fā)現(xiàn)有問題,需要去改模型,再測(cè)試。用數(shù)學(xué)方法做建模,用計(jì)算機(jī)做數(shù)據(jù)處理。在大量統(tǒng)計(jì)研究基礎(chǔ)上充分運(yùn)用科學(xué)的方法來判斷價(jià)格方向,它追求的是持續(xù)穩(wěn)定的盈利。


  量化交易最需要的技能是三塊:金融、統(tǒng)計(jì)、計(jì)算機(jī)。金融,了解金融的基本概念,金融相對(duì)于后面兩者來說,要求稍微低一點(diǎn)。更需要的是后面兩個(gè)東西:數(shù)學(xué)與統(tǒng)計(jì),但是數(shù)學(xué)統(tǒng)計(jì)我們需要多高深的知識(shí)呢?我是學(xué)基礎(chǔ)數(shù)學(xué)的,做數(shù)論、密碼的。量化交易用不到那么復(fù)雜的東西。數(shù)學(xué)統(tǒng)計(jì)需要用到的數(shù)學(xué)知識(shí)包括幾個(gè)方面:大一的數(shù)學(xué)分析,線性代數(shù)、數(shù)理統(tǒng)計(jì)、時(shí)間序列,主要用大一、大二、大三的知識(shí)。但是需要用得比較多的是數(shù)學(xué)的建模方法、建模思維,把一些東西做數(shù)學(xué)化的抽象和刻畫。你要不斷的練習(xí),用數(shù)學(xué)的抽象描述世界。


  還有一個(gè)是計(jì)算機(jī),我們每天工作的大部分時(shí)間真的是在寫代碼。會(huì)想模型,要把它測(cè)試出來,去分析;過程中還有BUG,要調(diào)試。還要搭系統(tǒng),研發(fā)系統(tǒng)和交易系統(tǒng),系統(tǒng)是很大的較復(fù)雜的。計(jì)算機(jī)是必不可少的,這是你每天做實(shí)驗(yàn)的工具。有人問,我到底需要掌握什么樣的計(jì)算機(jī)編程工具。這要看不同的交易策略,做高頻交易需要C ;其它策略可以考慮Python、R、Matlab甚至Excel。有人說,計(jì)算機(jī)技術(shù)發(fā)展得很快,Machine learning和深度學(xué)習(xí)可不可以用呢?有可能,但是如果你純用Machine learning去做交易,很有可能學(xué)習(xí)出來的維度特別高,擬合的嫌疑很大。


  量化交易因?yàn)槭怯媚P腿タ坍嬘壿?,往往容易程序化;也可以通過模型來做風(fēng)險(xiǎn)控制;而且相對(duì)易于檢驗(yàn)?zāi)P褪欠窨孔V和搬遷到其它交易品種上去檢驗(yàn)。量化交易還可以避免心理干擾,我的程序放在那兒跑就行了。經(jīng)常我們的團(tuán)隊(duì)說我們出去玩兩天,東西放在那兒,不管它,最多在玩的時(shí)候把手機(jī)掏出來看看程序跑得是不是正常。


  前面說了程序化,多數(shù)情況下我們把程序化交易和量化交易看成是相等的,我更認(rèn)為量化交易是一個(gè)方法論,怎么建模,怎么做模型檢驗(yàn)、怎么實(shí)驗(yàn)驗(yàn)證和跟蹤的過程;而程序化強(qiáng)調(diào)它可以自動(dòng)的運(yùn)行。


  量化交易的三件武器:第一件,也是最重要的,量化交易是以大數(shù)定律來掙錢。大數(shù)定律是我們?cè)诖蠖臅r(shí)候就學(xué)過,我們把每次交易看成是一次賭博,這是一個(gè)事件,這個(gè)事件是隨機(jī)變量,如果隨機(jī)變量的均值能夠覆蓋成本,我就覺得我有信息優(yōu)勢(shì),我就愿意參加這個(gè)賭博;如果覆蓋不了成本,你就不要做了,做的越多虧的越多。同時(shí)我們希望我們做的次數(shù)越多越好,公式下面是N趨向于無窮大,N次獨(dú)立同分布交易的平均收益隨著N不斷增大,越來越趨近于它的期望,所以我們要考慮怎么讓它的次數(shù)更多。


  第二件武器就是交易科技。量化交易需要交易科技來配合,其中有一條是快,因?yàn)槲覀冏鼋灰椎膮⒖际切畔?,而價(jià)格是對(duì)信息的反應(yīng)。我們需要交易科技達(dá)到快,這就需要你快速地搜集數(shù)據(jù),快速地分析數(shù)據(jù),快速地發(fā)出指令,這些要求你要有一些通訊技術(shù)以保障快速的網(wǎng)絡(luò)連接,同時(shí)應(yīng)該把計(jì)算機(jī)系統(tǒng)優(yōu)化,還可以考慮如何用硬件把它加速。當(dāng)然你也可以考慮做好快速的信息處理,例如現(xiàn)在已經(jīng)有人在討論把互聯(lián)網(wǎng)的大數(shù)據(jù)拿來做交易分析,就非常需要快速信息處理。有很多文章已經(jīng)在討論這個(gè)方向,例如有人提出用Twitter來看美國(guó)股市。文章寫得挺好的,不過這樣的分析需要大數(shù)據(jù)技能比較強(qiáng)的人。不過我對(duì)于Twitter來做方向性的預(yù)測(cè)持保留意見??炜梢宰屇惚葎e人更早的獲得行情、更迅速地做判斷、更早的報(bào)單子進(jìn)去,從而降低你的交易成本。你可以更快的看到別人報(bào)的單子,可以更快的搶到;你搶完了,后面的人只有花更多的成本獲取。


  再舉個(gè)例子為了取得第一時(shí)間的行情,我會(huì)研發(fā)一些技術(shù)。


 ?。ù颂巸蓚€(gè)空格)比如說中國(guó)的期貨交易所舊的行情發(fā)送機(jī)制,沒有使用計(jì)算機(jī)和網(wǎng)絡(luò)的先進(jìn)技術(shù),它之前通過單播推送,而不是一下子廣播給大家的多播方式。單播是首先發(fā)給你,然后發(fā)給他。交易所還考慮得周到為了公平,他這一秒,先給第一號(hào)發(fā)然后2345678。下一秒從第二號(hào)開始發(fā)23456781。怎么解決這個(gè)問題?那我就聽多個(gè)行情。


  量化交易第三件武器就是可以跨市場(chǎng)交易。在跨市交易中你可以提高資金的使用效率,分散風(fēng)險(xiǎn),一份資金可以交易很多市場(chǎng)。無論做高頻交易還是做中低頻,我都強(qiáng)烈建議大家做多品種,特別是對(duì)中低頻做多品種是至關(guān)重要的。


  如何評(píng)估量化交易策略,評(píng)估一個(gè)交易策略可以依據(jù)許多指標(biāo),如果讓我只選擇一個(gè)技術(shù)指標(biāo),我會(huì)選擇夏普比率/信息比率,如果你把收益率當(dāng)做一個(gè)正態(tài)分布,你知道了它的夏普比,你就知道它的某種VAR。夏普比越大越好,超高頻交易能達(dá)到6以上,甚至達(dá)到十幾;低頻的可能只有1到3。參考一些美國(guó)著名的規(guī)模較大的基金,夏普比大概在1附近。當(dāng)然你還可以看最大回撤這一指標(biāo),但是這個(gè)是心理指標(biāo),是每個(gè)人能接受的最大的虧損的范圍。這個(gè)參數(shù)可以通過杠桿來調(diào)節(jié),所以只看一個(gè)指標(biāo)我不會(huì)看它。但是如果資金投給別人管理,因?yàn)榭刂茩?quán)不在自己手上,那我還是會(huì)看的。這里面我要說一點(diǎn),量化交易者一般是風(fēng)險(xiǎn)厭惡者,在座的很多同學(xué)自己炒股吧,我不知道這次股災(zāi)虧得最多的有多少,我估計(jì)有人虧損超過50%吧。你們風(fēng)險(xiǎn)能力都比俸老師強(qiáng),俸老師的風(fēng)險(xiǎn)承受能力只有10%。


  如何評(píng)估它的量化交易策略?這需要確認(rèn)他是否用科學(xué)的研究方法。假設(shè)某人拿一個(gè)報(bào)告給你看。你可以問他:“你的交易成本怎么算?中間有沒有過度擬合的可能,怎么判斷有沒有擬合?”交易成本包括好幾個(gè)方面,手續(xù)費(fèi),流動(dòng)性成本;還有兩個(gè)很難測(cè)的成本,一個(gè)是沖擊成本,就是說我資金放進(jìn)去對(duì)市場(chǎng)的沖擊是怎么樣的;還有一個(gè)是機(jī)會(huì)成本。有沒有過度擬合,例如某人的策略盈利只有那幾天,其它天都沒有交易,這明顯就是一種擬合。你可以用簡(jiǎn)單的方法把盈利最大的幾天去掉,再看它的夏普比高不高。如果只有幾天盈利,我怎么知道未來什么時(shí)候能碰到這幾天。


  如何評(píng)估量化交易策略還有一個(gè)更重要的方面就是人,對(duì)于投資來說最重要的就是評(píng)估人,這適用于做任何投資,包括做風(fēng)投,這個(gè)人靠譜、這個(gè)人能力強(qiáng),這是最重要的。說說做量化交易的人,穿著有特征嗎?我今天都穿得比較正式了。量化交易者穿著的標(biāo)準(zhǔn)特征是,碼農(nóng)穿什么,量化交易的人一般就穿什么,可能穿的就是沖鋒衣牛仔褲,熟稱“碼農(nóng)套裝”。當(dāng)然只看衣裝肯定不靠譜。其實(shí)這類人給你介紹量化理財(cái)產(chǎn)品,一般會(huì)跟你特別地強(qiáng)調(diào)風(fēng)險(xiǎn),之前說過量化交易投資者一般是風(fēng)險(xiǎn)規(guī)避者。你接觸多了就會(huì)發(fā)現(xiàn)強(qiáng)調(diào)風(fēng)險(xiǎn)越多的人,往往越靠譜的。我自己投資都投給我接觸得多了解得多的這樣的人。我認(rèn)為做量化交易的這些人是金融界最踏實(shí)的、最天真無邪的一幫人,包括我剛才說的清華的師兄,還有很多做此行我的同學(xué)。有一天我跟我同學(xué)吃飯,他跟我說人生最后悔的一件事是在本科的時(shí)候接了一個(gè)開發(fā)項(xiàng)目,他被介紹說成他是一個(gè)博士。他覺得他撒了謊,不該這樣做。這些人真的很單純?因?yàn)樗麄儾磺笕司涂梢話赍X,他沒有理由不單純,他沒有動(dòng)機(jī)要騙你。


  誰在做量化交易?其實(shí)某種程度上做量化交易的這些人,可以說是實(shí)驗(yàn)物理學(xué)家,不停做實(shí)驗(yàn)、測(cè)試、修正,同時(shí)特別強(qiáng)調(diào)要有實(shí)驗(yàn)物理的精神。圖中這位大佬就是以前學(xué)物理的,后來去做quant。有金融學(xué)的理論是以他的名字命名。話說我之前聽過一個(gè)老師講課,他說他發(fā)明了金融物理學(xué)。這個(gè)老師講了一件很有意思的事,他說他做了一個(gè)策略特別好,做了20次實(shí)驗(yàn),有19次都明顯賺錢了,到20次不夠理想但專門等到它賺錢才平倉(cāng),最后是百分之百的賺錢。這個(gè)人明顯不是做物理學(xué)的,做物理的要容忍有誤差。做量化交易的人員其實(shí)有很多學(xué)數(shù)學(xué)、計(jì)算機(jī)、物理、化學(xué)的,理工科的比較多,當(dāng)然有學(xué)金融的。


  下面來講量化交易的案例,這是一個(gè)實(shí)盤交易的帳戶,在一年時(shí)間里從20多萬做到了90多萬,業(yè)績(jī)相當(dāng)不錯(cuò)。對(duì)高頻交易來說,凈值曲線比較直的往上走就是特點(diǎn)。另外一個(gè)特點(diǎn):它的手續(xù)費(fèi)交了84萬,賺了60多萬,手續(xù)費(fèi)比賺的還多。大家看了以后有什么沖動(dòng)?是不是很想去開賭場(chǎng)?高頻交易策略的交易頻率特別高,有時(shí)幾秒就一次交易。有人認(rèn)為日內(nèi)交易就是高頻交易,這種說法也可以。高頻交易沒有嚴(yán)格的定義。不過因?yàn)槌謧}(cāng)時(shí)間比較短,所以每次賺錢比較少,但每次都要交手續(xù)費(fèi),因此手續(xù)費(fèi)占的比例特別高。夏普比(率)很可能在6之上,甚至達(dá)到10幾。


  這是統(tǒng)計(jì)套利中的Alpha套利,藍(lán)線描述的是Alpha套利的策略凈值,紅線描述的是滬深300。Alpha套利其實(shí)做了多空兩個(gè)方向的對(duì)沖交易,盡量把市場(chǎng)風(fēng)險(xiǎn)暴露控制到最小,也是追求持續(xù)穩(wěn)定的盈利??磮D中表格,我推薦大家策略做分年的測(cè)試,看看每年的策略的情況,以及策略適應(yīng)性的大體趨勢(shì)。我對(duì)期貨比較熟悉,一般數(shù)據(jù)會(huì)是這樣的走勢(shì)。如果是只針對(duì)股指的量化高頻策略,從2010年開始夏普比一般會(huì)逐年下降,今年會(huì)比較特殊;總的來說是因?yàn)楦?jìng)爭(zhēng)越來越激烈。但是如果是多品種合在一起的量化期貨投資策略,有可能夏普比會(huì)逐年提高,因?yàn)榭梢宰龅钠贩N越來越多。這也可以用作量化交易策略的判斷。


  如果同學(xué)想進(jìn)入量化投資領(lǐng)域,我推薦大家從這兩類量化投資策略入手。避免只做多頭,風(fēng)險(xiǎn)太大。避免做持倉(cāng)時(shí)間特別長(zhǎng)的,交易的品種要盡量多,否則風(fēng)險(xiǎn)可能會(huì)很難承受。


  下面我們來講講量化交易的流程,我們分為策略尋找,數(shù)據(jù)回測(cè),通過虛擬交易系統(tǒng)檢驗(yàn)執(zhí)行,最后才會(huì)去做實(shí)盤。策略尋找,大家有不同的能力,不同的風(fēng)格,你需要找適合你自己的策略,包括你的各方面因素:時(shí)間投入,編程能力(可不可以做自動(dòng)化),你的資金量等因素。一般來說不是富二代,資金量還是比較少的,這個(gè)時(shí)候我推薦大家做期貨。俸老師是不是把你往火堆里面推呢?


  我們要談?wù)劥蠹覍?duì)于風(fēng)險(xiǎn)的認(rèn)識(shí)。大家很多時(shí)候會(huì)討論,股票的風(fēng)險(xiǎn)大,還是期貨的風(fēng)險(xiǎn)大?估計(jì)90%的人會(huì)說期貨的風(fēng)險(xiǎn)大。如果只是這樣模糊地談風(fēng)險(xiǎn),我覺得期貨風(fēng)險(xiǎn)會(huì)更小。因?yàn)槠谪浭荰 0的,期貨可以隨時(shí)做空,期貨可以放杠桿,但是你做期貨也可以不放杠桿,無非就是把錢放在那里多一點(diǎn),這意味著期貨給了你更自由的空間,你憑什么說期貨的風(fēng)險(xiǎn)比股票的風(fēng)險(xiǎn)大呢?對(duì)于風(fēng)險(xiǎn)的認(rèn)識(shí),更重要的是你去投資的時(shí)候你管理得怎么樣,而不是側(cè)重于標(biāo)的資產(chǎn)價(jià)格變動(dòng)的多少;更重要的是你能否抵抗你的貪婪欲望等心理。做投資的其實(shí)都希望價(jià)格變動(dòng),有些還希望價(jià)格能較快速變動(dòng)。它不動(dòng)投資會(huì)有什么收益?重要的是你能否把握價(jià)格的變動(dòng)。所以如果你的資金量比較小,建議大家去做期貨。


  剛才還介紹了另外一種策略,Alpha套利,我個(gè)人覺得如果你要做Alpha套利,你應(yīng)該準(zhǔn)備至少兩百萬?,F(xiàn)在同學(xué)有投入幾千、幾萬塊錢炒股,但多數(shù)很難放入量化交易范疇。如果你要做Alpha套利,那些錢不夠。量化交易以大數(shù)定律的方式掙錢,一支股票一年交易的機(jī)會(huì)/次數(shù)太少的話,怎么足夠體現(xiàn)大數(shù)定律來?那一定要交易更多的股票才好。要滿足大數(shù)定律要求的次數(shù)多,可以走兩個(gè)維度:一個(gè)是頻率高,一個(gè)是交易品種多。


  然后就是確定投資目標(biāo),你是追求短期盈利賺快錢還是想做長(zhǎng)期的規(guī)模收益。賺快錢就做高頻交易,剛才十萬到九十萬的那個(gè)就是一年多一點(diǎn)的時(shí)間。但是如果做長(zhǎng)期的收益,收益期望不要太高。俸老師自己的期望,做長(zhǎng)期的收益如果年化可以穩(wěn)定在10%到20%,最大虧損控制在5%,那就挺好了。以Alpha套利為例,美國(guó)市場(chǎng)上目前收益大概年化在6%~10%,中國(guó)市場(chǎng)可能是10%~20%。


  大家一定要磨煉好自己的本領(lǐng),苦苦的練一年、兩年,做好研究,測(cè)試嚴(yán)格,你再好好用實(shí)盤去做。最后你必須去上實(shí)盤,因?yàn)樯虾筒簧喜顒e很大,又會(huì)積累很多經(jīng)驗(yàn)和知識(shí)。不要性急,要鍛煉好自己的心態(tài),做好心理準(zhǔn)備。


  量化交易策略的評(píng)測(cè)之前有提到過,不再重復(fù)。這里來談?wù)勗u(píng)測(cè)中間的陷阱。第一個(gè)陷阱,忽略交易成本。之前提到交易成本包括:手續(xù)費(fèi)、流動(dòng)性成本、沖擊成本、機(jī)會(huì)成本。我們來舉一些實(shí)例:比如說做跨期套利,單一期貨品種有不同到期日的合約,合約的走向應(yīng)該是比較一致的。所以你可以做它們的價(jià)差反轉(zhuǎn),來尋求盈利。往往很多人拿歷史數(shù)據(jù)回測(cè)之后,發(fā)現(xiàn)夏普比率非常高,感覺可以隨時(shí)撿錢。但真實(shí)去做了之后,才發(fā)現(xiàn)沖擊成本其實(shí)很高,因?yàn)樗枰瑫r(shí)交易兩個(gè)合約,有一個(gè)流動(dòng)性好點(diǎn),有一個(gè)流動(dòng)性差點(diǎn)。有時(shí)某個(gè)合約沒有抓住,要去追單子,一下子成本就付出去很多??缙谔桌龅氖莾r(jià)格的反轉(zhuǎn),每次賺的錢少,交易成本占比非常高的,如果成交價(jià)格再滑一下,發(fā)現(xiàn)十次賺的錢一次就虧出去了。我們自己也有做市(Market Making)的策略,為市場(chǎng)提供流動(dòng)性,市場(chǎng)行情顯示了買賣價(jià),我們的報(bào)價(jià)是在買賣價(jià)中間?;販y(cè)的時(shí)候,根本不知道這個(gè)報(bào)單會(huì)不會(huì)成交,這就是機(jī)會(huì)成本?;販y(cè)時(shí)候也不知道機(jī)會(huì)成本具體是多少?例如用TF國(guó)債期貨去做策略測(cè)試,夏普比率完全可以大于十,真實(shí)交易會(huì)發(fā)現(xiàn)太坑爹了。


  量化交易做了回測(cè),夏普比只能說給了你一個(gè)指示,并不代表著未來你的策略就會(huì)跑的一樣好。那也可能是擬合的結(jié)果。若你做了樣本外的測(cè)試解釋力度會(huì)強(qiáng)一些,不過我們始終要有顆心,擬合會(huì)是一個(gè)很大的陷阱。怎么防止過度擬合呢?主要是策略參數(shù)一定不要太多。交易次數(shù)除以參數(shù)個(gè)數(shù)的數(shù)字一定要比較大才好,比較大大數(shù)定律才能呈現(xiàn)出來,要不然是假象。


  總之陷阱很多,大家一定要有嚴(yán)肅的科研精神,一定要把模型做得越嚴(yán)格越好,讓你有充分的自信,再做實(shí)盤。


  下面我開始講比較枯燥的東西,也是干貨。量化交易系統(tǒng)1.0,還有一個(gè)2.0,它們兩個(gè)其實(shí)側(cè)重點(diǎn)不一樣。1.0是交易系統(tǒng)偏計(jì)算機(jī)軟件體系結(jié)構(gòu);2.0更側(cè)重于做系統(tǒng)化的研發(fā),是指系統(tǒng)化地做量化交易研究。


  1.0系統(tǒng)是完全由我一個(gè)人開發(fā)的,我想讓我的交易系統(tǒng)既可以做回測(cè),又可以做快速地實(shí)盤交易;還可以很方便的擴(kuò)展指標(biāo)或者信號(hào);我可以定義自己的交易執(zhí)行策略;還可以同時(shí)處理多個(gè)合約、多個(gè)策略、多個(gè)賬戶。量化交易本來就要求同時(shí)交易多個(gè)合約為好,甚至可以考慮用合約1的信號(hào)做合約2;可以同時(shí)做多個(gè)策略,資金使用率提高,風(fēng)險(xiǎn)分散;還可以多個(gè)帳戶,有很多客觀地需求。


  同時(shí)支持回測(cè)和實(shí)盤,我設(shè)置兩個(gè)接口來實(shí)現(xiàn),一個(gè)接口讀行情,一個(gè)接口做交易。讀行情接口有兩個(gè)派生,一個(gè)是從文件里面讀數(shù)據(jù),一個(gè)是從實(shí)盤行情服務(wù)器讀數(shù)據(jù)。交易接口也有兩個(gè)派生,一個(gè)是下單通過網(wǎng)絡(luò)報(bào)出去,一個(gè)是下單下到文件里。這樣回測(cè)、紙面交易和實(shí)盤交易的實(shí)現(xiàn)就是搭不同的積木?;販y(cè)是把歷史數(shù)據(jù)灌進(jìn)來,下單到文件,最后統(tǒng)計(jì)一下回測(cè)結(jié)果好不好。真實(shí)的交易無非是聽真實(shí)的行情,把單子報(bào)到網(wǎng)絡(luò)中去。紙面交易則是聽取真實(shí)的行情,下單下到文件中去。


  為了很方便地?cái)U(kuò)展指標(biāo)和信號(hào),可以設(shè)定一個(gè)指標(biāo)計(jì)算的接口作為父類。具體的指標(biāo)或者信號(hào)由接口派生出來,行情其實(shí)也可以作為一種特殊的指標(biāo)或者信號(hào)。


  我們還做了指標(biāo)計(jì)算和交易策略的分離,比如說同時(shí)管理多個(gè)帳號(hào),多個(gè)帳號(hào)可以用同樣的策略,做了分離之后指標(biāo)/信號(hào)計(jì)算就可以只算一次。這樣的分離也避免了策略業(yè)務(wù)邏輯的復(fù)雜化。


  我們還要做交易策略和執(zhí)行策略的分離,執(zhí)行策略是描述我的單子怎么去執(zhí)行的。例如我的單子特別大的時(shí)候,需要配合一些算法,把單子拆分成細(xì)的、小的單子;如果你一次把一個(gè)大單子放進(jìn)去,別人就會(huì)看到了你的需求,他就會(huì)想怎么賺你的錢,這樣不好。把單子拆小,讓自己的沖擊成本減少;而對(duì)于高頻交易雖然不大需要單子的拆分,但是也要處理很多復(fù)雜的東西,比如說訂單的成交細(xì)節(jié)和撤單細(xì)節(jié)等。


  這是一個(gè)可行的架構(gòu),這個(gè)架構(gòu)是真實(shí)交易的架構(gòu),分為幾個(gè)線程。真實(shí)交易肯定是多線程的網(wǎng)絡(luò)程序,有行情線程、訂單回報(bào)線程,還有數(shù)據(jù)處理的線程。行情線程收到行情后,把時(shí)間信息放到隊(duì)列里面去,把行情信息放到內(nèi)存里面,然后通知中間的數(shù)據(jù)處理現(xiàn)場(chǎng)說:“新的行情來了,數(shù)據(jù)準(zhǔn)備好了,你開始處理吧!”然后中間的線程就去看,哪些指標(biāo)/信號(hào)計(jì)算、哪些交易策略關(guān)聯(lián)到這個(gè)合約的行情,挨個(gè)調(diào)用挨個(gè)計(jì)算,在交易策略中可能會(huì)涉及到報(bào)單,就把單子報(bào)出去。報(bào)出去以后,要等交易回報(bào)線程通知??赡軙?huì)通知你的單子報(bào)錯(cuò)了;可能會(huì)通知你單子成交多少手等等。通知存到共享內(nèi)存中,訂單回報(bào)現(xiàn)場(chǎng)再知會(huì)信息處理線程:“單子成交了,你處理吧?!边@中間可以建很多的數(shù)據(jù)處理線程,達(dá)到并行的目的。


  下面來分享一下系統(tǒng)化做研究的方法,我們始終強(qiáng)調(diào)量化交易是以大數(shù)定律的方式來掙錢。先來看看傳統(tǒng)的方法,一般我們?nèi)腴T都會(huì)用這樣的方法:我們會(huì)去想一個(gè)賺錢邏輯,用模型把它刻畫出來,然后放數(shù)據(jù)在上面跑。這樣的方法完全可以賺錢。例如前段時(shí)間運(yùn)行過的一個(gè)策略:股指期貨主力合約在短時(shí)間大幅變動(dòng)時(shí)候,次主力合約跟得不及時(shí);這個(gè)時(shí)候我就去做次主力。這個(gè)策略還不錯(cuò),但容量很小,畢竟做次主力,流動(dòng)性成本也很高。拿了40萬去做,一天賺了75%。所以有時(shí)很多想法很簡(jiǎn)單,的確有些策略論壇都會(huì)寫,做一些小改動(dòng)也許就可以較穩(wěn)定盈利。但是在我們照搬或者構(gòu)思了盈利邏輯進(jìn)行回測(cè)之后,會(huì)發(fā)現(xiàn)總有些地方有大坑。大家自然去想,我能不能做一個(gè)過濾器把這個(gè)坑濾掉;于是做了止損/過濾,但最后發(fā)現(xiàn)夏普比變低了。這樣做不是不可以,但是這樣做其實(shí)和大數(shù)定律掙錢的思維是相反的。加過濾器就是減少了交易次數(shù)。這就是傳統(tǒng)的方法主信號(hào)加約束條件,但是添加約束條件其實(shí)是在做擬合。系統(tǒng)化的研究方法是怎么樣呢?推薦一本書給大家,《Active Portfolio Management》(《主動(dòng)投資組合管理》)華爾街的圣經(jīng),可以給大家答案。這本書可以反復(fù)讀。(另外一本量化交易入門的書《Quantitative Trading: How to Build Your Own algorithmic Trading Business》,可以快速讀。帶著兩個(gè)問題去讀:如何評(píng)估量化交易策略;量化交易研發(fā)的流程是什么。)系統(tǒng)化研究是做信號(hào)系統(tǒng),多數(shù)量化基金的研究方法,它會(huì)考慮信號(hào)測(cè)試、信號(hào)組合、風(fēng)險(xiǎn)模型、投資組合幾個(gè)部分。


  信號(hào)系統(tǒng)分了四個(gè)步驟,第一步建立數(shù)據(jù)庫(kù),第二步做信號(hào)研發(fā),第三步模型構(gòu)建,第四步投資組合。數(shù)據(jù)庫(kù)里面首先有原始的數(shù)據(jù)包括行情數(shù)據(jù)、基本面數(shù)據(jù)等,還有我們已經(jīng)測(cè)試過的信號(hào)庫(kù)。原始數(shù)據(jù)就是價(jià)格、量等等的時(shí)間序列,信號(hào)庫(kù)就是信號(hào)的時(shí)間序列。信號(hào)研發(fā),我們要先做信號(hào)的構(gòu)建,你可以通過已有的資料找兩三百個(gè)潛在的信號(hào),還可以做增強(qiáng)的信號(hào),還可以考慮新的市場(chǎng),新的數(shù)據(jù)源。互聯(lián)網(wǎng)大數(shù)據(jù)我覺得也是有可能的,但是也需要謹(jǐn)慎。剛才我說了,通過Twitter的數(shù)據(jù)來做我持懷疑態(tài)度,一是噪音太多,二是一般價(jià)格會(huì)快過于新聞,新聞出來的時(shí)候價(jià)格早就走了。但是它可能是風(fēng)險(xiǎn)的因子,用Twitter/微博的數(shù)據(jù),或者谷歌/百度里面股票點(diǎn)擊量的數(shù)據(jù),有可能是一個(gè)很好的風(fēng)險(xiǎn)因子。一些需要經(jīng)過長(zhǎng)時(shí)間才消化的數(shù)據(jù)倒可能用于做alpha因子,比如說淘寶某個(gè)商品的銷量,比如說我們航拍得到的一個(gè)碼頭船的數(shù)量,可以統(tǒng)計(jì)卡車通過高速公路次數(shù),可以收集房地產(chǎn)每戶的水費(fèi)電費(fèi)。


  然后就是信號(hào)的有效性測(cè)試,構(gòu)建一個(gè)信號(hào)出來,需要測(cè)試這個(gè)信號(hào)靠不靠譜,就是說看信號(hào)數(shù)值和未來的收益率相關(guān)性怎么樣。你可以把信號(hào)和收益二維的平面散列圖畫出來,看一下趨勢(shì)是怎么樣的;一般不是線性,要考慮怎么把非線性變成線性。如何用最少的參數(shù)把它變成線性信號(hào),得到新信號(hào)和未來的收益率的關(guān)系。相關(guān)系數(shù)絕對(duì)值大的,這個(gè)信號(hào)就不錯(cuò)。但是一般測(cè)出來的都很小,大的早就被人弄完了。所以往往一個(gè)信號(hào)是不夠的,要做多個(gè)信號(hào)。先測(cè)試一個(gè)信號(hào),再看這個(gè)信號(hào)相對(duì)已有的信號(hào)庫(kù)來說,有沒有信息增量,沒有信息增量這個(gè)信號(hào)就沒有用。你也可以算算不同信號(hào)之間的相關(guān)系數(shù),相關(guān)系數(shù)太高你就不要了。如果可以,把它放到信號(hào)庫(kù)里面去做多信號(hào)的組合。怎么把多個(gè)信號(hào)組合在一起得到一個(gè)新的信號(hào)?這里列舉了一些很復(fù)雜的方法,神經(jīng)網(wǎng)絡(luò)等等。我建議大家用越簡(jiǎn)單的方法越好。通過這部分研發(fā),系統(tǒng)可以得到每個(gè)時(shí)間點(diǎn)各交易合約的預(yù)期收益率。


  下面還有一件事就是做投資組合,投資組合就是知道了收益率,知道了風(fēng)險(xiǎn),解決一個(gè)優(yōu)化問題。剛才我們已經(jīng)得到預(yù)期收益率,我們還需要得到它的風(fēng)險(xiǎn)。要得到風(fēng)險(xiǎn),推薦大家去看一些風(fēng)險(xiǎn)模型相關(guān)的文章,交易股票可以找到若干風(fēng)險(xiǎn)因子,有基本面因子、統(tǒng)計(jì)因子,宏觀因子等。但是絕對(duì)不能把三千支股票簡(jiǎn)單的計(jì)算一下協(xié)方差矩陣來做結(jié)果。有了風(fēng)險(xiǎn)模型加上前面的預(yù)期收益率就可以做投資組合。投資組合決定了倉(cāng)位,當(dāng)然投資組合也不是那么簡(jiǎn)單的優(yōu)化,還要加很多約束條件,例如考慮換手率,不然都給股票交易所做貢獻(xiàn)了。像針對(duì)機(jī)構(gòu)投資者的基金會(huì)給一些額外的限制,你的股票投入在每個(gè)板塊不能超過多少;當(dāng)你超過了限制,機(jī)構(gòu)投資者就會(huì)過來找你麻煩。作為同學(xué)入門來說,可以先從傳統(tǒng)方法入手,后面再考慮走向系統(tǒng)化方法的道路。


  不同類型的策略,框架會(huì)有區(qū)別。例如高頻交易就不大需要做復(fù)雜的風(fēng)險(xiǎn)模型。但是對(duì)于中低頻,我個(gè)人建議一定要上風(fēng)險(xiǎn)模型。上和不上區(qū)別是很大的。風(fēng)險(xiǎn)模型有很多應(yīng)用,主動(dòng)式基金、被動(dòng)式基金都需要用到風(fēng)險(xiǎn)模型。系統(tǒng)化工程要是一個(gè)人去搭還是挺困難的,可以尋求合作。


  “礦”工的路還是滿辛苦的,非常感謝大家來到這個(gè)“礦”工的世界里!


  下面是精彩的問答環(huán)節(jié):


  提問:前一段時(shí)間發(fā)生股災(zāi),千股跌停,您做的量化交易是怎樣應(yīng)對(duì)這種情況的?


  俸旻:股災(zāi)對(duì)于不同的策略影響不大一樣。例如高頻交易就不大害怕股災(zāi),因?yàn)樗梢园盐湛焖俚拿}搏,甚至它可以在股災(zāi)中獲得較大的利潤(rùn)。高頻交易絕對(duì)不是造成股災(zāi)的始作俑者,它其實(shí)能讓價(jià)格快速地回歸到理論值。股災(zāi)中的恐慌,最大的原因其實(shí)是人類的貪婪,肆無忌憚地融資放大杠桿,而量化交易能較客觀地去確定自己投資的合理杠桿水平。對(duì)于我前面推薦的Alpha套利策略,這次股災(zāi)對(duì)它的影響還是巨大的。股災(zāi)時(shí)候最大的風(fēng)險(xiǎn)已經(jīng)超出模型可以管控的范圍,那時(shí)最大的風(fēng)險(xiǎn)是政策風(fēng)險(xiǎn)。舉個(gè)案例,一個(gè)人做Alpha套利,多頭用股票,空頭用股指期貨,某天期貨臨近到期日要移倉(cāng),但他平倉(cāng)之后發(fā)現(xiàn)無法開倉(cāng)。這會(huì)造成裸多頭,還有很多停牌的股票,簡(jiǎn)直會(huì)坑死人。我們非常支持救市,絕不能讓股災(zāi)引發(fā)金融系統(tǒng)的崩潰。


  問:目前世界上有沒有比較成熟的量化交易平臺(tái)?不包括策略。


  俸旻:現(xiàn)在有一些量化平臺(tái),國(guó)內(nèi)有人使用TB、MC等等。但是我不用它們,因?yàn)槁?,信息可能泄露,而且用了平臺(tái),手續(xù)費(fèi)會(huì)變高。支持量化交易2.0系統(tǒng)的開放平臺(tái)好像還沒有,都在基金公司內(nèi)部吧。


  提問:量化交易對(duì)于高性能數(shù)據(jù)處理有什么要求?比如說計(jì)算機(jī)高性能數(shù)據(jù)處理,并行計(jì)算、超級(jí)計(jì)算機(jī),需不需要類似技術(shù)的介入?


  俸旻:這些技術(shù)是需要的。很多量化交易會(huì)牽涉到多參數(shù)組測(cè)試,計(jì)算量還是非常大的。所以是多核計(jì)算、分布式、云運(yùn)算的很好的應(yīng)用場(chǎng)景。


  提問:高頻交易用到的策略是有壽命的,怎么知道它該淘汰了?


  俸旻:我們做量化交易,會(huì)持續(xù)跟蹤策略的性能,比如觀察一些指標(biāo)的顯著變化。例如突然跌破了歷史的最大回撤,我們就會(huì)很謹(jǐn)慎,可能調(diào)整些東西??赡苷{(diào)低杠桿,也有可能把它停了。需要依據(jù)不同情況做處理,但是肯定會(huì)繼續(xù)跟蹤。


  提問:做量化交易的信號(hào)模型是否像學(xué)生做實(shí)驗(yàn)一樣,需要有一個(gè)理論依據(jù)?還是需要第六感或者直覺把這種參數(shù)找出來?


  俸旻:就我個(gè)人而言,更傾向于有理論依據(jù)。你可以用金融學(xué)、經(jīng)濟(jì)學(xué)、行為金融學(xué)等專業(yè)或者課程做背景,也可以用市場(chǎng)觀察來說話,模型有理論依據(jù)支撐心里更有底啊。我個(gè)人認(rèn)為行為金融對(duì)中國(guó)市場(chǎng)比較有效,因?yàn)橹袊?guó)市場(chǎng)80%以上是散戶。也推薦做量化交易的朋友們多去看看其它方面的書,比如說社會(huì)心理學(xué)、行為金融學(xué)、生態(tài)學(xué)等等。


  提問:做高頻交易,網(wǎng)絡(luò)本身就已經(jīng)很慢了,如何能把交易速度提高,做到快速交易?


  俸旻:你可以請(qǐng)網(wǎng)絡(luò)專家,計(jì)算機(jī)專家來優(yōu)化你的系統(tǒng)。你要和經(jīng)紀(jì)商合作,因?yàn)榫W(wǎng)絡(luò)不是你可以直接干預(yù)的。你可以把它做到硬件上去,技術(shù)發(fā)展,永無止境。你要評(píng)估自己的能力,根據(jù)你的能力選擇你的策略類型。例如我現(xiàn)在絕對(duì)不敢去美國(guó)市場(chǎng)做高頻交易,那邊那么多公司,無論是通訊技術(shù)還是策略都牛得不得了,我過去就是找死。如果我做海外市場(chǎng)可能會(huì)選擇做一兩天為頻率的策略。知己知彼很重要??梢圆缓蛣e人拼速度,拼智慧,拼策略,拼風(fēng)險(xiǎn)模型。


  提問:您認(rèn)為量化交易還有多大的市場(chǎng)可做?


  俸旻:量化交易的市場(chǎng)應(yīng)該還是非常大的,中國(guó)在起步階段。量化交易分高頻和中低頻,高頻的市場(chǎng)規(guī)模很小,中低頻就很大了。而且量化交易也可以和傳統(tǒng)交易配合,發(fā)揮各自所長(zhǎng)?,F(xiàn)在出了很多政策來限制量化交易,各個(gè)交易所的征求意見稿也發(fā)出來了。限制不一定是壞事,很多海外的基金被拒之門外。還是會(huì)逐步放開,促進(jìn)市場(chǎng)更有效。


  提問:信號(hào)對(duì)量化交易是很重要的,但是隨著使用量化交易的人越來越多,大家都會(huì)發(fā)現(xiàn)這些信號(hào),而信號(hào)是有限的,產(chǎn)生新信號(hào)需要很長(zhǎng)時(shí)間。在沒有挖掘出新信號(hào)之前,使用已有信號(hào)的人達(dá)到了飽和怎么辦?


  俸旻:在達(dá)到之前,策略應(yīng)該會(huì)有反應(yīng),需要去做調(diào)整甚至?xí)和?。?zhēng)搶的人肯定會(huì)越來越多。有些策略簡(jiǎn)直就是教科書一樣的,此時(shí)你必須趕在別人前面,讓別人跟在你后面做。


  提問:如果我們不在高頻交易里面混,我們做長(zhǎng)期一點(diǎn)的趨勢(shì)跟蹤策略。現(xiàn)在大家都玩高頻,趨勢(shì)跟蹤策略還有沒有存活的空間?


  俸旻:有,絕對(duì)有!如果你速度不能和別人比,你就在其它方面建立自己的優(yōu)勢(shì)。高頻市場(chǎng)很小,量化交易也不會(huì)把所有市場(chǎng)占完;長(zhǎng)時(shí)間來看傳統(tǒng)交易無論在國(guó)內(nèi)還是國(guó)外管理規(guī)模都會(huì)大于量化交易。這塊蛋糕吃不了,可以選其它蛋糕吃,你要發(fā)現(xiàn)你的優(yōu)勢(shì),選擇你擅長(zhǎng)的,我自己肯定也不去做找死的事情。


  提問:當(dāng)資金量變大的時(shí)候有些策略的收益會(huì)降低,您是怎么控制這個(gè)的?


  俸旻:你問的是策略容量的問題,我們的策略都是有容量的,我們剛才說要算沖擊成本、機(jī)會(huì)成本。你的單子越大,成本就越高,直到大到一定的數(shù)量,你沒有額外增加的收益了,這就是容量。比如說做一個(gè)高頻交易,容量很小,日內(nèi)的超高頻交易,幾十萬、幾百萬、一千萬的容量。但是日內(nèi)的中低頻容量可以拿到上億的容量,股票可以做到幾十億,甚至上百億的容量。但是一定要有容量的概念,不要無止境的做下去。


  提問:策略資金容量增大的時(shí)候,它的夏普值是什么樣變化的?您會(huì)把夏普值做到多少就不做了?


  俸旻:對(duì)于高頻交易我會(huì)考慮單個(gè)品種的容量是多少,可以接近那個(gè)容量去下單。但是對(duì)于中低頻,因?yàn)橹虚g還會(huì)牽涉到投資組合,你會(huì)調(diào)整你不同品種的持倉(cāng),你應(yīng)該有個(gè)換手率的約束。不能無止境放大資金管理規(guī)模,夏普值肯定會(huì)降低甚至變負(fù)。要把交易成本特別是隱性成本計(jì)算好,然后根據(jù)你的收益預(yù)期和風(fēng)險(xiǎn)承受能力而定管理好大規(guī)模吧。對(duì)于我來說:長(zhǎng)線投資期望收益率在10%到20%,回測(cè)控制在5%;高頻交易,夏普比追求大于6,至少不低于3;中低頻夏普比追求大于2.5,至少不低于1.5吧。


  提問:我看新聞上報(bào)道過量化交易中80%的訂單會(huì)被撤單而無法成交。這個(gè)報(bào)單的目的是不是為了影響市場(chǎng)情緒?


  俸旻:撤單和策略的類型有關(guān)系,做市策略肯定撤單率高。市場(chǎng)上有影響市場(chǎng)情緒的交易者,例如突然放一個(gè)假單子在上面,假裝需求特別大,然后立馬撤掉。還有交易者操縱市場(chǎng)。這些操作是涉嫌違規(guī)或者違規(guī)的,大家不要去做,不值得。


責(zé)任編輯:張文慧

【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān)。本網(wǎng)站對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

本網(wǎng)站凡是注明“來源:七禾網(wǎng)”的文章均為七禾網(wǎng) m.yfjjl6v.cn版權(quán)所有,相關(guān)網(wǎng)站或媒體若要轉(zhuǎn)載須經(jīng)七禾網(wǎng)同意0571-88212938,并注明出處。若本網(wǎng)站相關(guān)內(nèi)容涉及到其他媒體或公司的版權(quán),請(qǐng)聯(lián)系0571-88212938,我們將及時(shí)調(diào)整或刪除。

聯(lián)系我們

七禾研究中心負(fù)責(zé)人:劉健偉/翁建平
電話:0571-88212938
Email:57124514@qq.com

七禾科技中心負(fù)責(zé)人:李賀/相升澳
電話:15068166275
Email:1573338006@qq.com

七禾產(chǎn)業(yè)中心負(fù)責(zé)人:果圓/王婷
電話:18258198313

七禾研究員:唐正璐/李燁
電話:0571-88212938
Email:7hcn@163.com

七禾財(cái)富管理中心
電話:13732204374(微信同號(hào))
電話:18657157586(微信同號(hào))

七禾網(wǎng)

沈良宏觀

七禾調(diào)研

價(jià)值投資君

七禾網(wǎng)APP安卓&鴻蒙

七禾網(wǎng)APP蘋果

七禾網(wǎng)投顧平臺(tái)

傅海棠自媒體

沈良自媒體

? 七禾網(wǎng) 浙ICP備09012462號(hào)-1 浙公網(wǎng)安備 33010802010119號(hào) 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證[浙B2-20110481] 廣播電視節(jié)目制作經(jīng)營(yíng)許可證[浙字第05637號(hào)]

認(rèn)證聯(lián)盟

技術(shù)支持 本網(wǎng)法律顧問 曲峰律師 余楓梧律師 廣告合作 關(guān)于我們 鄭重聲明 業(yè)務(wù)公告

中期協(xié)“期媒投教聯(lián)盟”成員 、 中期協(xié)“金融科技委員會(huì)”委員單位