已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
碩士學位論文 (專業(yè)學位) 股票期貨投資量化研究系統(tǒng)的設(shè)計與實現(xiàn) 姓 名: 學 號: 所在院系:軟件學院 職業(yè)類型:工程碩士 專業(yè)領(lǐng)域:軟件工程 指導教師: 副指導教師: 二 一三年二月 A in f 2013 股 票 期 貨 投 資 量 化 研 究 系 統(tǒng) 的 設(shè) 計 與 實 現(xiàn) 同 濟 大 學 學位論文版權(quán)使用授權(quán)書 本人完全了解同濟大學關(guān)于收集、保存、使用學位論文的規(guī)定,同意如下各項內(nèi)容:按照學校要求提交學位論文的印刷本和電子版本;學校有權(quán)保存學位論文的印刷本和電子版,并采用影印、縮印、掃描、數(shù)字化或其它手段保存論文;學校有權(quán)提供目錄檢索以及提供本學位論文全文或者部分的閱覽服務;學校有權(quán)按有關(guān)規(guī)定向國家有關(guān)部門或者機構(gòu)送交論文的復印件和電子版;在不以贏利為目的的前提下,學校可以適當復 制論文的部分或全部內(nèi)容用于學術(shù)活動。 學位論文作者簽名: 2013 年 2 月 20 日 同濟大學學位論文原創(chuàng)性聲明 本人鄭重聲明:所呈交的學位論文,是本人在導師指導下,進行研究工作所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本學位論文的研究成果不包含任何他人創(chuàng)作的、已公開發(fā)表或者沒有公開發(fā)表的作品的內(nèi)容。對本論文所涉及的研究工作做出貢獻的其他個人和集體,均 已在文中以明確方式標明。本學位論文原創(chuàng)性聲明的法律責任由本人承擔。 學位論文作者簽名: 2013 年 2 月 20 日 摘 要 金融行業(yè)是一個具有悠久歷史的行業(yè),同時在我國也是一個發(fā)展中的行業(yè),它已經(jīng)影響著我們生活的方方面面。計算機科學技術(shù)相較于金融業(yè)來講是近幾十年來迅速發(fā)展的行業(yè)。它已經(jīng)從原來的只有用于高端科學研究,演變到現(xiàn)在,我們生活中每時每刻都離不開它。 隨著,近幾十年的 不斷磨合,計算機技術(shù)已經(jīng)深入到金融的各個 領(lǐng)域,可以說離開了計算機的技術(shù),金融就不可能得到快速穩(wěn)定的發(fā)展。在金融的國際化和創(chuàng)新的過程中,都需要計算機領(lǐng)域的技術(shù)來幫助其運作與監(jiān)管。 本文主要是通過設(shè)計實現(xiàn)一個便于投資者研究股票和期貨 的系統(tǒng),使用戶能在 在實際交易中 編寫 的各種策略。這些策略不但能幫助投資分析市場的動向,甚至能自動化交易。在這個過程中,投資者能非常便捷且高效的將自己的投資思路進行量化研究和投資。 為了很好的設(shè)計和實現(xiàn)這個系統(tǒng),本文利用了 C/S 框架和多線程技術(shù),使得投資者能夠突破空間的限制,從而搭建一個 高效開放的平臺。 在功能上,主要是集成了當前市場各大投研平臺和下單軟件的優(yōu)點,且又突出個性化這一主題。從實現(xiàn)的效果上來說,用戶不僅能快速地學習使用系統(tǒng)的各個主要功能模塊,而且還能得到系統(tǒng)提供的各種便于二次開發(fā)的底層接口。 關(guān)鍵詞 : 投研平臺、 C/S、金融、風險、股票、期貨 a it in As we it to is a in It in of so In of of a of to a to to To , of be of In it of C/S; 錄 1 1 目錄 第 1 章 引言 . 1 題背景及意義 . 1 景 . 1 資研究系統(tǒng)存在的問題 . 1 究意義 . 1 票期貨投資研究平臺的發(fā)展趨勢 . 2 易策略 . 3 情數(shù)據(jù)源 . 3 易柜臺 . 3 史回測機制 . 4 文組織結(jié) 構(gòu)概要 . 4 第 2 章 相關(guān)技術(shù)簡介 . 5 + . 6 任務編程 . 8 介 . 8 第 3 章 需求分析 . 10 述 . 10 統(tǒng)主要功能和架構(gòu) . 10 統(tǒng)主要功能模塊 . 10 統(tǒng)用例圖分析 . 11 統(tǒng)角色定義 . 12 控人員用例分析 . 12 略研究員用例分析 . 13 C 機的業(yè)務流程分析 . 13 研平臺 客戶端流程圖 . 14 情模塊業(yè)務流程分析 . 14 略實盤交易模塊業(yè)務流程分析 . 15 略歷史數(shù)據(jù)回測模塊業(yè)務流程分析 . 18 務器的業(yè)務流程分析 . 22 情接入模塊業(yè)務流程分析 . 23 單通道模塊業(yè)務流程分析 . 25 戶信息管理模塊業(yè)務 流程分析 . 26 統(tǒng)性能需求 . 28 務器性能需求 . 28 C 機客戶端性能需求 . 29 第 4 章 系統(tǒng)設(shè)計 . 30 目錄 2 2 計思路 . 30 圖設(shè)計 . 31 情界面類圖 . 31 術(shù)指標類圖 . 32 單通道類圖 . 32 倉管理類圖 . 33 略管理類圖 . 33 序圖設(shè)計 . 34 情界面順序圖 . 34 略編寫順序圖 . 34 戶登入順序圖 . 35 據(jù)接收順序圖 . 35 盤策略下單順序圖 . 36 測策略順序圖 . 37 據(jù)庫設(shè)計 . 37 第 5 章 系統(tǒng)實現(xiàn) . 41 C 機客戶端登入界面的實現(xiàn) . 41 情界面 . 42 時圖 . 44 線圖 . 48 線圖上的技術(shù)指標 . 49 票及期貨合約的背景信息 . 53 盤交易策略 . 54 史數(shù)據(jù)回放測試 . 57 輯策略 . 57 測策略 . 58 測報告 . 60 單通道的實現(xiàn) . 62 第 6 章 結(jié)論與展望 . 64 票期貨投資量化系統(tǒng)設(shè)計實現(xiàn)感想 . 64 票期貨投資量化系統(tǒng)的不足 . 64 股票期貨投資量化系統(tǒng)的展望 . 64 致謝 . 66 參考文獻 . 66 個人簡歷、在讀期間發(fā)表的學術(shù)論文與研究成 果 . 68 第 1 章 引言 1 1 第 1 章 引言 題背景及意義 景 近年來,量化投資在中國成為熱門話題。隨著金融的不斷改革和市場的不斷尋求金融創(chuàng)新,個人和機構(gòu)投資者對于工具的選擇也有了更多更高的需求。 尤其是這兩年,隨著股市的大跌和市場散戶的不斷離場,而股市和期市又是一個零和市場,所以想在這些市場中搏殺賺錢,變得非常困難。據(jù)業(yè)內(nèi)人士透露,目前不僅 80%的散戶虧 錢,大部分的機構(gòu)投資者想在市場中立足,沒有專業(yè)化的的團隊和創(chuàng)新的投資理念,根本就無法生存。 和傳統(tǒng)的基本面分析比較起來,量化投資的最大特點就是點量化和精確化。 采用傳統(tǒng)分析方法取得良好業(yè)績者首推巴菲特,連續(xù) 40 年,每年可以獲得20%的復合穩(wěn)定收益。而量化投資大師西蒙斯則連續(xù) 20 年味投資者獲得超過 35%的收益率,若包括業(yè)績提成在內(nèi),則實際每年投資收益率超過 60%,由此可見量化投資的巨大威力。 若中國的金融市場全面開放后,國內(nèi)的投資者能否抵御華爾街金融大鱷們的沖擊。所以建立一個完整系統(tǒng)的投資研究平臺是一個刻不容 緩的事情。 資研究系統(tǒng)存在的問題 現(xiàn)在市場上有許多投研平臺,他們各自都有各自的獨特之處。比如 具有完整和快速的對歷史數(shù)據(jù)的測試和優(yōu)化的機制;大智慧投研平臺,具有豐富的咨詢數(shù)據(jù)。 雖然他們各自都具有獨特之處,但是由于各類平臺的出發(fā)點不同,他們都專注于某一個核心模塊。舉大智慧平臺為例, 2012 年之前,他們還沒有自己一個比較系統(tǒng)化的測試模塊。而在 2012 年,為了彌補這方面的不足,大智慧花了幾千萬收購了另一家軟件公司來研發(fā)他們的投研平臺。但到目前為止,系統(tǒng)還未成熟,而且從他們框架設(shè)計來看,他們的 定位還是沿襲了市場上其他軟件的模塊特點。 究意義 第 1 章 引言 2 2 當前,國內(nèi)期貨市場已有 20 多家的程序化交易平臺,投資者應該如何選擇自己的量化投資平臺十分重要。對于普通投資者而言,開發(fā)個性化程序化交易平臺顯然成本太高。剛剛接觸程序化交易的投資者,可以選擇對計算機語言要求不高,程序編寫相對容易的軟件。這類軟件的特點是入門容易,能夠方便的實現(xiàn)一些基本的策略編寫,在復雜的策略的編寫上會稍遜一籌。文華財經(jīng)推出的贏智程序化交易軟件和金字塔交易軟件就屬于此類。以目前市場使用較為普遍的贏智程序化交易軟件為例,該軟件使用特有 的“麥語言”,倡導的是積木式的變成理念,把復雜算法封裝到一個個函數(shù)里面,采用“小語法,大函數(shù)”的構(gòu)建模式。 文華財經(jīng)總經(jīng)理尚守哲認為,“麥語言”的語法雖然簡單,但是配合上專門的程序化數(shù)據(jù)結(jié)構(gòu)以及豐富的金融統(tǒng)計函數(shù)庫,同樣可以支持邏輯復雜的金融應用。麥語言的函數(shù)庫是經(jīng)常更新的,根據(jù)客戶的新要求隨時添加新函數(shù),來支持編程者新的交易思想和應用。 但此番言論將程序化交易和量化投資定位的過于簡單。在一個零核市場,存在著的是一場殘酷的搏殺,一個人的勝利,必須建立在另一個人的失敗的基礎(chǔ)上。也就是說,如果底層基礎(chǔ)不夠靈活, 那么上層建筑就無法標新立異。對于一個投資交易策略的研發(fā),就目前的趨勢來看,簡單的數(shù)學統(tǒng)計已經(jīng)無法盈利,投資者必須要借助更強大的計算機系統(tǒng)工具來快速的引用各類場內(nèi)外的數(shù)據(jù)以及工具來實現(xiàn)自己的投資思路。并且,客戶新的需求如果都需要軟件提供商的支持的話,那么這個開發(fā)效率必然不高,且由于概念理解的不同,產(chǎn)品的實用性確實也需要斟酌。 票期貨投資研究平臺的發(fā)展趨勢 我們可以看到,在西方國家,幾乎沒有個人投資者活躍于這個市場當中,取而代之的是各類專業(yè)化的機構(gòu)投資者。他們不僅具有專業(yè)化的團隊,而且,他們 更能集中資源投入到各類工具的應用當中去。所以未來,投研平臺的定位必須是機構(gòu)投資者。那么投研平臺更多應該要考慮的是平臺的體系的完整性和先進性,而非那些簡單容易上手的架構(gòu)。 從目前投研平臺的現(xiàn)狀和缺陷來看,首先要打通的就是各類國內(nèi)外數(shù)據(jù)的整合。數(shù)據(jù)源是一切研究的基礎(chǔ),如果數(shù)據(jù)源單一,那么接下來的研究和開發(fā)只是在數(shù)學模型上的變化,而非投資理念的量化。 其次,開發(fā)性的系統(tǒng)架構(gòu)也是重中之重,系統(tǒng)必須提供各類接口來滿足客戶的復雜的二次開發(fā)的需求。只有這樣才能突出那些有研究實力的機構(gòu)投資的優(yōu)勢。 第 1 章 引言 3 3 再者,系統(tǒng)性能的優(yōu)化。這 點對于投資經(jīng)理、策略研究員來說,也是至關(guān)重要的一點。如果系統(tǒng)的性能低下,作為一個使用者來說,他對于模型的反復測試就失去了興趣。這樣就會導致模擬的嚴謹性就存在了問題。 最后,資產(chǎn)管理系統(tǒng)化。資產(chǎn)管理相對來說不需要有過多的個性化。因為資產(chǎn)管理就是對于風險的控制。但是優(yōu)秀的資產(chǎn)管理系統(tǒng),必須監(jiān)控到各類風險,且在出現(xiàn)風險的時候,提供一整套邏輯嚴謹?shù)奶幚矸绞健K再Y產(chǎn)管理最重要的就是分散風險,保證資金的安全。 關(guān)術(shù)語簡介 由于論文中出現(xiàn)了很多和投研平臺中特定的術(shù)語,所以有必要在此做一個簡要的介紹,以便于對后 續(xù)內(nèi)容的闡述更加簡明。 易策略 交易策略,通俗的說法就是股票期貨的投資思路。對于主觀交易者來說,他們的交易策略就是對于市場行情的個人判斷,然后通過各個行業(yè)數(shù)據(jù)以及咨詢數(shù)據(jù)來對股票或期貨進行買賣的一種“行為”。 而在量化投研平臺中,我們將主觀交易者的這種行為轉(zhuǎn)化為“計算機的邏輯”。人們通過對自己原有模糊的投資思路的梳理,將平時投資中的各個行為細節(jié)一步步用計算機語言表述出來。然后計算機就代替了人的大腦,通過預先設(shè)定好的邏輯,當市場行情觸發(fā)其中的某些條件的時候,那么計算機就會發(fā)生買賣的交易指令到交易 所。 情數(shù)據(jù)源 行情數(shù)據(jù)源指的就是當前其他投資者的交易信息的一個匯集。當市場中任何一個投資者發(fā)出買賣指令的時候,他們的信息就會匯集到交易所,交易所將這些成交的信息和未成交的信息全部打包發(fā)送給出去,就成為了我們看到的行情數(shù)據(jù)。投資可以通過長時間的行情和短時間的行情進行分析,得出他們自己的接下來的交易抉擇。行情數(shù)據(jù)源中包含了很多的信息,如成交價、成交量、現(xiàn)手、持倉量、賣價和買價、合約代碼、成交額等。下面將分別簡要的介紹一下各個字段的含義。 易柜臺 交易柜臺其實就是一個處理投資者交易委 托信息的程序。在國內(nèi),投資者的第 1 章 引言 4 4 交易委托單,需要先發(fā)送到“經(jīng)濟公司”,然后由經(jīng)濟公司的柜臺程序?qū)⑽袉伟l(fā)送給交易所。 當交易所接收到投資者的委托單后,它會將各個委托單進行撮合成交。但由于不可能所有的委托單的報價都符合成交的條件,所以未成交的單子就會被掛到行情數(shù)據(jù)里面發(fā)送給其他投資者,同時,交易所也會告訴剛剛發(fā)送委托單的投資者是否已經(jīng)成交。 前面的介紹是非常簡單的一種描述。其實要細究交易柜臺的機制的話,需要很大的篇幅。比如,交易所同時接受到多個投資者的委托單的情況;同時有多個委托單的報價相同情況;某些委托單只有 部分成交的情況等等。而且市場中還存在著“做市商”的機制,這個機制在又有非常大的不同。 總的來說,交易柜臺就是處理投資之間買賣撮合的場所。 史回測機制 對于一個投研平臺來說,歷史回測機制是一個核心模塊。研究員通過歷史的回測來判斷他們“交易策略”是否有效。而一個好的回測機制能夠幫助研究者快速便捷的分析他們的策略在哪些地方有不足,穩(wěn)定性如何,能否抵御歷史過程中發(fā)生各類情況并能把握住盈利的機會。 一般歷史回測機制包括:數(shù)據(jù)的讀取和加載、將數(shù)據(jù)按照歷史真實情況傳輸給交易策略、行情 K 線以及指標的顯示、運行 日志的輸出、回測報告的生成、回測報告的分析。 文組織結(jié)構(gòu)概要 本文先從目前的股票和期貨的投資平臺的現(xiàn)狀出發(fā),描述了目前市場上比較流行的各類系統(tǒng)的優(yōu)點和不足。接著通過吸取它們的有點和彌補其不足方面來設(shè)計了本系統(tǒng)的框架和各個系統(tǒng)模塊流程。此外通過用例分析來具體描述各個不同角色的用戶在使用系統(tǒng)的過程將用到的模塊,以及它們 在實際應用中的流程步驟。最后,呈現(xiàn)系統(tǒng)的實現(xiàn)效果。在這個效果中,重點介紹了各個主要的功能模塊。在介紹這些模塊的過程中,還展示了其主要的算法邏輯第 2 章 相關(guān)技術(shù)簡介 5 5 第 2 章 相關(guān)技術(shù)簡介 本章中主要闡述在 設(shè)計實現(xiàn)金融投研平臺所需的各類工具和技術(shù)。比如 C/有前后臺的所引用的一些關(guān)鍵技術(shù)等等的介紹。 , C/S 結(jié)構(gòu)是指將大型計算機應用系統(tǒng)分解成多個功能相對獨立的子系統(tǒng),以服務器作為整個應用系統(tǒng)資源存放和管理的核心,多臺客戶機分別處理相應功能。這種體系結(jié)構(gòu)合理有效的利用了客戶機和服務器的資源,提高系統(tǒng)效率,保證系統(tǒng)運行的穩(wěn)定、信息可靠完整。客戶機和服務器之間交互關(guān)系體現(xiàn)為“服務請求 /服務響應”,即客戶端只要將請求發(fā)給服務端,而服務端處理完客戶端的請求后,只將結(jié)果發(fā)送回客戶端, 實際在網(wǎng)絡上傳輸?shù)闹挥姓埱笳Z句和結(jié)果數(shù)據(jù),從而大大減輕了網(wǎng)絡的通信負擔,改善了系統(tǒng)運行的總體性能??蛻舳送瓿蓱檬聞盏慕M織和友好人機界面的實現(xiàn),而服務器端專門負責數(shù)據(jù)庫的操作維護,提高了整個系統(tǒng)的吞吐量和響應速度。具體的優(yōu)點如下: 1,數(shù)據(jù)安全性比較。由于 C/S 結(jié)構(gòu)軟件的數(shù)據(jù)分布特性,客戶端所發(fā)生的火災、盜搶、地震、病毒、黑客等都成了可怕的數(shù)據(jù)殺手。 另外,對于集團級的異地軟件應用, C/S 結(jié)構(gòu)的軟件必須在各地安裝多個服務器,并在多個服務器之間進行數(shù)據(jù)同步。如此一來,每個數(shù)據(jù)點上的數(shù)據(jù)安全都影響了整個應用的數(shù) 據(jù)安全。對于 B/S 結(jié)構(gòu)的軟件來講,由于其數(shù)據(jù)集中存放于總部的數(shù)據(jù)庫服務器,客戶端不保存任何業(yè)務數(shù)據(jù)和數(shù)據(jù)庫連接信息,也無需進行什么數(shù)據(jù)同步,所以這些安全問題也就自然不存在了。 2,數(shù)據(jù)一致性比較。在 C/S 結(jié)構(gòu)軟件的解決方案里,對于異地經(jīng)營的大型集團都采用各地安裝區(qū)域級服務器,然后再進行數(shù)據(jù)同步的模式。這些服務器每天必須同步完畢之后,總部才可得到最終的數(shù)據(jù)。由于局部網(wǎng)絡故障造成個別數(shù)據(jù)庫不能同步不說,即使同步上來,各服務器也不是一個時點上的數(shù)據(jù),數(shù)據(jù)永遠無法一致,不能用于決策。對于 B/S 結(jié)構(gòu)的軟件來講,其數(shù)據(jù) 是集中存放的,客戶端發(fā)生的每一筆業(yè)務單據(jù)都直接進入到中央數(shù)據(jù)庫,不存在數(shù)據(jù)一致性的問題。 3,數(shù)據(jù)實時性比較。在集團級應用里, C/S 結(jié)構(gòu)不可能隨時隨地看到當前業(yè)務的發(fā)生情況,看到的都是事后數(shù)據(jù);而 B/S 結(jié)構(gòu)則不同,它可以實時看到當前發(fā)生的所有業(yè)務,方便了快速決策,有效地避免了企業(yè)損失。 4,數(shù)據(jù)溯源性比較。由于 B/S 結(jié)構(gòu)的數(shù)據(jù)是集中存放的,所以總公司可以第 2 章 相關(guān)技術(shù)簡介 6 6 直接追溯到各級分支機構(gòu)(分公司、門店)的原始業(yè)務單據(jù),也就是說看到的結(jié)果可溯源。大部分 C/S 結(jié)構(gòu)的軟件則不同,為了減少數(shù)據(jù)通信量,僅僅上傳中間報表數(shù)據(jù),在總 部不可能查到各分支機構(gòu)(分公司、門店)的原始單據(jù)。 5,服務響應及時性比較。企業(yè)的業(yè)務流程、業(yè)務模式不是一成不變的,隨著企業(yè)不斷發(fā)展,必然會不斷調(diào)整。軟件供應商提供的軟件也不是完美無缺的,所以,對已經(jīng)部署的軟件產(chǎn)品進行維護、升級是正常的。 C/S 結(jié)構(gòu)軟件,由于其應用是分布的,需要對每一個使用節(jié)點進行程序安裝,所以,即使非常小的程序缺陷都需要很長的重新部署時間,重新部署時,為了保證各程序版本的一致性,必須暫停一切業(yè)務進行更新(即“休克更新”),其服務響應時間基本不可忍受。而 B/S 結(jié)構(gòu)的軟件不同,其應用都集中于總 部服務器上,各應用結(jié)點并沒有任何程序,一個地方更新則全部應用程序更新,可以做到快速服務響應。 6,網(wǎng)絡應用限制比較。 C/S 結(jié)構(gòu)軟件僅適用于局域網(wǎng)內(nèi)部用戶或?qū)拵в脩簦?1 兆以上);而我們的 B/S 結(jié)構(gòu)軟件可以適用于任何網(wǎng)絡結(jié)構(gòu)(包括 號入網(wǎng)方式),特別適于寬帶不能到達的地方(例如迪信通集團的某些分公司,僅靠電話上網(wǎng)即可正常使用軟件系統(tǒng))。 + 聽起來有些荒謬, C 語言的產(chǎn)生竟然源于一個失敗的項目。 1969 年,通用電氣、麻省理工學院和貝爾實驗室聯(lián)合創(chuàng)建了一個龐大的項目 程。該 項目的目的是創(chuàng)建一個操作系統(tǒng),但竟然遇到了麻煩:它不但無法交付原先所承諾的快速而便捷的在線系統(tǒng),甚至連一點有用的東西都沒有弄出來。雖然開發(fā)小組最終勉強讓 動起來,但是他們還是陷入了泥潭,就像 60 上面一樣。他們試圖建立一個非常巨大的操作系統(tǒng),能夠應用于規(guī)模好呢小的硬件系統(tǒng)中。 了總結(jié)工程教訓的寶庫,但它同時也為 C 語言體現(xiàn)“小即美”鋪平了道路。 C+是一種使用非常廣泛的電腦程序設(shè)計語言。它是一種靜態(tài)數(shù)據(jù)類型檢查的,支持多范型的通用程序設(shè)計語言。 C+支持過程化 程序設(shè)計、數(shù)據(jù)抽象化、面對對象程序設(shè)計、泛型程序設(shè)計、基于原則設(shè)計等多種程序設(shè)計風格。 和 C 語言相比, C+引入了更多的特性,包括:陳述性聲明,類似函數(shù)的強制轉(zhuǎn)型, 作符,布林類型,參考類型,默認參數(shù),函數(shù)重載,命名空間,類型(包括所有和類型相關(guān)的特性,如繼承、成員函數(shù)、虛函數(shù)、抽象類型和構(gòu)造函數(shù)),操作符重載,模板,異常處理和運行時期識別。和普遍認為的相反, C+不是第一個正式引入 鍵字的語言。 80 年代早期, 2 章 相關(guān)技術(shù)簡介 7 7 論之后提供了在 C 語言中 實現(xiàn)機制,并在帶類的 C 中取得了一定經(jīng)驗。關(guān)鍵字 式引入 C 語言是在89。這遭遇第一個 C+國際標準近十年,但此時 被 C+實現(xiàn)普遍采用。 在面向?qū)ο蟪绦蛟O(shè)計術(shù)語中,對象 (數(shù)據(jù) (處理數(shù)據(jù)的指令(聯(lián)合 (模擬實際世界,對象有三種特質(zhì):狀態(tài)、行為、同一性身份,并且使用信息來引發(fā)彼此的交互。類型為對象的藍圖或工廠,定義了對象的抽象特質(zhì),包括對象 的屬性特質(zhì)和對象的行為特質(zhì),屬性的值即時對象的狀態(tài),行為即對象能夠做的事。 C+ 為類型構(gòu)成式面向?qū)ο蟪绦蛟O(shè)計語言 (類型概念具現(xiàn)化地作為二等公民出現(xiàn)在 C+語言當中,在語言中明確地使用類型來做到數(shù)據(jù)抽象化、封裝、模塊化、繼承、子類型多態(tài)、對象狀態(tài)的自動初始化。 C+中,一個類型即為一個類型,加上封裝,一個類型即為一個抽象數(shù)據(jù)類型,繼承、多態(tài)、模板都加強了類型的可抽象性。在 C+可以使用 兩個關(guān)鍵字聲明類型,而使用 作符實例化類型產(chǎn)生的實例即為對象,是一等公民。 C/C+以數(shù)據(jù)成員表達屬性,以成員函數(shù)表達行為。我們可以說類型是程序人員產(chǎn)生的,而對象是編輯器產(chǎn)生的。 封裝是將數(shù)據(jù)和處理數(shù)據(jù)的程序組合起來,僅對外公開接口,達到信息隱藏的功能。封裝的優(yōu)點是能減少耦合。 C+、 C#等語言定義對象都是在語法中明確使用類型 (做到封裝。 繼承是指子類繼承超類型,會自動取得超類型除私有特質(zhì)外的全部特質(zhì),同一類型的所有實例都會自動有該類型的全部特質(zhì),做到代碼再用。 C+只支持類型構(gòu)成式繼承,雖然同一類型的所有實例都有該類型的全部特質(zhì),但是實例能夠共享的實例成員只限成員函數(shù),類型的任何實例數(shù)據(jù)成員乃每個實例獨立一份,因此對象間并不能共享狀態(tài),除非特質(zhì)為參考類型的屬性,或使用指針來間接共享。 C+同事支持公有繼承、使用保護繼承、私有繼承。其中最常用的是公有繼承。 C+支持多重繼承。多重繼承的優(yōu)缺點一直廣為用戶所爭議,許多語言并不支持多重繼承,而改以單一繼承和接口繼承,而另一些語言改以單一繼承和混入。C+支持虛擬繼承用以解決多重繼承的菱形問題。 除了封裝與繼承外, C+還提供了多態(tài)功 能,面向?qū)ο蟮木裨谟诙鄳B(tài),一般的多態(tài),是指動態(tài)多態(tài),系使用繼承和動態(tài)綁定實現(xiàn),使用多態(tài)可創(chuàng)建起繼承體系。類型與繼承只是達成多態(tài)中的一種手段,所以稱面向?qū)ο蠖穷愋蛯?。多態(tài)分成靜態(tài)多態(tài)與動態(tài)多態(tài)。 C+語言支持的動態(tài)多態(tài)必須結(jié)合繼承和動態(tài)綁定方式實現(xiàn)。靜態(tài)多態(tài)是指編譯時決定的多態(tài),包括重載和以模板實現(xiàn)多態(tài)的方第 2 章 相關(guān)技術(shù)簡介 8 8 法即參數(shù)化型態(tài),是使用巨集的“代碼膨脹法”達到多態(tài)效果。類型轉(zhuǎn)換也是一種區(qū)域多態(tài)的概念, C+提供 運算對象來實現(xiàn)強制類型轉(zhuǎn)化。運算對象重載或函數(shù)重載也 算是多態(tài)的概念。 任務編程 當操作系統(tǒng)使用一個規(guī)劃策略允許兩個或更多進程并發(fā)共享一個 ,它稱做多任務編程,或多程序編程。在設(shè)計的時間段過期或某些事件發(fā)生前,一直執(zhí)行某個進程。然后操作系統(tǒng)切換到另一個進程。這種切換完成迅速,給人的錯覺是,這些進程是同事執(zhí)行的。而事實上,某時刻只能激活一個進程。這種進程間的切換在所有進程完成前一直進行。規(guī)劃策略決定何時切換進程。規(guī)劃策略可能由操作系統(tǒng)或其他進程強制執(zhí)行。在某些情況下,由操作系統(tǒng)和進程兩者負債強迫實施規(guī)劃策略。多任務可以在 3 個級別上發(fā)生:對話級、進 程級、線程級。 介 基于客戶 /服務器體系結(jié)構(gòu)的數(shù)據(jù)庫 , 一般的關(guān)系數(shù)據(jù)庫都是基于主 /從式的模型的。在主 /從式的結(jié)構(gòu)中,所有的應用都運行在一臺機器上。用戶只是通過終端發(fā)命令或簡單地查看應用運行的結(jié)果。而在客戶 /服務器結(jié)構(gòu)中,應用被分在了多臺機器上運行。一臺機器是另一個系統(tǒng)的客戶,或是另外一些機器的服務器。這些機器通過局域網(wǎng)或廣域網(wǎng)聯(lián)接起來。 客戶 /服務器模型的好處是:它支持共享資源且在多臺設(shè)備間平衡負載。允許容納多個主機的環(huán)境,充分利用了企業(yè)已有的各種系統(tǒng),從硬件角度看,客 戶/服務器體系結(jié)構(gòu)是指將某項任務在兩臺或多臺機器之間進行分配,其中客戶機( 來運行提供用戶接口和前端處理的應用程序,服務器機( 供客戶機使用的各種資源和服務。從軟件角度看,客戶 /服務器體系結(jié)構(gòu)是把某項應用或軟件系統(tǒng)按邏輯功能劃分為客戶軟件部分和服務器軟件部分??蛻糗浖糠忠话阖撠煍?shù)據(jù)的表示和應用,處理用戶界面,用以接收用戶的數(shù)據(jù)處理請求并將之轉(zhuǎn)換為對服務器的請求,要求服務器為其提供數(shù)據(jù)的存儲和檢索服務;服務器端軟件負責接收客戶端軟件發(fā)來的請求并提供相應服務客戶 /服務器融合了大型機 的強大功能和中央控制以及 的低成本和較好的處理平衡??蛻?/服務器為任務的集中 /局部分布提供了一種新的方法,這種體系能夠使用戶對數(shù)據(jù)完整性、管理和安全性進行集中控制。在緩解網(wǎng)絡交通和主機負荷以及滿足用戶需要方面,客戶 /服務器體系提供了良好的解決方案??傊?,客戶 /服務器的工作模第 2 章 相關(guān)技術(shù)簡介 9 9 式是:客戶與服務器之間采用網(wǎng)絡協(xié)議(如 P、 行連接和通訊,由客戶端向服務器發(fā)出請求,服務器端響應請求,并進行相應服務。 真正開放的數(shù)據(jù)庫。由于采用了客戶 /服務器結(jié)構(gòu),應用被分在了多臺機器上運行。 更進一步,運行在客戶端的應用不必是 司的產(chǎn)品。對于一般的關(guān)系數(shù)據(jù)庫,為了讓其它語言編寫的應用能夠訪問數(shù)據(jù)庫,提供了預編譯。 據(jù)庫,不只是簡單地提供了預編譯,而且公開了應用程序接口勵第三方編寫 口。由于開放的客戶 許在不同的平臺使用完全相同的調(diào)用,因而使得訪問 應用程序很容易從一個平臺向另一個平臺移植。 一種高性能的數(shù)據(jù)庫。它真正吸引人的地方還是它的高性能。體現(xiàn)在以下幾方面:“可編程數(shù)據(jù)庫”,通過提供存儲過程,創(chuàng)建了一個 可編程數(shù)據(jù)庫。存儲過程允許用戶編寫自己的數(shù)據(jù)庫子例程。這些子例程是經(jīng)過預編譯的,因此不必為每次調(diào)用都進行編譯、優(yōu)化、生成查詢規(guī)劃,因而查詢速度要快得多;“事件驅(qū)動的觸發(fā)器”, 觸發(fā)器是一種特殊的存儲過程。通過觸發(fā)器可以啟動另一個存儲過程,從而確保數(shù)據(jù)庫的完整性;“多線索化”, 據(jù)庫的體系結(jié)構(gòu)的另一個創(chuàng)新之處就是多線索化。一般的數(shù)據(jù)庫都依靠操作系統(tǒng)來管理與數(shù)據(jù)庫的連接。當有多個用戶連接時,系統(tǒng)的性能會大幅度下降。 據(jù)庫不讓操作系統(tǒng)來管理進程,把與數(shù)據(jù)庫的連接當作自己的一部分來管理。此 外,數(shù)據(jù)庫引擎還代替操作系統(tǒng)來管理一部分硬件資源,如端口、內(nèi)存、硬盤,繞過了操作系統(tǒng)這一環(huán)節(jié),提高了性能。 第 3 章 需求分析 10 10 第 3 章 需求分析 投研平臺是一個綜合性的系統(tǒng),主要分為數(shù)據(jù)接入模塊、測試模塊、實盤運行模塊、持倉管理模塊、報告分析模塊以及資產(chǎn)組合管理模塊。各個模塊都是一個子系統(tǒng)。由于平臺運行的效率直接決定了研究的周期和使用者的工作量,所以每一個模塊必須從框架設(shè)計到代碼實現(xiàn)都要層層把關(guān),不斷優(yōu)化,以達到最終的高效執(zhí)行。此外,易用性也是一個非常重要的設(shè)計要求。因為只有好的易用 性才能激發(fā)研究員不斷探索的積極性和效率。如果操作復雜繁瑣,勢必會造成操作過程中的錯誤率。 述 現(xiàn)在的市面上的投研平臺不斷更新,功能也不斷的推出,效率也越來越高。但是由于前期定位的不同,各個平臺總是無法從投資的角度來幫助用戶來實現(xiàn)量化交易和研究。真正的投資不是單靠現(xiàn)有的價格、成交量、持倉量等基礎(chǔ)信息就能量化的了的。好的平臺必須提供多方面的信息,而且能夠?qū)⑦@些信息整合歸類以便量化研究。 而且,目前絕大多數(shù)的投研平臺主要是還立足于開發(fā)現(xiàn)有使用者不斷提出來的需求。而自身卻沒有在投資領(lǐng)域真正拼殺過。所以要做 好一個投研平臺,首先要研究投資本身。只有這樣才能理解投研平臺的需求和實現(xiàn)目標。 統(tǒng)主要功能和架構(gòu) 統(tǒng)主要功能模塊 系統(tǒng)的主要功能模塊分為兩類:服務器和 。 服務器中,主要是行情數(shù)據(jù)的接入存儲及發(fā)送、交易委托單的發(fā)送及成交信息的接受、記錄用戶信息管理、用戶的交易信息的管理。 中,主要是歷史數(shù)據(jù)存儲、策略編寫器、歷史行情回測機制。下面就逐個介紹各個功能模塊。 1、 行情數(shù)據(jù)的接入存儲及發(fā)送模塊:此模塊是通過行情數(shù)據(jù)源的 口來接收從公網(wǎng)上發(fā)送過來的行情數(shù)據(jù)。行情數(shù)據(jù)接收 到以后,需要將其按照順序存入數(shù)據(jù)庫。并且,當 客戶端發(fā)送來請求歷史數(shù)據(jù)的時候,能將這些歷史數(shù)據(jù)提供出來。 2、交易委托單的發(fā)送及成交信息的接受:交易通道統(tǒng)一由服務器管理。當?shù)?3 章 需求分析 11 11 服務器上的交易模塊接收到 中交易策略發(fā)出的請求成交的時候,該模塊講其委托單規(guī)范化,然后根據(jù)預先設(shè)置好的通道地址以及賬戶信息一并發(fā)送給交易柜臺。然后當交易柜臺返回回來成交信息以后,再將這些信息反饋給 上的交易策略。 圖 托單發(fā)送接收流程 3、用戶基礎(chǔ)信息管理:用戶信息的管理包括客戶端的賬號密碼。以及此用戶的權(quán)限,這個權(quán)限可以包括他能否參與實盤交易或者能否訪問到其他用戶的策略信息等。此外,此模塊里面還需要包括用戶的股票或期貨的交易賬號的信息,這個交易賬號是指用戶在 經(jīng)濟公司那邊開戶的賬號密碼;要保存這個信息主要是交易柜臺那邊必須要先登入才能接收用戶發(fā)過來的委托單。 4、用戶交易信息管理:交易信息指的是存儲用戶當前持有的股票或是期貨合約的信息。這些信息之所以要另外保存,是因為他們是交易過程中最重要的信息。如果將這些信息丟失掉,將會造成巨大的不可知的風險。而且對于投資者來說,由于市場行情稍縱即逝,所以這些信息不能有絲毫的差錯。 5、 中的歷史數(shù)據(jù)存儲:在 上還要存儲一份數(shù)據(jù)的原因是避開網(wǎng)絡的傳輸?shù)乃俣认拗?,直接在本機內(nèi)為策略的歷史測試提供數(shù)據(jù)源。而這些數(shù)據(jù)是用戶通 過自己的需要從服務器上下載下來的。 6、策略編輯器:策略編輯器是用戶編程策略的平臺。系統(tǒng)通過提供許多固有的框架,來簡化用戶在編寫過程中的復雜度。用戶在此平臺上將自己的交易思想轉(zhuǎn)化為程序代碼,然后由編輯器來完成其他模塊的對接。 7、歷史行情回測模塊:此模塊是所有模塊中最復雜的一個。首先它需要分解成幾個子模塊,歷史數(shù)據(jù)回放、圖形界面顯示、回測報告生成。歷史數(shù)據(jù)回放是將存儲在 上面的行情數(shù)據(jù)按照實際行情順序傳輸給策略;圖形界面顯示是將策略運行過程中的一些指標信息、下單標記、 K 線數(shù)據(jù)顯示出來;回測報告生成是將策 略運行結(jié)束以后,匯總回測交易信息,并將這些信息歸類生成其他各個字段供研究員評估和分析,生成的信息包括“策略性能報告”、“績效分析圖”、“成交記錄”等。 統(tǒng)用例圖分析 第 3 章 需求分析 12 12 統(tǒng)角色定義 根據(jù)投研平臺系統(tǒng)的業(yè)務需求,系統(tǒng)將用戶分為兩類:風控人員、策略研究員。風控人員主要是對實盤運行的策略進行跟蹤,控制其資金的風險,統(tǒng)計策略的各個階段的表現(xiàn)。而策略研究員則是研究市場機會和策略的開發(fā)。所以風控人員對于投研平臺系統(tǒng)主要的使用模塊是“行情模塊”和“實盤策略運行模塊”;風控人員對于投研平臺系統(tǒng)的使用模塊 是“行情模塊”和“策略編寫模塊”。 圖 色用例圖 控人員用例分析 風控人員的使用模塊包括:行情查詢模塊、實盤策略運行監(jiān)測模塊、資金跟蹤分析模塊。行情查詢模塊對于風控人員來說主要是把握市場的極端風險的出現(xiàn)。比如某一只股票或某一個期 貨合約出現(xiàn)了漲跌停板,那么這個情況可能會導致極大的不可預測風險。那么風控人員可以根據(jù)此類情況的急緩程度來對處理方式做出一個判斷。 實盤策略運行監(jiān)測模塊對于風控人員來講,是保證每個策略每天運行的正常,比如在開盤前這些策略是否啟動,或者運行的過程中策略是否報錯而導致策略無法運行,還有就是策略的交易是否因為各種原因?qū)е挛袉螣o法正常交易。 資金跟蹤分析則是風控人員最大的職能。由于策略在測試歷史數(shù)據(jù)的過程中得出的結(jié)論是描述歷史的,對于未來真正運行的效果無法預知,所以風控人員必須跟蹤每個策略的資金曲線,一是觀察是否出 現(xiàn)了和歷史回測結(jié)果嚴重不符的情況發(fā)生,還有就是當資金出現(xiàn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年關(guān)于庫爾勒梨城建設(shè)有限公司公開選聘副總經(jīng)理的備考題庫及答案詳解1套
- 2026年山西電機制造有限公司招聘備考題庫帶答案詳解
- 2026年中國旅游集團崗位招聘備考題庫及參考答案詳解
- 2026年中建西部建設(shè)新材料科技有限公司招聘備考題庫及完整答案詳解1套
- 2026年東莞證券股份有限公司河源分公司招聘備考題庫含答案詳解
- 2026年寧波市鄞州區(qū)公立學校招聘編外員工備考題庫及完整答案詳解1套
- 2026年南昌華路建設(shè)咨詢監(jiān)理有限公司招聘備考題庫及答案詳解1套
- 2026年北京市海淀區(qū)富力桃園幼兒園招聘備考題庫及參考答案詳解一套
- 2026年嶺南國防教育基地備考題庫技術(shù)員招聘備考題庫及完整答案詳解一套
- 2026年四會市建筑安裝工程有限公司公開招聘工作人員備考題庫附答案詳解
- 現(xiàn)代密碼學(第4版)-習題參考答案
- 門診護士長工作總結(jié)匯報
- 油氣長輸管道檢查標準清單
- 幼教家長講座
- 《腦出血》課件完整版
- 華東師范大學《刑法(總論)》2023-2024學年第一學期期末試卷
- 班組長時間管理培訓
- DB11T 2000-2022 建筑工程消防施工質(zhì)量驗收規(guī)范
- DL∕T 593-2016 高壓開關(guān)設(shè)備和控制設(shè)備標準的共用技術(shù)要求
- 四川大學附屬中學新城分校高中教師招聘考試試題及答案
- 安全生產(chǎn)工作一號文件
評論
0/150
提交評論