引言:
邢不行的系列帖子“量化小講堂”,通過實際案例教初學者使用python進行量化投資,瞭解行業研究方向,希望能對大家有幫助。
【歷史文章彙總】請點擊此處
【必讀文章】EOS期現套利,一週時間,15%無風險收益
個人微信:xbx9025,有問題歡迎交流
Python說:這個炒股指標是我見過最廢的,沒有之一
現在隨便打開一個炒股APP,發現在股票K線圖的下面,都會默認顯示一些奇怪的指標。
比如下圖這個看上去很高級的KDJ指標:
網上搜索下,發現這個KDJ指標好像都很厲害的樣子。如下圖所示,它由三根纏綿在一起的折線組成,這3根線的名字分別叫K、D、J。
網上說,KDJ指標又叫隨機指標,由美國人某某某發明,據說它綜合了“動量觀念”、“強弱指標”和“移動平均線”的優點,運用了先進的......
你能不能直接點?
說人話就是,KDJ號稱可以預測股票的漲跌!
例如,當KDJ中的K線,從下往上穿過D線時,形成"黃金交叉",俗稱金叉,這個時候就預示着股價會上漲,應該買入股票。
下圖中,某股票在7月21日的金叉之後,股價果真一路上漲:
當K線,從上往下穿過D線時,形成"死亡交叉",俗稱死叉,預示着股價會下跌,這個時候就應該賣出股票。
例如在下圖中,特銳德這個股票,在03月9日的“死叉”過後,股票確實一直下跌:
看到這裏有的朋友可能會覺得,這是炒股祕籍啊!買了就漲、賣了就跌,趕緊投錢,從此走上人生巔峯!
然而我們是熟練使用Python的人!怎麼可以隨便相信別人說的,而自己不去實證一下呢?
我們接下來就來做一件瘋狂的事情。
我們準備通過Python,將一個股票歷史上所有的金叉、死叉情況都找出來,並且統計之後的漲跌情況,看看KDJ指標金叉、死叉的買賣點是否真的有效!
哼,用數據說話,這纔是我們會Python的做法!
我們先選擇萬科這個股票,找到它從1990年上市到最近的股價數據,如下圖所示:
然後用以下的Python代碼計算出萬科股票每天的KDJ指標:
就是這麼簡單,複雜的指標只需要6行代碼,Python大法好!
想要代碼和股票數據,可以加邢不行的微信xbx9025獲取。
接下來找出萬科歷史上所有金叉和死叉的交易日期,如下圖所示:
根據圖中數據,截止到最近萬科股票歷史上總共出現過1444次金叉或死叉,其中金叉、死叉各572次。
我們先統計在這572次金叉後,股票的漲跌情況:
總共出現過572次金叉,在這572次金叉之後的1天后,股票上漲的比例是49%;3天后,上漲比例是51%;5天后上漲的是51%;10天后,上漲比例是50%。
上漲的比例居然普遍是50%???!!!
不是說好了金叉之後股票就會上漲的嗎?怎麼還有一半的情況是下跌的?
這樣的話,和拋硬幣買賣股票又有什麼區別?
那既然金叉不行,我們再來看下死叉。死叉之後股票下跌的概率是否會顯著大於50%呢?
下面是數據:
......這是在搞笑嗎?
死叉後下跌的比例居然還經常不到50%??難道死叉還成看漲信號了?
金叉、死叉買入法失效,會不會是萬科這個股票不行呢?換個其它股票是不是就行了?或者是因爲數據量太少?
爲了消除以上的顧慮,那我們索性就把所有3500多隻股票的金叉、死叉的都找出來看看。
反正對於Python來說就是寫個循環遍歷下所有股票而已,小事一樁。
很快的跑完程序後發現,歷史上所有股票總共出現過170萬次金叉和死叉。
170萬次,這次數據量肯定夠大了。想要代碼和股票數據,可以加邢不行的微信xbx9025獲取。
下圖顯示出現金叉和死叉之後股價漲跌圖:
在85萬次金叉後,股票上漲的概率是50%左右......
在85萬次死叉後,股票下漲的概率是50%左右......
怎麼還是50%啊!!!
某些有一定經驗的炒股朋友會說,不能簡單的看見金叉就買進、看見死叉就賣出,還有更高級的用法。
比如只有當KDJ三條線處於底部低位的時候,此時金叉買入的成功率更高;或者當KDJ三條線處於頂部高位時,死叉賣出也會更有可能盈利。
那我們就修改下Python程序,根據以下條件進行篩選:
1 低位金叉:D值小於20且形成金叉
2 高位死叉:D值大於80且形成死叉
根據程序結果,金叉死叉次數由原來的170萬降低爲24萬。
以下是低位金叉和高位死叉之後股價漲跌比例:
結果是,所謂低位、高位,並沒有什麼用...
稍微有所安慰但又有點諷刺的是:意外發現高位死叉,這個理論上的賣出指標,反而是個很好的買入指標,大約有55%的勝率。
以上的數據表明,KDJ這個看上去高大上的指標,其實真的和拋硬幣來買賣股票沒啥區別。
所以我也不知道爲什麼,衆多的炒股軟件會把它當做默認選項來展示。建議將本文轉發給正在炒股的朋友,免得被繼續誤導。
並且,我們剛剛使用Python和數據來驗證指標的有效性,並且嘗試去優化,整個過程其實就是量化投資當中的回測。
任何客觀的投資方法都可以使用Python代碼實現,然後利用歷史股票數據驗證其有效性。在驗證賺錢之後再投入實戰,而不是盲目的嘗試,這就是量化投資最大的優勢。
推薦閱讀
歷年排名前10的基金,在第2年表現如何?Python告訴你答案
聯繫作者
如果你想入門量化,但是始終找不到方向,可以加入我的知識星球。我會在裏面解答你的問題,分享我的感悟,不論是投資、技術,還是職業選擇、思維方式。
-- 學習和成長從來都不是一個人的事 --