小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

股市中的搖錢“樹”

 常熟老李jlr5mr 2020-11-15

股市中的搖錢“樹”

邱吉爾 天擇君 3月22日

導(dǎo)讀:通常情況下,我們使用線性去回歸因子數(shù)據(jù),用來解釋因子對于收益的貢獻(xiàn)程度。但事實情況下,此類方法過于簡單,且市場收益并不一定與各類因子線性相關(guān),難以達(dá)到預(yù)期效果。眾所周知,樹是機(jī)器學(xué)習(xí)中的一類算法,決策樹算法則是其中的基礎(chǔ),而隨機(jī)森林則是利用多棵決策樹對樣本進(jìn)行訓(xùn)練并預(yù)測的一種算法。它們不同于支持向量機(jī),KNN等需要大量數(shù)據(jù)前處理,且能處理復(fù)雜問題。

一、 決策樹概念

分類決策樹的核心思想就是在一個數(shù)據(jù)集中找到一個最優(yōu)特征,然后從這個特征的選值中找一個最優(yōu)候選值,根據(jù)這個最優(yōu)候選值將數(shù)據(jù)集分為兩個子數(shù)據(jù)集,然后遞歸上述操作,直到滿足指定條件為止。

決策樹示例圖

二、因子選取

我們從趨勢類,反趨勢類,量價指標(biāo),壓力支撐型,成交量,超買超賣,擺動型,強(qiáng)弱型,日期類10個維度共選取了39個技術(shù)因子作為特征值,并與橫截面下的未來收益做合并,以方便數(shù)據(jù)處理。

趨勢類bbi多空指數(shù)
ma5日移動平均
expma5日指數(shù)移動平均數(shù)
priceosc價格震蕩指數(shù)
ddi方向標(biāo)準(zhǔn)差偏離指數(shù)
反趨勢bias乖離率
cci順勢指標(biāo)
dbcd異同離差乖離率
dpo區(qū)間震蕩線
kdj_k隨機(jī)指標(biāo)K值
量價指標(biāo)mfi資金流向指標(biāo)
obv能量潮
pvt量價趨勢指標(biāo)
wvad威廉變異離散量
壓力支撐型bbibollBBI多空布林線
boll布林線MID
cdp逆勢操作
envENV指標(biāo)
mike麥克指標(biāo)
成交量vr量比
vma量簡單移動平均
vmacd量指數(shù)平滑異同平均
vosc成交量震蕩
vstd成交量標(biāo)準(zhǔn)差
tapi加權(quán)指數(shù)成交值
超買超賣adtm動態(tài)買賣氣指標(biāo)
擺動類mi動量指標(biāo)
micd異同離差動力指數(shù)
rc變化率指數(shù)
rccd異同離差變化率指數(shù)
srmiSRMIMI修正指標(biāo)
強(qiáng)弱型dptb大盤同步指標(biāo)
jdqs階段強(qiáng)勢指標(biāo)
jdrs階段弱勢指標(biāo)
zdzb筑底指標(biāo)
atr真實波幅
mass梅絲線
日期類up_n連漲天數(shù)
down_n連跌天數(shù)

技術(shù)因子列表

三、決策樹策略

我們選取的時間為2017-01-01到2019-01-21,這段時間基本處于熊市階段,我們使用train_test_split將樣本數(shù)據(jù)劃分為二,我們從中發(fā)現(xiàn)整體數(shù)據(jù)的正向樣本(即收益數(shù)據(jù)大于某特定值)為0.02347312703583062,而在測試集中的正向樣本為0.023768322475570033,兩者數(shù)據(jù)相似,與此同時,我們可以開始進(jìn)行訓(xùn)練數(shù)據(jù)的步驟。

clf=tree.DecisionTreeClassifier(criterion='gini',max_features='sqrt',max_depth=100,class_weight='balanced')clf.fit(x_train,y_train)

代碼展示

我們可以看到在criterion中我們選取了gini,這是基尼不純度,可以理解為對數(shù)據(jù)集進(jìn)行隨機(jī)分類,分類錯誤出現(xiàn)的概率的期望。其中數(shù)據(jù)純度越高,基尼不純度越低。

公式展示

其次,在max_features參數(shù),我們選取特征數(shù)量的sqrt作為節(jié)點分裂時使用的特征數(shù)量。在max_depth參數(shù),我們選取120作為基礎(chǔ)模型的最大深度,如果不選取,模型會進(jìn)行到最深部分,容易產(chǎn)生過擬合。在class_weight部分,即類別權(quán)重,由于正向樣本無論在整體數(shù)據(jù)還是測試數(shù)據(jù)都表現(xiàn)特別稀少,如果每個數(shù)據(jù)等權(quán),則不合適,故我們使用 'balanced',其表示為類別的權(quán)重與樣本所占比例成反比。

接下來,我們畫出特征值在訓(xùn)練時各個因子的重要程度對比圖,我們可以看出srmi和mfi指標(biāo)重要性極大。

 因子的重要程度對比圖

緊接著我們開始基于訓(xùn)練集訓(xùn)練好的模型,使用決策樹對測試集的數(shù)據(jù)進(jìn)行驗證,我們從滬深300中選取相應(yīng)股票,并結(jié)合對比滬深300本身的指數(shù)凈值數(shù)據(jù),畫出相應(yīng)圖像。

data_300 = get_price(['000300.SH'], start_date, end_date, '1d', ['close'], True, None, is_panel=1)['close']data_300.columns=['close300']data_300['return300']=data_300['close300'].pct_change()data_300['net_value']=(1+data_300['return300']).cumprod()df_portfolio['HS300']=data_300.ix[df_portfolio.index,'net_value']df_portfolio[['strategy_return','HS300']].plot(figsize=(20,8))plt.title('Decision Tree Strategy',y=1.05,size=25)

 代碼展示

我們對股票使用的方式是等權(quán)買入,并持有一段固定時間,下圖藍(lán)線表示決策樹策略凈值曲線,綠線表示為滬深300作為基準(zhǔn)的凈值曲線。

 決策樹策略凈值曲線

四、 隨機(jī)森林策略

隨機(jī)森林是指利用多棵決策樹對樣本進(jìn)行訓(xùn)練并預(yù)測的一種算法,它是一種平均法得到的集成模型。也就是說隨機(jī)森林算法是一個包含多個決策樹的算法,其輸出的類別是由個別決策樹輸出的類別的眾樹來決定的,也就是說它要求的基礎(chǔ)模型,即多個決策樹模型,必須是低偏差,高方差的強(qiáng)模型。

隨機(jī)森林模型示意圖

我們依舊選取的時間為2017-01-01到2019-01-21。并開始進(jìn)行訓(xùn)練數(shù)據(jù)的步驟。其中,我們選擇20作為n_estimators的值,即基礎(chǔ)模型(決策樹)的數(shù)量。

clf_randomforest=RandomForestClassifier(n_estimators=20,criterion='gini',max_features='sqrt',max_depth=100,class_weight='balanced')clf_randomforest.fit(x_train,y_train)

 代碼展示

我們在訓(xùn)練數(shù)據(jù)的同時,畫出特征值在訓(xùn)練時各個因子的重要程度對比圖,我們可以看出srmi、kdj_k、dpo和bias四個技術(shù)指標(biāo)重要性極大。

    因子的重要程度對比圖

我們將訓(xùn)練好的隨機(jī)森林模型運(yùn)用到劃分出來的測試數(shù)據(jù)上進(jìn)行驗證,并相應(yīng)地畫出相關(guān)凈值曲線圖。

predict=clf_randomforest.predict(x_test)data_total.ix[x_test.index,'predict']=predictdata_holding=pd.DataFrame({i:data_total.predict.groupby(level=0).apply(lambda x:x.shift(i)) for i in range(1,6)})data_holding['total']=data_holding.sum(axis=1)data_total['flag_holding']=data_holding.total>0

  代碼展示

我們對股票使用的方式是等權(quán)買入,并持有一段固定時間,下圖藍(lán)線表示隨機(jī)森林模型凈值曲線,綠線表示為滬深300作為基準(zhǔn)的凈值曲線。

 隨機(jī)森林模型凈值曲線

結(jié)束語:無論在決策樹模型,還是在此基礎(chǔ)之上的隨機(jī)森林模型都可以利用多個技術(shù)面因子進(jìn)行有效選股判斷,但所選因子應(yīng)該來自于多個維度,以分散集中風(fēng)險。我們在實驗的過程中循環(huán)劃分訓(xùn)練和測試數(shù)據(jù),發(fā)現(xiàn)bias,srmi因子經(jīng)常表現(xiàn)突出,重要性明顯。策略表現(xiàn)也在18年以后有顯著超額收益。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多