跳至主要内容

Google Colab(Colaboratory) 簡易教學

· 6 分鐘閱讀
Eric Cheng

先談一下為什麼要介紹 Colab,如果有在追蹤這個網站的話,裏面有很多回測的文章,雖然老哈本身是 Java 的工程師,但是不得不說在 FinTech 這一塊 Python 的資源實在比 Java 多太多了, 以 Python 的開發工具,其實最多人使用的應該是 Anaconda,但 Anaconda 相對複雜,如果經常在寫 Python,花點時間把開發環境安裝起來是理所當然的, 但如果只是個部落格的讀者,想實際跑一下驗證部落格寫的內容,還要把整個 Python 開發環境安裝起來就有點太強人所難了

Google Colab

google colab 是什麼?簡單的說,它是 google 提供的一個不需要安裝開發環境,僅需要有 google 帳號,用瀏覽器就可以直接編寫 Python 程式碼的線上編輯器, 此外它將程式直接儲存在雲端硬碟,可以分享給其他人,直接執行程式碼

這篇文章會寫一個最簡單的示範,如何用 ffn 捉取 SPY 和 TLT 的歷史股價,然後繪出在這個部落格常見的走勢圖和最大虧損圖和統計報表

Google Colab 官網:網址

如果你第一次點進這個網址的話,會先要求用 google 帳號登入,然後應該會看到這個畫面 google colab 1

點進「歡迎使用 Colaboratory」,就會有一些說明怎麼使用了

新增筆記本

首先我們先選擇「新增筆記本」 google colab 2

然後無腦的將【如何使用Python取得歷史股價,簡介yfinance、ffn、FinMind】中 ffn 相關的程式複製過來,將檔名改為 ffn-example.ipynb

import ffn
# ffn 取得股價
prices = ffn.get('spy, tlt', start='2002-01-01')

print(prices)

# rebase 股價繪圖
%matplotlib inline
prices.rebase().plot()

# Max Drawdown 最大虧損
prices.to_drawdown_series().plot()

# 統計報表
stats = prices.calc_stats()
stats.display()

print('spy -------')
print(stats['spy'].display_monthly_returns())
print('tlt -------')
print(stats['tlt'].display_monthly_returns())

這裏唯一要注意的是在程式開頭要增加像 !pip install xxxx的程式,如下

如果是在 local 電腦開發,通常會先安裝好相關的套件,在 colab 只好在程式開頭做安裝的動作

!pip install ffn
!pip install --upgrade pandas
!pip install --upgrade pandas-datareader

如何執行

如果只需要執行某一區塊的程式,點選程式區塊就可以執行 google colab 3

如果是要執行全部程式,可以點選「執行階段」,然後點選「全部執行」或「重新啟動並執行所有儲存格」即可 google colab 4

如何分享程式

我知道看這個部落格的朋友,不見得都會寫程式,所以主要的還是要如何分享,上方 menu 有個「共用」的選項 google colab 5

將存取權改為「知道連結的使用者」 google colab 6

大家可以試試看這個連結https://colab.research.google.com/drive/1zCKjyZXWgL5TkYuiBjUPWVNJ8C9Z44nr?usp=sharing,就是剛才那支程式

如何使用分享的程式

正常來說,如果你不需要更改原來的程式碼,直接執行就可以,但如果需要調整,你會發現會告訴你權限不足

google colab 7

這是理所當然的,因為程式儲存在雲端,作者一定不會允許其他人隨便對程式做修改,所以如果要修改程式,就是點選圖中「在雲端硬碟中儲存複本」的 button,點選後在你的 google 雲端硬碟就可以看到複製原始程式的副本,複製後的程式屬於你,你就可以隨意的修改這支程式,不用擔心影響到其他人了

google colab 8

結論

好像和其他網站的介紹 Google Colab 有點不太一樣.. XD

算是針對這個部落格的使用者寫的介紹吧,我會慢慢整理一些可以分享的程式(勿催稿,老哈是普通上班族,花在網站的時間有限),希望加上 Colab 後可以讓這個網站愈來愈完整


加入fb粉絲團!第一時間取得網站更新訊息

版權聲明

,轉載請註明出處
本文連結: https://havocfuture.tw/blog/google-colab