文章最後更新時間 2020年 4月 13日
目錄
為什麼使用程式來投資股票
股票是很多人的投資工具,我想大部分人之所以選擇投資股票,不外乎是基金的報酬率相對較低且投資的其實不是公司本身而是基金管理人、期貨的槓桿高相對風險也高,造成股票是個較為折衷的方式。
而我身為程式工程師,一直很想透過程式來幫我篩選股票,但是卻完全不懂如何透過程式來抓取網路上的資料進行分析,所以起初我也是像一般人一樣,手動上網查詢資料並決定下單標的。
當時我的策略以股利為選股條件,並參考網路上的各個新聞及投資股神的建議 ( 簡單的說就是聽明牌 ) ,在 2018 年 9 月以每股 35 元購入 1 張剛除權息的聯華。
本來預期很快就會填權息,然而有在關注股市市場的人應該都記得,2018 年 10 月發生了一個規模不小的跌幅,台股從 11000 點跌到 9400 點,而聯華也不意外地跟著暴跌至每股 29 元,這導致我非常的挫折,開始考慮起要不乾脆只買金融官股及 ETF 當定存股,穩定領股息就好,也不用太擔心股價暴跌到成為壁紙。
然而今年我開始關注線上程式課程,無意間發現有程式選股的課程,便抱著「這個有用嗎?」的心情購入課程,開始了我的程式投資之路。
透過程式選股票並做歷史回測
當時我所購入的是 hahow的「用 Python 理財:打造小資族選股策略」課程,並以裡面提供的範例程式進行選股及歷史回測,說到這個歷史回測便是程式選股的重點,當你使用程式策略篩選出股票之後如何知道這個策略是有效的?這時就必須透過歷史回測來驗證這個策略在歷史上有沒有效。
課程提供了許多篩選指標來做選股,而範例程式所提供的歷史回測報酬率事實上並沒有非常好,需要使用者自己設定指標並優化策略。
起初我的策略實在差到透頂,報酬率低,甚至有許多負報酬率出現,直到我在該課程的社團發現一篇文章使用了月營收、股東權益報酬率、技術面做為策略主體,並取得了非常驚人的報酬率 (見下圖),藍色為扣除交易手續費之後的曲線,Y軸為報酬率百分比,可以見到這個策略在14年間得到400倍的報酬率,非常驚人。
雖然這個策略是有問題的,因為沒有過濾掉減資而導致的股價上升,所以才會有這麼誇張的報酬率,我便參考了他的策略之後使用技術線型過濾掉增減資並加入自己設定的一些基本面及技術面參數,並每個月換一次股,得出了這個新的報酬率曲線圖:
這個策略在15年間有150倍的報酬率,轉換成年均報酬率是40%,缺點是選股數量較多,平均每月要購買7檔股票,需要的資金至少要100萬以上才能完整執行這個策略,對我這種投資新手而言比較不實際了。
不過我還是想嘗試這個策略在實際上是否有用,所以我3月在股市上實際買入該策略選出的2檔股票,並取得非常不錯的報酬:
圖中的中間兩檔為我在3月購入的股票,投入成本約9萬,目前已有1.4萬的報酬,於兩個月內的報酬率為15%,非常驚人。
程式選股真的這麼厲害,完全不會跌?
在我改良這個策略之前,我曾實際照著原本網友提供的策略下過兩次單,兩隻都非常糟糕,一共虧了 9000 元之多,所以程式選股完全不會虧錢?那是不可能的,就算在我改良過策略之後,這個策略在歷史回測上還是有經歷過非常可觀的大跌,但是在這個可觀的大跌之後還是能有這麼好的報酬率,我覺得不用太擔心股票漲跌,跟著程式策略買即可。
所以程式交易有沒有效,就目前看來是有效的,但是還是建議將眼光放長,目前我的程式交易也才進行兩個月,還有很多指標可以優化,也希望把程式策略應用在更多金融商品如期貨、基金、選擇權等。
延伸閱讀 => 15 年年均報酬率 45% 的策略!? 淺談 Python 程式選股心得
如何開始學習程式選股?
我一共上了5、6個程式投資課程,其中不只有台股的,也有國際市場,金融商品有期貨、股票、基金等,不過目前打算先將台股的部分操作好即可。
目前 Python 選股的部分,我購買並推薦的有以下三堂:
用 Python 理財:打造小資族選股策略
這是一堂以 Python 選股的課程,課程會教你從 Python 這個程式語言開始認識起,並一路教你網頁爬蟲、數據整理、程式選股等相關知識,最棒的是課程直接提供你一個能夠每天更新的數據資料庫,就算不太會寫程式也可以使用這個資料庫加上一點點的 Python 基礎就可以選股,非常方便。
這也是我上的第一堂程式選股課程,可以點下面的按鈕看詳細的課程介紹 ↓
用 Python 理財:打造自己的 AI 股票理專
和 «用 Python 理財:打造小資族選股策略» 是同一位老師,但是這門課比較屬於進階的課程。
這門課會提供股票的上市上櫃財務資料庫,並使用機器學習及深度學習進行資料重要性的分析,又分為技術面及基本面。
這門課基本上是 «用 Python 理財:打造小資族選股策略» 的進階,如果你還沒接觸過程式投資,甚至連寫程式經驗都沒有的話,建議可以先不買這門課程, «用 Python 理財:打造小資族選股策略» 較適合你。
但如果你已經有了基本的程式撰寫經驗,甚至擁有基本的機器學習及深度學習經驗,這門課應該會非常適合你!
用 Python 打造自己的股票小秘書
這門課程主要是透過 Python 及 linebot 來建立一個可以通知自己股票進出場時機的小秘書,我身為上班族,白天還是得花時間及心思在工作上,有時程式碼寫一寫,趁著休息時間打開下單軟體才發現股票居然跌停,這時要出場就得面對虧損了。
這也是我買了這門課程的主要原因,這門課可以教你如何透過 line 及 Python 程式串接來通知股票的買點及賣點,可以省下我許多看盤時間。
其他還有非常多的課程,例如透過 Multichart 軟體來程式選股的課程、透過 Python 來篩選期貨買賣點的課程、透過 Excel VBA 來選股及篩選期貨買賣點的課程,但因為我目前有許多課程還沒上完,沒辦法提供心得給各位,之後會再繼續更新我的上課心得來跟大家分享!
如果想了解 Python 量化程式交易,可以到這篇文章,裡面有我整理的推薦學習資源 ↓
Python 程式量化投資學習資源總整理 (股票、期貨、基金、選擇權、虛擬貨幣)
祝大家能在投資市場取得好成績!
喜歡這篇文章歡迎在下方幫我按5個Like,讓我獲得一些回饋來支持我寫出更多好文章,如果有問題或是對文章有建議歡迎聯絡我喔 : )
您好,我是「小資族選股策略」的課程老師
謝謝您的分享!很開心您使用了程式後,有不錯的結果!
是啦~考量到課程人數太多,所以我將策略的績效調整很寬鬆
希望大家可以自行調整看看XD
找出屬於自己的最佳策略!
感謝老師的留言!
這門課真的幫助了我很多,讓我投資有不錯的收益。
這篇文章已經是去年的文章了,今年因為工作較忙沒更新程式投資收益,不過還是有不錯的成績,今年該策略自 1/11 回測至今有 86% 的報酬率,會在近期更新到部落格上。
另外也恭喜老師開了新的課程,我會繼續吸收學習,向老師的研究精神看齊!