☆ ★寫出你的專屬指標★☆
現職程式交易員帶你用python寫出本書三大核心
獲取台灣股市資料X小幫手每日自動監控市場X透過回測打造最佳策略
當別人的策略10秒鐘完成回測10年的資料時,你是否仍辛苦的一年一年人工驗證自己的策略?
當別人有程式在替他監控市場而有空邊喝咖啡邊吃下午茶時,你是否還在辛苦盯盤,甚至荒廢本業?
近年來程式充斥、席捲了整個市場,學習程式不僅是為了因應就業潮流,也是讓您在各個場域、各種需求下都能有更適合自己的一套作業方式!
比起其他好用又方便的自動交易軟體,Python擁有更高度的自由化;比起雖然專業且支援廣泛卻要價不斐的軟體Bloomberg,Python是更容易入手的選擇。
學會一套Python語言讓你可以自由地獲取你想要的資料、自由地寫出屬於你的專屬指標。
☛讀完本書,您能熟悉軟體的執行方式、基本套件操作及函數:
✔基本觀念:變數、print 等
✔了解常用資料結構概念及常用基本資料類型
✔迴圈、條件式及控制
✔運算子:+ - * / 以及其他概念
✔了解Python規定縮排規則及import使用套件基礎操作
✔熟悉pip與def概念及語法
✔熟練cmd、vscode及Github
✔實際操作爬蟲,了解pandas套件、BeautifulSoup與一些常使用的資料清洗方法
✔學會yfinance、ta套件及deal_holiday.py程式,並學會設置windows排程
✔try / except 的基本概念及應用
✔traceback 追蹤錯誤訊息
✔numpy 的各種基礎統計方法:max、min、std、mean、percentile等
✔熟悉pyfolio用法,熟悉backtrader框架的入門與應用
☛適合讀者
✪具備基本Python基礎的讀者
✪對程式交易無經驗或小有經驗者
✪想更輕鬆獲取股市交易資訊的讀者 作者
張峮瑋
現與交易高手合作開發自動交易、市場監控程式,並積極研究機器學習/深度學習用於真實交易。
★現專職程式交易設計
★畢業於東吳大學巨量資料管理學院 (現資料科學系)
★曾任野村投信(NOMURA) IT部門實習生,並曾主導AI導入專案
★曾任東吳大學NLP實驗室成員(nlp.bigdata.scu.edu.tw)
★曾任亞洲指標網路行銷顧問公司實習生
★曾於IOH分享個人講座
★曾獲中華郵政第一屆大數據競賽,全國第二名
★曾獲日盛黑客松2018人工智慧解盤,晉級六強決賽
★曾有多個接案經歷,包括網站開發、資料處理流程設計、爬蟲開發等專案
歡迎你透過信箱聯繫我: arleigh668@gmail.com
目錄
01 環境準備—順便談一些開發小習慣
1.1 安裝Python
1.2 pip 套件管理
1.3 準備編輯器
1.4 開發小習慣 – 虛擬環境
1.5 本書的程式 (Github)
02 資料取得— 資料就是財富
2.1 網路爬蟲簡介
2.2 台股列表蟲
2.3 報價取得蟲
2.4 新聞取得蟲
2.5 證交所三大法人買賣超日報表蟲
03 股市小幫手系列—股市小幫手,股票池篩選與入門
3.1 yfinance歷史資料取得
3.2 ta & pandas產製各種指標
3.3 畫出K棒與基礎視覺化方法
3.4 小幫手信件通知
3.5 密碼保護 – 拒絕將重要資訊寫在程式中
3.6 營業日判斷
3.7 小幫手系列1 - 跟著法人走
3.8 小幫手系列2 - 配息高( 現金殖利率)、股價低
3.9 小幫手系列3 – 暴跌中的股票+ 消息面
3.10 讓程式自動為你工作– 善用windows排程
04 指標型策略撰寫與效益評估
4.1 策略分析工具 - pyfolio
4.2 回測框架 - backtrader
4.3 指標型策略1 – 5ma穿越60ma 進場,跌破60ma出場
4.4 指標型策略2 – 追高進場與加碼,固定停損停利
4.5 指標型策略3 – macd翻紅、ma齊上揚多條件進場
05 聊聊AI、大數據與金融
5.1 深度學習、新聞、股市
5.2 野村實習期間
5.3 做為程式交易工作者
序/導讀
在過去,大家可能會認為程式交易是一個高大上的東西,我可以很有信心地告訴你,在技術上你要利用程式完成你腦中的交易策略並不是一件難事,最難的絕對是賺錢的策略以及你在撰寫程式交易時的細心度及反覆驗證。而且在現在這個年代,程式單早已大肆興起,因為人的精力有限、速度有限,程式單則24 小時全程為你工作,速度絕對是手單比不上的。現今有許多產品都具備夜盤,包括基本的大小台指,甚至你如果想玩國外的商品,你就得半夜盯盤,太耗費精神了,當你研究出一套策略之後,透過回測確立可行,你就可以用程式去實現它,並且讓他24 小時為你工作,你則可以去研究其他策略,或者是專注在你的主業上,這就是程式交易的魅力所在。
當然了,說上面這些並不是非要你玩程式交易,畢竟這跟每個人的想法跟接受度有關,有很多人其實不能放心程式拿他的錢做自動交易,所以即使有了程式在幫他交易,他仍然會不斷的干預,進而影響到程式真正的獲利。無論你玩不玩程式交易,有一件事情都是同等重要,那就是回測,回測你的想法是否能夠賺錢,因此回測會是本書的核心之一。
我的想法是我認為入門的同學還不太適合太早開始做自動交易的程式,而且說真的如上所提及,大部分的人對於真正的程式自動交易還是存在許多擔憂與疑慮,所以本書的核心之一並不是以開發自動交易的程式為主,而是以開發小幫手系列為主,透過程式替你監控市場,再由你自己決定是否要入場。當然其實你的小幫手開發出來後,要轉成程式交易也並非難事,因為你的小幫手勢必是有條件的,只是當條件符合時是發出通知,把它改成下單的程式就可以了,不過這中間也牽涉到很多細節,例如現金、庫存的判定;程式運行頻率的設置等等,這些就是比較進階的事情了。
總的來說,這本書有三個核心,我認為是做程式交易入門常常應用到的三個層面,我希望你對於這三個層面的處理有基礎的認識。除了三個核心之外,我在最後一個章節設計了比較輕鬆,不談寫程式的環節,我想跟讀者聊聊自己對於AI 的相關應用以及我們現在的工作大致情況。
三個核心如下:
1. 資料的取得
2. 掃描股票市場的小幫手輔助系列
3. 回測框架驗證你的策略
最後很感激能夠獲得出版此書的機會,也希望能藉由此書跟正在閱讀的你交個朋友,我在之後的章節有提及,在Github 上我有專門為此書開一個頁面,有任何問題無論是不是書中的問題都可以提出來討論,我會盡我所知的給予建議,這本書只是帶你用python 走進台股、程式交易的世界,只是冰山一角,如果你想要更精進,市面上還有許多非常進階的python 相關金融統計分析的書,我很建議你也買來看一看,亦或是像我一樣,我自知金融知識不是很專業,所以我跟一位在交易的領域打滾多年高手合作,也是我現在的老闆,我負責以python 或是其他工具軟體實現他的策略,而他負責構思策略,並且我也常常在他那?學到許多金融知識。我在本書中介紹給你的就是我們日常作業中對於台股的應用。
歡迎你加入這個領域,我們所有人加入這個領域,應該都不是單純為了研究、為了開心吧,我們就是想要賺錢,賺錢才會讓我們開心,因此在這裡預祝你旗開得勝,賺大錢!