跳至主要內容
台股研究 約 3 分鐘閱讀

Python新手教學(Part 0):用 Python 投資?你想不到的好處!

為什麼要用 Python 投資?比較 MT4、XQ、Multicharts 等商用回測軟體,發現要嘛要付費、要嘛程式碼複雜,要嘛自由度不足。Python 量化回測免費開源、語法簡潔,還能搭配機器學習與 AI 選股演算法,是新手踏入程式交易、自製 Python 回測框架的最佳起點。

想學程式投資卻不知該選哪套軟體?比較 MT4、XQ、Multicharts 與 Python,告訴你為什麼 Python 是現在最佳選擇。

你為什麼要用 Python 投資?Python 投資有什麼好處?處在訊息萬千的時代中,如何不被淘汰?雖然本 blog 都一直在宣揚 python,但是我們似乎漏掉了最重要的一點,「為何要用 Python 來投資」?那今天就讓我娓娓道來吧!

Python 投資好處主題封面圖

其實在 2019 年

程式化投資並不新奇,已經有各種解決方案,MT4、XQ、Multicharts…

現在市面上已經充斥著很多的回測或量化系統了,像是以外匯為主的 MT4、以股票為主的 XQ、以期貨為主的 Multicharts,然而這些系統雖然有其優點,然而我還是不會去使用它們,最主要的原因是

雖然使用上輕鬆簡單,然而大部分是必須要付費的!

以台灣最火紅的 Multicharts 和 XQ 全球贏家來說,最便宜的券商版,每個月需要額外花費 1 千元,要是你的總投資金額只有 10 萬,那每個月相當於損失 1%的金額喔!也就是一年下來 12%就白白花費了。

MT4 不用錢呀,但程式碼複雜

MT4 算是裡面非常佛心的軟體,下載歷史數據完全免費,而且還可以回測,但是缺點就是程式碼非常複雜,光是寫一個簡單的策略,就可以耗盡一個下午了。

這些軟體雖然都是寫代碼,但是有一個非常大的缺點,就是

商用軟體自由度不夠

假如今天想要搭建機器學習的策略,那使用上述付費軟體其實是非常困難的,因為程式都已經包裝好了,可以用的語法就那些,沒辦法跟上近期華麗展開的 AI 產業。

另外,這些軟體在不同的商品上,各有所長,例如 XQ 針對股票、Multicharts 針對期貨。但是缺乏一個更上層的資金控管系統,將所有的部位做一個有效的規劃。將多個策略整合,是有難度的。

究竟如何才能「不用花錢」、並享有「最新演算法」、又有最高的「自由度」呢?

Python 與 R 程式語言崛起

由於機器學習、資料科學的崛起,Python 與 R 是最大的受惠者!為何我覺得傳統的金融回測軟體幾乎都可以用 Python 與 R 來取代,原因在於:

程式碼簡單、功能強大

傳統開源的程式語言,如 C++、Java,針對大量金融數據的函示庫比較少,通常得徒手寫,花非常多的時間。然而 Python 與 R 就是專門處理各種大量的資料,可以短短幾行代碼,就完成 C++ 需要數百行的資料處理代碼。

於是 Python 與 R 在資料的處理上,雖然可能沒有比 Multicharts 或 XQ 那麼簡單一兩行就撰寫策略,不過也相差不遠了(至少我自己的回測軟體已經化簡到到不相上下)。

免費且開源

每個月省 1000 元,累積起來也不少!Python 與 R 除了程式語言是免費的以外,還有非常多機器學習演算法,也都是免費的!想要跑回測嗎?只要上網搜尋「backtest python github」,就可以撈到一堆開源回測項目來搭建!另外 Python 與 R 都支援 dll 檔案,所以與券商的串接基本上是沒有問題的。 (Mac 心碎)

不只拿來交易

學了 XQ、Multichart、MT4,就是拿來寫賺錢程式,但對於我來說,Python 除了拿來投資,還有非常多的功能,不論是架設網站、平常寫一些小工具,或是求職,學會了 Python 或 R 絕對是只有加分不會扣分。

特別是 Python 已經是連續好幾年都是最熱門程式語言了,為何它不可撼動?因為大部分機器學習研究、產品研發,都會使用 Python 進行,簡單、快速、有效。R 語言也不錯,有很多學術單位、金融研究單位也會使用 R 語言。不過以趨勢的熱門程度,以及 package 的豐富程度,我個人還是偏愛使用 Python 就是了。

新的一年不知道學什麼?就來學 Python 吧! 假如你喜歡做研究,而且覺得寫程式除了賺錢外,對你來說還有別的樂趣,那真的可以好好研究一下 Python 了!

這一系列文章將帶你從 0 開始,使用 Python 做投資! 下一單元,我們就來爬取股價資料吧!

這一系列是我們影音課程的化簡版, 假如對此教程有興趣,歡迎點選下方影音課程,會豐富到炸裂喔~

FinLab AI

想建立自己的策略?

用自然語言描述你的選股想法,AI 自動驗證、回測、給你答案

免費開始