backtrader的FileNotFoundError看起來是有一段小段時間都未被官方修復,因此如果您看到此Error,請首先嘗試書中4.2章節,4-48頁的backtrader的可能問題之一。
masterTalk平台線上課程 - Python全方位期貨課程 - 從基礎、爬蟲、回測、Line提醒到AI應用
最近有幸受邀在mastertalk上開設線上課程,對於看完本書股票應用的同學,如果對期貨這個領域有興趣,歡迎參考。
我們會將書上的部分技術如何應用在期貨上做出教學,如backtrader。並且實際的應用一些深度學習、機器學習的模型用於價格、漲跌預測。 (當然如果您只是一些期貨應用的小問題,您可以提出issue,我們可以來聊聊,或者我可以在另一篇進階補充中特別說明。此課程純推廣。)
新版的Yahoo新聞爬蟲請參考yahoo_news_2.py
Yahoo股市的網站看起來經歷了一場巨大的更新。
很可惜我三四年前爬新聞到撰寫此書時都沒有什麼會影響到程式的更新,所以我認為他算是教學的穩定標的。
不過最近有一波巨大的更新,因此2.4章節(頁數2.49)開始的爬取Yahoo新聞的環節以及3.9章節(3-148)有使用到新聞的部分失效,但我還是希望您能夠看過內容,大致了解一下舊版的網站的爬蟲過程
除網站的tag變更,風格大幅改變之外,我認為在技術上影響最大的在於原本是頁數,現在變成滾動式下拉才會有新聞出來。
如果要爬取完整新聞,在技術上來說我認為難度就提升了一個檔次,變得不太適合初學者爬蟲的標的。
因為滾動式網頁通常解法就是要用Selenium瀏覽器模擬滾動,然後邊滾邊收集新聞。
我初步測試過,這個新式網頁是可以滾到底的,滾到1個月前的新聞。
如果大家對Selenium有興趣可以在issue中提出,如果人數有個大概三四個,大約一兩周我會生出一個範例(抱歉還有正職工作要做,只能用零碎時間開發)。
不過如果是較基本的應用,倒是挺容易的。 原則上較初階的設計方式是這樣,網頁若直接爬取,大約可獲得18-21篇左右的新聞。 因此在設計上初階的方法就是我們將舊的新聞爬蟲的頁數改為想要獲得頭幾篇新聞。 例如舊的傳入2代表我想要2頁新聞,新的傳入2則代表我只看最新的兩篇新聞。 這樣的設計對初學者來說是更加友善的。 如果您要正式使用,請記得之後章節的utility.py通用那一包的Yahoo新聞的函式要記得替換。 因為設計上較為倉促,有任何bug或者是您希望有任何更活潑的設計,都歡迎提出來大家一起討論研究!感謝您的體諒!
我會在另一個地方不定時的分享一些書中沒有說到,但我們有在使用的其他技術。
如果您閱讀完此書,具備一些基本的了解,可以來這裡看看。有任何問題歡迎提出issue或是透過信箱聯繫我。
https://github.com/arleigh418/python-and-Taiwan-stock-market-Advanced
檔案名稱 | 對照章節 |
Trading_Strategy_EX/Chapter2/stock_list.py | 2.2 |
Trading_Strategy_EX/Chapter2/yahoo_price.py | 2.3 |
Trading Strategy_EX/Chapter2/yahoo_news.py (因網站更新爬蟲失效) Trading Strategy_EX/Chapter2/yahoo_news_2.py (因應新網站的新爬蟲) |
2.4 |
Trading_Strategy_EX/Chapter2/TWSE.py | 2.5 |
Trading_Strategy_EX/Chapter3/yfinance_example.py | 3.1 |
Trading_Strategy_EX/Chapter3/pd_example.py Trading_Strategy_EX/Chapter3/ta_example.py Trading_Strategy_EX/Chapter3/mine_ta.py |
3.2 |
Trading_Strategy_EX/Chapter3/generate_picture_example.py | 3.3 |
Trading_Strategy_EX/Chapter3/smtp.py | 3.4 |
Trading_Strategy_EX/Chapter3/smtp2.py Trading_Strategy_EX/Chapter3/AES_Encryption/ |
3.5 |
Trading_Strategy_EX/Chapter3/is_open.py Trading_Strategy_EX/Chapter3/deal_holiday.py |
3.6 |
Trading/1_buy_follow_corp.py | 3.7 |
Trading/2_buy_with_devidend.py Trading/2_2_buy_with_dividend_price.py |
3.8 |
Trading/3_buy_with_price_fall.py | 3.9 |
Trading/strategy_research.py | 4.1 |
Trading/backtest_research.py | 4.2 |
Trading/tech1_ma_strategy.py | 4.3 |
Trading/tech2_highest.py | 4.4 |
Trading/tech3_macd_ma.py | 4.5 |
Trading Strategy_EX/Chapter3/holidaySchedule.csv | 下載下來的2021股市休市表 |
Trading Strategy_EX\Chapter3\AES_Encryption Trading\AES_Encryption |
帳密加解密工具包 |
Trading\holiday.xlsx | 經處理過後的判斷是否開盤用 |
Trading\stock_list.xlsx | 股票列表(請自行運行程式更新) |
訂正日期 | 對照章節 | 頁數 | 對照檔案 | 錯誤原因 | 修正內容 | 勘誤發現 |
博客來: https://www.books.com.tw/products/0010901963?loc=M_0039_001
momo: https://m.momoshop.com.tw/goods.momo?i_code=9261467
天瓏: https://www.tenlong.com.tw/products/9789860776294
誠品: https://www.eslite.com/product/1001313432682066432001