>Date:2024.04.24
>Keywords:
在量化投資(證券和比特幣)開源專案裡,全球star數排名前10位裡面,有7個是Python實現的。從資料獲取到策略回測再到交易,覆蓋了整個業務鏈。
而全球註冊使用者數最多的商業量化平臺Uqer優礦,也同樣是基於Python實現和提供服務的。國內後來的其他量化平臺,例如ricequant和joinquant,也主推Python環境。
#### anaconda
[Anaconda](https://www.anaconda.com/download-success),這是python的一個科學計算環境,它不僅把python需要用到的科學計算資料分析的“模組包”包含在內,還直接內嵌安裝了了python和Ipython。也就是說,你安裝了它,就不需要在單獨安裝python和相關模組了。
(python+pandas+lxml)
使用spyder
```
左邊是負責程式編寫
import numpy as np
sh600340=np.array([38.60,39.87,37.70,38.43])
print(sh600340)
console:輸出陣列
還可以輸入sh600340[[1]],查詢某項資料
右上方會對程式中產生的各種變數、陣列等要素進行羅列
variable explorer:雙擊sh600340這個變數,則會跳出來他的具體內容。
```
使用pandas
>Pandas也是一個科學運算包,它是建立在Numpy之上的,但是Pandas最大的特點是可以建立更靈活的資料結構,在這個資料結構中,不僅有資料,還有可編輯的索引值。
DataFrame實質上就是一個多維的Series,只不過這些Series共用了一個index而已。
#### 工具
主要得益於有如下框架和工具的支援:
**Numpy**:底層基於C實現的科學計算包
-具有強大的N維陣列物件Array
-具有資料廣播功能的函式庫
-具有完整的線性代數和隨機數生成函式
**SciPy**:開源演算法和數學工具包
-最最佳化線性代數、積分、插值、特殊函式
-快速傅立葉變換
-訊號處理和影像處理
-常微分方程求解
-其他科學與工程中常用的計算
其功能與Matlab和Scilab等類似。
**Pandas**:起源於AQR的資料處理包,具有金融資料分析基因
-基於Series、DataFrame和Pannel多維表結構資料
-資料自動對齊功能
-資料清洗和計算功能
-時間序列資料快速處理功能
**Matplotlib**:基於Python的資料繪圖包,能夠繪製出各類豐富的圖形和報表。另外,Python在機器學習領域的應用也越來越多,其中的開源的專案包括了scikit-learn、Theano、Orange等。
#### 書籍
- 《Python for Data Analysis》
- 《Python for Finance》
- 《Mastering Python for Finance》
- 《Maching Learning in Action》
#### 步驟
從本地csv格式的檔案中匯入股票資料
計算
將計算好的資料輸出到csv檔案中