蔡振之 孫建言 趙錦
摘要:隨著計(jì)算機(jī)技術(shù)的進(jìn)一步應(yīng)用, 尤其是大數(shù)據(jù)技術(shù)的崛起,許許多多傳統(tǒng)的行業(yè)在新技術(shù)的應(yīng)用下將會(huì)發(fā)生巨大的改變。量化投資是指通過數(shù)量化方式及計(jì)算機(jī)程序發(fā)出買賣指令,以獲取穩(wěn)定收益為目的的交易方式。本研究中,我們將從信息獲取接口開始逐步完成可靠的程序交易方案的架構(gòu)。
關(guān)鍵詞:量化投資;程序化;大數(shù)據(jù)
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)20-0047-02
Quantitative Investment and Investment Platform Design and Implementation
CAI Zhen-zhi, SUN Jian-yan, ZHAO Jin
(Department of Information Science, Dalian Institute of Science and Technology, Dalian 116029, China)
Abstract: With the further application of computer technology, especially the rise of big data technology, many traditional industries will undergo tremendous changes under the application of new technologies. Quantitative investment refers to a trading method that aims to obtain stable returns by issuing trading instructions through quantitative methods and computer programs. In this study, we will gradually complete the architecture of a reliable program trading program from the information acquisition interface.
Key words: quantitative investment; programmatic investment; big data
1 引言
在量化投資興起之前,各種以人的判斷為基準(zhǔn)的投資方式是市場的主流。這種投資策略對(duì)投資機(jī)構(gòu)的各能力要求較高。不但要求投資機(jī)構(gòu)能夠預(yù)判市場動(dòng)向,而且需要操盤者細(xì)心謹(jǐn)慎,時(shí)刻觀察市場變化。這樣的投資方法有一定的主觀性,而且運(yùn)營成本高,風(fēng)險(xiǎn)大,收益率受主觀影響大。
隨著信息技術(shù)和計(jì)算機(jī)技術(shù)的飛速發(fā)展,一種定量的投資方法悄然興起。通過建立合適的數(shù)學(xué)模型并對(duì)大量數(shù)據(jù)的分析,來達(dá)到把握市場趨勢,判斷交易對(duì)象和數(shù)量的目的。同時(shí),通過券商提供的接口直接由計(jì)算機(jī)發(fā)出交易指令,高效而精準(zhǔn)地進(jìn)行投資,排除了人的認(rèn)知偏差和主觀認(rèn)識(shí),并調(diào)動(dòng)了計(jì)算機(jī)無與倫比的計(jì)算能力,將投資風(fēng)險(xiǎn)降低,保證投資收益率相對(duì)穩(wěn)定,傳統(tǒng)投資相比收益更高。
2 可行性研究
2.1技術(shù)可行性
本次研究實(shí)現(xiàn)的量化投資架構(gòu)將使用python作為基本編程語言。通過numpy、pandas等python下的工具包提供的數(shù)據(jù)結(jié)構(gòu)來處理數(shù)據(jù)。如果需要高級(jí)的算法python下包含的各種算法模塊更是其他所有語言無法企及的。
在金融產(chǎn)品的程序化交易方面,我將使用盈透公司提供的交易網(wǎng)關(guān)進(jìn)行賬戶背書。使用python對(duì)現(xiàn)有的API功能進(jìn)行進(jìn)一步開發(fā)可以實(shí)現(xiàn)程序化交易功能。
綜上所述,在技術(shù)上量化投資架構(gòu)具有良好的技術(shù)可行性。
2.2經(jīng)濟(jì)可行性
本次研究實(shí)現(xiàn)的量化投資架構(gòu)主要的成本在于購買實(shí)時(shí)行情的成本。各個(gè)證券交易所的各種行情一般情況都需要購買。但這一成本很低,完全沒有經(jīng)濟(jì)上的問題。
此外,附加成本便是開戶費(fèi)用,以及美國股市對(duì)T+0操作的最低賬戶金額的一些限制。這些成本可以在投資業(yè)務(wù)邏輯中體現(xiàn)并加以解決。
2.3社會(huì)可行性
如今,有很多券商提供支持量化交易的網(wǎng)關(guān),使用其現(xiàn)有的網(wǎng)關(guān)便能通過編程實(shí)現(xiàn)賬戶背書、資訊獲取等功能。本次研究所使用的編程語言Python遵循開源語言協(xié)議,可以按需要任意使用。此外,本架構(gòu)所涉及的軟件模塊都遵守MIT許可,屬于開源架構(gòu),在社會(huì)可行性上有充足的保證。
3 系統(tǒng)詳細(xì)設(shè)計(jì)
3.1系統(tǒng)功能結(jié)構(gòu)
通過分析,本次研究中的量化投資架構(gòu)可以分為三大模塊:信息獲取模塊、策略實(shí)施模塊以及實(shí)時(shí)監(jiān)測模塊。其中,信息獲取模塊將為投資提供所有的證券相關(guān)信息。而策略實(shí)施模塊將可以將投資策略發(fā)出的做多或是做空信號(hào)實(shí)時(shí)地形成訂單傳送至交易所。最后,實(shí)時(shí)監(jiān)測模塊會(huì)時(shí)刻反映投資策略執(zhí)行的現(xiàn)狀。
除此之外,三大模塊下的各個(gè)功能也是各不相同。在此,將系統(tǒng)功能結(jié)構(gòu)分為以下三層:
3.2數(shù)據(jù)庫設(shè)計(jì)
本次研究是針對(duì)國際上各種金融產(chǎn)品的量化投資,其中包含了各種各樣金融產(chǎn)品如:股票、期貨、指數(shù)、債券等等。金融產(chǎn)品雖然種類豐富,形式眾多,但是其本質(zhì)上都是信用契約的一種,可以用同一種實(shí)體進(jìn)行表示:合約。根據(jù)合約這個(gè)實(shí)體,我們便能確定在金融市場中唯一對(duì)應(yīng)的金融產(chǎn)品。雖然金融產(chǎn)品是多種多樣的,但是金融產(chǎn)品的基本行情都是由基本的蠟燭圖和常用的金融指標(biāo)構(gòu)成的。我們主要針對(duì)以蠟燭圖為主其他信息為輔的量化投資策略進(jìn)行實(shí)現(xiàn)。
市場深度指的是當(dāng)前市場中在證券交易過程中,現(xiàn)有訂單的出價(jià)列表。市場深度有著獨(dú)特的地位。無論是大訂單的成交還是普通訂單價(jià)格的確立都涉及市場深度帶來的影響。訂單是實(shí)施量化投資的關(guān)鍵實(shí)體,確定了訂單的各個(gè)屬性才能嚴(yán)謹(jǐn)?shù)赜行У貙?shí)施投資策略。金融市場中的訂單多種多樣有限價(jià)單、止損單、市價(jià)單等等。雖然訂單的種類繁多,但是往往都可以在最基本的限價(jià)單上進(jìn)行功能添加。在此,使用限價(jià)單作為訂單的實(shí)體進(jìn)行分析。在量化投資過程中,總有一個(gè)和券商綁定的個(gè)人賬戶。這個(gè)賬戶內(nèi)所反映出的最終信息將是量化投資的最終結(jié)果,關(guān)于該賬戶的信息是非常重要的。
3.3 類的設(shè)計(jì)
對(duì)于系統(tǒng)中每個(gè)模塊所包含的類,每個(gè)類中所包含的函數(shù),在詳細(xì)設(shè)計(jì)階段應(yīng)該將各個(gè)類及其函數(shù)進(jìn)行詳細(xì)的設(shè)計(jì)。
1)信息獲取類(InforCollector類)
信息獲取類集合了量化投資架構(gòu)中所有的金融產(chǎn)品信息獲取函數(shù)。其中的函數(shù)有合約搜索函數(shù)、蠟燭圖獲取函數(shù)、金融指標(biāo)計(jì)算函數(shù)以及市場深度獲取函數(shù)。
2)訂單管理類(Order類)
在實(shí)施量化投資的過程中,訂單的管理是其主要事務(wù)。訂單管理類將所有和訂單相關(guān)的函數(shù)集成在其中,主要是開啟訂單和刪除訂單函數(shù)兩種。同時(shí),開啟訂單函數(shù)還具有自定確定適當(dāng)價(jià)格的功能。
3)Web服務(wù)類(Watbcher類)
本次實(shí)驗(yàn)的監(jiān)測模塊由Web服務(wù)作為監(jiān)控模塊最終展示的窗口,所以需要一個(gè)完整的Web服務(wù)作為監(jiān)測模塊的基礎(chǔ)。我們選擇Tornado架構(gòu)作為Web服務(wù)的基礎(chǔ),其特性使得Web服務(wù)簡單而高效。Web服務(wù)類中主要集成Tornado架構(gòu)所需要的各種基礎(chǔ)函數(shù)。
4)Tornado響應(yīng)類的子類
在本次研究中,監(jiān)控模塊使用Tornado架構(gòu)來構(gòu)建Web服務(wù)。根據(jù)Tornado架構(gòu)的特性,不同的響應(yīng)都需要對(duì)應(yīng)不同的響應(yīng)處理類,同時(shí)這些響應(yīng)都應(yīng)當(dāng)是Tornado架構(gòu)下的RequestHandler類的子類。在此需要的響應(yīng)處理類有訂單信息響應(yīng)類、蠟燭圖信息響應(yīng)類和資產(chǎn)信息響應(yīng)類。
5)IB網(wǎng)關(guān)類的子類(IBApp類)
IB網(wǎng)關(guān)類是由IB網(wǎng)關(guān)提供的讓程序與IB網(wǎng)關(guān)交流使用的類。因?yàn)镮B網(wǎng)關(guān)是與交易所交換信息的必經(jīng)之路,所以IB網(wǎng)關(guān)類和很多類有著間接的依賴關(guān)系。由于所需功能不同,IB網(wǎng)關(guān)類將由合同接收類、蠟燭圖接收類以及訂單接收類繼承。
根據(jù)以上分析,系統(tǒng)中的類圖之間有著比較復(fù)雜的繼承和依賴關(guān)系,其系統(tǒng)總類圖如下所示:
4 結(jié)束語
在本次研究的系統(tǒng)實(shí)現(xiàn)中,我們將圍繞上文的分析,實(shí)現(xiàn)一套以技術(shù)分析投資策略為主的量化投資架構(gòu)。
參考文獻(xiàn):
[1] 趙海軍. 量化投資交易系統(tǒng)的設(shè)計(jì)與開發(fā)[D].長春:吉林大學(xué),2017.
[2] 薛輝.基于量化投資管理的系統(tǒng)設(shè)計(jì)[J].金融電子化,2016(10):64-66.
[3] 吳軻. 股票量化投資策略在DTS平臺(tái)的實(shí)現(xiàn)[D].長沙:湖南大學(xué),2016.
[4] 蔣樹國. 量化投資趨勢策略分析和研究[D].北京:對(duì)外經(jīng)濟(jì)貿(mào)易大學(xué),2016.
[5] 李子睿. 量化投資交易策略研究[D]. 天津:天津大學(xué),2013.