先談一下為什麼要用Python程式語言進行股票技術分析。會選用Python程式語言重點還是在學習容易、套件豐富、社群資源充足,但還有一個原因在於這是人工智慧深度學習領域中最重要的語言。關於深度學習相關部份我會放在整個賽程的最後再來討論,並且深度學習的實作將會於Google Colab上進行。
這次參賽的程式碼都會以Jupyter Notebook方式提供,環境設定的部分在坊間的書籍與課程都有完整的介紹與說明,之前的鐵人賽中很多前輩先進也有精闢的文章可供參考;因此針對這方面也就不再多做著墨,再麻煩各位自行尋找相關資源。
再下來就會討論本次參賽過程會用到那些Python套件,各套件安裝方式在網際網路上都有資訊。主要用到的套件有:
另外有人可能會選擇ta套件來取代talib套件,或是用plotly套件來繪製互動K線圖。但對我來說繪製互動K線圖較沒有必要,因為在看盤軟體上操作會更加容易且完整。
在Day1時說了,本次參賽內容是跟股票老師學習「技術分析」過程的整理。因此股票資料來源就會來自看盤軟體。我個人使用的看盤軟體是「永豐金證券 好神通PLUS」,這是嘉實系統券商版。此外也可以選擇其他券商的嘉實系統版本(如股票老師用的是華南e指發)或是XQ全球贏家(個人版)免費程式。
當然還有其他股票資料來源。如爬蟲方式在坊間書籍與課程都有描述,並且於之前的鐵人賽中很多前輩先進也有精闢的文章在說明這種方式。另外透過存取開源資料庫(如FinMind)也可以取得股票資料。