01.如何資料獲取
對於資料的獲取,我們抓取的是非常著名的天天基金網的基金資訊,基本上買基金的小夥伴都知道這個網站,如下圖所示:
上圖中,可以看到,在基金的頁面中,根據基金的投資類別不同,有很多的型別,這裡我們抓取股票型、混合型、債券型和指數型基金作為分析資料,每一個型別都抓取200個基金。我們以股票型的基金資訊抓取為例,來看一下如何抓取資料。
02.獲取fcode和姓名
對於每一個基金資料而言,都有自己唯一的基金程式碼(fcode),也有自己的基金簡稱和手續費等資訊。比如我們要提取200個股票型基金的基金程式碼、簡稱和手續費等資訊,程式示意如下:
上述的程式中,由於基金的內容都是非常嚴格的,不存在某些基金資料存在缺損的情況,因此可以透過三行程式碼直接進行資料的抓取,而不必利用try...except語句來防止程式的意外出錯。抓取到的資訊如下:
https://uni-fundts.1234567.com.cn/dataapi/fund/FundVPageAcc?CODE=fcode&FCODE=fcode&RANGE=y&CustomerNo=&UserId=&Uid=&CToken=&UToken=&MobileKey=&zone=&DATES=&POINTCOUNT=&deviceid=5C1164BA-3D4A-4953-A488-00E47222D4BB&plat=Iphone&AppType=Iphone&product=Fund&version=6.2.5&Serverversion=6.2.5&appversion=6.2.5
上述的資料連線中,我們需要關注的是CODE,FCODE和RANGE這三個數值。其中,CODE和FCODE表示的是基金的程式碼,而RANGE則表示我們要獲取最近多少天的資料,y表示的是最近一個月,3y表示最近三個月。
根據資料介面,我們可以獲取得到每個基金的最近一段時間的漲跌資訊,程式如下所示:
程式中,首先獲取了不同型別基金的程式碼和名字,然後根據構造的資料介面獲取不同基金的漲跌 資訊,最後將資料按照基金的名字寫入到本地的檔案中。
02.資料分析
1).基金近一個月漲跌情況
對於漲跌情況的判斷,可以直觀的看出最近一支基金的走勢。程式如下圖所示。
程式中,首先根據各個股票型基金的漲跌情況來設定柱狀圖的顏色,然後利用pyecharts中的柱狀圖來視覺化200支股票基金的近一個月漲跌情況,如下圖所示:
可以看到透過對於近一個月基金漲跌的視覺化,可以很全面的看出哪些基金最近的上漲勢頭迅猛,而哪一些的基金勢頭比較衰退。
2).基金走勢對比
當然有的小夥伴希望基金能夠比較穩定,波動幅度不要太大,這裡,我們可以透過基金的一段時間內的漲跌情況來看一下基金的變化情況,程式如下圖所示。
程式首先從所有的基金中任意挑選兩支作為對比基金,然後透過Line的線型圖進行區域面積的對比,結果如下圖所示。
可以看到,上述的兩隻基金對比中,綠色線的基金在穩定性上明顯的是優於紅色線的基金。大家可以透過這樣的方式來進行不同基金的對比分析。
3.漲跌動態視覺化
下面,我們透過flourish來透過動態圖的方式,更加直觀的來看一下基金的漲跌走勢。程式如下圖所示。
上圖的程式中,我們隨機選擇八支基金並提取它們的最近一個月的漲跌走勢數值,儲存到csv檔案中,接下來我們將資料上傳到flourish網頁,並進行結果的視覺化展示,如下圖所示:
可以看到八支基金的漲跌情況隨著時間的變化而不斷的發生著變化。