董建華
摘要:隨著中國證券業(yè)的快速發(fā)展,無論是上市公司規(guī)模、日交易量或交易渠道都比以前要復(fù)雜得多。如何才能快速、準(zhǔn)確地匯總和提煉出有價值的信息對于證券交易決策顯得尤為重要。滬港通資金流向可視化系統(tǒng)通過抓取滬港通賬戶交易滬深市場股票的大量數(shù)據(jù)來分析外資投資的熱點(diǎn)股票與熱點(diǎn)行業(yè),為投資者研究和學(xué)習(xí)成熟市場投資者的交易行為提供便利。
關(guān)鍵詞:Django;大數(shù)據(jù);滬港通;Python;軟件工程
中圖分類號:TP311? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)27-0078-03
Abstract: With the rapid development of China's securities industry, the scale of listed companies, daily trading volume or trading channels are much more complicated than before. How to quickly and accurately summarize and extract valuable information is particularly important for securities trading decision-making. The visualization system of capital flow of Shanghai-Hong Kong Stock Connect analyzes hot stocks and hot industries for foreign investment by capturing a large amount of data on the Shanghai-Hong Kong Stock Connect account trading stocks in the Shanghai and Shenzhen markets, and provides convenience for investors to study and learn the trading behavior of investors in a mature market.
Key words: Django; Big Data; Shanghai-Hong Kong Stock Connect; Python; Software Engineering
1 背景
5月28日,2021年中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會在貴陽落幕,該博覽會于2015年創(chuàng)辦,2017年正式升級為國家級博覽會,幾年時間已經(jīng)成為大數(shù)據(jù)發(fā)展的風(fēng)向標(biāo)和國際性、專業(yè)性平臺。從日常生活來看,網(wǎng)絡(luò)購物、智慧交通、疫情防控等背后都離不開大數(shù)據(jù)的支撐,大數(shù)據(jù)已經(jīng)融入我們生活的方方面面。2019在杭州舉行的云棲大會上,阿里巴巴董事局主席兼CEO張勇在演講時曾說“數(shù)字經(jīng)濟(jì)時代大數(shù)據(jù)是我們的石油”。
據(jù)中國證券登記結(jié)算有限責(zé)任公司官網(wǎng)的結(jié)算數(shù)據(jù)顯示,截至2021年4月證券市場自然人投資者數(shù)量已經(jīng)超過1.85億,可想而知這個龐大的市場背后每天會產(chǎn)生多少數(shù)據(jù)。這么龐大的數(shù)據(jù),人工分析肯定是不可能的。現(xiàn)如今大數(shù)據(jù)的快速發(fā)展,為我們提供了可行的技術(shù)手段。在這個技術(shù)大爆炸的時代,唯有以變應(yīng)變,大數(shù)據(jù)對證券行業(yè)變得越來越重要[1]。
本系統(tǒng)正是在此背景下開發(fā),利用Django框架實(shí)現(xiàn)了滬港通交易數(shù)據(jù)的爬取、分析與可視化。通過分析滬深證券市場滬港通資金的流入流出情況,分析這些成熟市場投資者的交易行為,找出其投資的熱點(diǎn)公司以及熱點(diǎn)行業(yè),方便投資人學(xué)習(xí)與研究。隨著外資資金的持續(xù)流入,外資對中國市場的影響力也在不斷攀升,及時了解其投資動向就變得越來越重要。
2 需求分析
如圖1系統(tǒng)用例圖模型[2]所示,該系統(tǒng)主要分?jǐn)?shù)據(jù)爬取、參數(shù)修改、數(shù)據(jù)分析與可視化三部分:
1) 數(shù)據(jù)爬?。号廊弁ㄙY金在滬深股市的交易數(shù)據(jù),用于分析滬港通資金交易行為。
2)參數(shù)修改:
修改比重區(qū)間:比如限制只對滬港通資金持股達(dá)到2%以上且5%以內(nèi)的公司進(jìn)行分析。
修改分析周期:比如以日為單位還是5日為單位進(jìn)行分析。
修改公司最大數(shù)目:即取排名靠前的多少家公司可視化。
修改行業(yè)最大數(shù)目:即取排名靠前的多少個行業(yè)可視化。
3) 數(shù)據(jù)分析與可視化:根據(jù)用戶參數(shù)設(shè)置,基于滬港通資金對公司股份的增持加速度對公司進(jìn)行熱度排名;基于滬港通資金持有的各行業(yè)的總市值增加幅度對行業(yè)進(jìn)行熱度排名;基于上述兩項(xiàng)的綜合分析對雙熱點(diǎn)公司即排名靠前且所屬行業(yè)排名也靠前的公司予以特別標(biāo)記。
3 系統(tǒng)設(shè)計(jì)
本部分從工具與環(huán)境、系統(tǒng)體系結(jié)構(gòu)、系統(tǒng)模塊結(jié)構(gòu)、數(shù)據(jù)庫設(shè)計(jì)四個方面分別描述。
3.1 工具與環(huán)境
JetBrains PyCharm 2018.2.3 x64:支持Python編程的集成開發(fā)工具。
Django-3.2.3:支持Web應(yīng)用開發(fā)的分層框架;通過ORM(對象關(guān)系映射)技術(shù)可以直接使用類對象操作數(shù)據(jù)庫,不需要使用SQL編程。
mysql-8.0.25-winx64:數(shù)據(jù)庫管理系統(tǒng),負(fù)責(zé)磁盤數(shù)據(jù)的管理。
Selenium-3.141.0:測試Web應(yīng)用程序的自動化工具,模擬人工瀏覽器訪問,能夠爬取靜態(tài)頁面和動態(tài)頁面的數(shù)據(jù);能方便地模擬點(diǎn)擊下一頁動作,抓取多頁內(nèi)容。
apscheduler-3.7.0:全稱Advanced Python Scheduler,用于定時任務(wù)調(diào)度。