本文是通過之前學(xué)習(xí)《Python量化入門》課程系列后,進(jìn)行的學(xué)習(xí)研究,將思路和結(jié)果供大家分享一起討論。
關(guān)鍵詞:Python, 量化研究,移動(dòng)平均線。
實(shí)驗(yàn)?zāi)康模?/b>對(duì)多個(gè)股票,使用多組參數(shù),進(jìn)行交易策略回測(cè)模擬,并對(duì)回測(cè)結(jié)果進(jìn)行分析。
關(guān)于單組測(cè)試的模擬,請(qǐng)回顧
刀客特鹿:量化學(xué)習(xí)筆記#股票的移動(dòng)平均線的研究(1)單股單組均線zhuanlan.zhihu.com

重復(fù)部分,不會(huì)再記錄。
原始數(shù)據(jù):code_list = ['sh600004', 'sh600007', 'sh600104', 'sh600366', 'sh600823', 'sz000709', 'sz000733', 'sz000895', 'sz000936', 'sz000988']
人為隨機(jī)挑選以上十個(gè)股票,數(shù)據(jù)的要求,上市日都要早于20050101,并且未退市。
多組參數(shù):短期均線 ma_short range(20,121,5)
長期均線 ma_long range(20,121,5)
交易策略:最小交易周期:日
買入信號(hào):當(dāng)短期均線上穿長期均線時(shí)候 ma_short >= ma_long
賣出信號(hào):當(dāng)長期均線下穿長期均線時(shí)候 ma_short < ma_long
信號(hào)的判別價(jià)格:每日收盤價(jià)(歷史除權(quán)價(jià)格)
交易計(jì)算價(jià)格:信號(hào)發(fā)生后的第二日開盤價(jià)(歷史未除權(quán)價(jià)格)
交易手續(xù)費(fèi):按0.0005計(jì)算
印花稅:按0.001計(jì)算,僅在賣出時(shí)發(fā)生
交易初始資金 1000000
最小交易數(shù)量:100股
測(cè)試的時(shí)間范圍:20050101-20170512
Benchmark: 上證指數(shù)
實(shí)驗(yàn)步驟:
第一步 獲取指定股票的所有均線參數(shù)的收益結(jié)果
1. 根據(jù)之前的實(shí)驗(yàn)策略,對(duì)code_list = ['sh600004', 'sh600007', 'sh600104', 'sh600366', 'sh600823', 'sz000709', 'sz000733', 'sz000895', 'sz000936', 'sz000988']
for code in code_list:??
?????get_stock_output(code)
獲取單個(gè)股票所有均線參數(shù)的收益結(jié)果的思路,請(qǐng)參考:
刀客特鹿:量化學(xué)習(xí)筆記#股票的移動(dòng)平均線的研究(2)單股多組均線zhuanlan.zhihu.com



第二步. 讀取以上的數(shù)據(jù)結(jié)果,進(jìn)行分析
1. 根據(jù)上一筆記,對(duì)單個(gè)股票分析的思路,分別對(duì)10個(gè)股票進(jìn)行數(shù)據(jù)分析
1) sh600004 白云機(jī)場(chǎng)
排名前十的參數(shù)和收益結(jié)果

收益率曲線:

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

2)sh600007 中國國貿(mào)
排名前十的參數(shù)和收益結(jié)果

收益率曲線:

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

3)sh600104 上汽集團(tuán)
排名前十的參數(shù)和收益結(jié)果

收益率曲線:

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

4)sh600366 寧波韻升
排名前十的參數(shù)和收益結(jié)果

收益率曲線

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤
5)sh600823 世茂股份
排名前十的參數(shù)和收益結(jié)果
收益率曲線

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

6)sz000709 河鋼股份
排名前十的參數(shù)和收益結(jié)果

收益率曲線

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤
7)sz000733 振華科技
排名前十的參數(shù)和收益結(jié)果
收益率曲線
3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

8)sz000895 雙匯發(fā)展
排名前十的參數(shù)和收益結(jié)果

收益率曲線

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤
9)sz000936 華西股份
排名前十的參數(shù)和收益結(jié)果

收益率曲線

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

10)sz000936 寧波韻升
排名前十的參數(shù)和收益結(jié)果

收益率曲線

3D繪圖 長期均線,短期均線,策略年化收益 / 最大回撤

實(shí)驗(yàn)總結(jié)
以上10個(gè)股票, 5個(gè)是上證主板,5個(gè)是深圳中小板
最優(yōu)均線策略 的收益 明顯大于 股票自身收益的有6個(gè):
sh600004 白云機(jī)場(chǎng) 最優(yōu)均線參數(shù)范圍 長期均線 49-66 短期均線3-8
sh600104 上汽集團(tuán) 最優(yōu)均線參數(shù)范圍 長期均線 41-53 短期均線9-13
sh600823 世茂股份 最優(yōu)均線參數(shù)范圍 長期均線 38-43 短期均線2-4
sz000709 河鋼股份 最優(yōu)均線參數(shù)范圍 長期均線 101-108 短期均線7-11
sz000733 振華科技 最優(yōu)均線參數(shù)范圍 長期均線 20-33 短期均線2-15
sz000936 華西股份 最優(yōu)均線參數(shù)范圍 長期均線 20-57 短期均線1-9
根據(jù)以上結(jié)果,個(gè)人得到的結(jié)論是:
利用均線個(gè)股自己的股價(jià)產(chǎn)生的均線策略,能獲得大于等于自身收益的表現(xiàn)。
但是每個(gè)個(gè)股的長短均線參數(shù)并沒有明顯的共性。
這個(gè)符合之前個(gè)人的邏輯猜測(cè),由個(gè)股的股價(jià)產(chǎn)生的均線策略,源于個(gè)股本身,是一種內(nèi)生變量,所以較難在參數(shù)上找到共性。
以上結(jié)果可能存在的問題:目前A股股票近4000個(gè), 2005年時(shí)股票估計(jì)也近1300個(gè),此次實(shí)驗(yàn)僅僅使用10個(gè)股票數(shù)據(jù)作為樣本,存在偏差的可能性較大。
后續(xù)研究方向:
1. 抽取更多的股票樣本進(jìn)行分析,驗(yàn)證以上的邏輯
2. 嘗試其他的技術(shù)指標(biāo)
3. 嘗試多技術(shù)指標(biāo)疊加效果(如KDJ,MACD等)
4. 結(jié)合動(dòng)量和反轉(zhuǎn)策略
5. 嘗試使用均線選股
以上交易策略的大量原始代碼和框架,師從于《Python量化入門》課程系列,想獲得所有的源代碼,并建立自己的交易策略,建議購買課程后深入學(xué)習(xí)。
課程評(píng)價(jià)
優(yōu)點(diǎn):這套課程特別適合對(duì)Python,pandas都沒掌握的同學(xué),和“入門”二字很貼切。雖然價(jià)要收取一定的費(fèi)用,但是對(duì)于零基礎(chǔ)的同學(xué)還是墻裂推薦。當(dāng)然我的筆記是完全免費(fèi)的,但這個(gè)只能作為點(diǎn)心,畢竟正餐才是最有營養(yǎng)的~而且還有大量的源代碼A股所有的股票歷史交易數(shù)據(jù)。
缺點(diǎn):只能用微信訪問學(xué)習(xí),PC端的話要通過微信客戶端訪問。
系列總課時(shí)約12多個(gè)小時(shí),會(huì)獲得課程講解的所有源代碼。如要深入熟練掌握,課外練習(xí)可能需要100小時(shí)+。
課程傳送門:
