版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄一、DFQ化學(xué)因組合挖系統(tǒng)述 6二、強(qiáng)學(xué)習(xí)法介紹 7強(qiáng)化學(xué)習(xí) 7PPO算法 8三、基強(qiáng)化習(xí)的組合生模型 模型概述 公式化因子 Alpha因子生成器 12因子評(píng)價(jià) 15Alpha因子組合模型 15四、DFQ型實(shí)結(jié)果 18數(shù)據(jù)說(shuō)明 18運(yùn)算用時(shí) 19特征與算子出現(xiàn)頻次 20因子表現(xiàn) 22單因子表現(xiàn) 22合成因子績(jī)效表現(xiàn) 25不同隨機(jī)種子的相關(guān)性 28與常見(jiàn)因子的相關(guān)性 28五、top合表現(xiàn) 305.1top組合構(gòu)建說(shuō)明 305.2滬深300top50組合 305.3中證500top50組合 315.4中證1000top50組合 32六、指增強(qiáng)合表現(xiàn) 33增強(qiáng)組合構(gòu)建說(shuō)明 33滬深300指數(shù)增強(qiáng)組合 33中證500指數(shù)增強(qiáng)組合 34中證1000指數(shù)增強(qiáng)組合 35七、總結(jié) 36參考文獻(xiàn) 37風(fēng)險(xiǎn)提示 37圖表目錄圖1:多因子選股體系示意圖 6圖2:強(qiáng)化學(xué)習(xí)示意圖 7圖3:策略梯度算法VSPPO算法示意圖 8圖4:基于強(qiáng)化學(xué)習(xí)的因子組合生成模型示意圖 圖5:因子表達(dá)式&表達(dá)式樹(shù)&逆波蘭表達(dá)式 12圖6:Alpha因子生成器 12圖7:token的合法性定義 13圖8:Transformer模型下產(chǎn)的合法因子數(shù)量 14圖9:LSTM模型下產(chǎn)生的合法因子數(shù)量 14圖10:Transformer模型下試集因子表現(xiàn) 15圖模型下測(cè)試集因子表現(xiàn) 15圖12:人工因子列表 17圖13:DFQ模型因子組合人工因子的保留情況 17圖14:DFQ模型主要參數(shù)置 18圖15:和NumPy的性能差異 19圖16:滬深300股票池:size(單因子個(gè)數(shù)) 19圖17:滬深300股票池:fps(一秒運(yùn)行的步數(shù)) 19圖18:中證500股票池:size(單因子個(gè)數(shù)) 20圖19:中證500股票池:fps(一秒運(yùn)行的步數(shù)) 20圖20:中證1000股票池:size(單因子個(gè)數(shù)) 20圖21:中證1000股票池:fps(一秒運(yùn)行的步數(shù)) 20圖22:滬深300:?jiǎn)我蜃颖硎介L(zhǎng)度分布 20圖23:中證500:?jiǎn)我蜃颖硎介L(zhǎng)度分布 21圖24:中證1000:?jiǎn)我蜃舆_(dá)式長(zhǎng)度分布 21圖25:滬深300&中證500&中證1000股票池:特征出頻次 21圖26:滬深300&中證500&中證1000股票池:算子出頻次 22圖27:滬深300股票池:?jiǎn)巫訖?quán)重分布 23圖28:滬深300股票池:因相關(guān)系數(shù)絕對(duì)值的最大值分布 23圖29:中證500股票池:?jiǎn)巫訖?quán)重分布 23圖30:中證500股票池:因相關(guān)系數(shù)絕對(duì)值的最大值分布 23圖31:中證1000股票池:因子權(quán)重分布 23圖32:中證1000股票池:子相關(guān)系數(shù)絕對(duì)值的最大值分布 23圖33:滬深300股票池:?jiǎn)巫佑?xùn)練集RANKIC分布 24圖34:滬深300股票池:?jiǎn)巫佑?xùn)練集RANKIC_IR(未年化)分布 24圖35:中證500股票池:?jiǎn)巫佑?xùn)練集RANKIC分布 24圖36:中證500股票池:?jiǎn)巫佑?xùn)練集RANKIC_IR(未年化)分布 24圖37:中證1000股票池:因子訓(xùn)練集RANKIC分布 24圖38:中證1000股票池:因子訓(xùn)練集RANKIC_IR(未年化)分布 24圖39:滬深300股票池合成子績(jī)效表現(xiàn)(原始X,中性化Y) 25圖40:中證500股票池合成子績(jī)效表現(xiàn)(原始X,中性化Y) 25圖41:中證1000股票池合因子績(jī)效表現(xiàn)(原始X,中性化Y) 25圖42:滬深300股票池合成子測(cè)試集分年表現(xiàn) 26圖43:中證500股票池合成子測(cè)試集分年表現(xiàn) 26圖44:中證1000股票池合因子測(cè)試集分年表現(xiàn) 26圖45:滬深300股票池測(cè)試因子衰減速度 27圖46:中證500股票池測(cè)試因子衰減速度 27圖47:中證1000股票池測(cè)集因子衰減速度 27圖48:滬深300股票池強(qiáng)化習(xí)因子的原始值表現(xiàn)、中性化因子表現(xiàn)以及原始因子和中性化收率之間的關(guān)系 圖49:中證500股票池強(qiáng)化習(xí)因子的原始值表現(xiàn)、中性化因子表現(xiàn)以及原始因子和中性化收率之間的關(guān)系 圖50:中證1000股票池強(qiáng)學(xué)習(xí)因子的原始值表現(xiàn)、中性化因子表現(xiàn)以及原始因子和中性化收益率之間的關(guān)系 圖51:不同隨機(jī)種子得到的試集因子值序列的相關(guān)性 28圖52:與常見(jiàn)因子的測(cè)試集子值相關(guān)系數(shù)矩陣 28圖53:兩兩回歸殘差測(cè)試集現(xiàn) 29圖54:滬深300股池top50組合績(jī)效表現(xiàn) 30圖55:滬深300股池top50組合凈值 30圖56:中證500股池top50組合績(jī)效表現(xiàn) 31圖57:中證500股池top50組合凈值 31圖58:中證1000股票池top50組合績(jī)效表現(xiàn) 32圖59:中證1000股票池top50組合凈值 32圖60:滬深300股票池指數(shù)強(qiáng)組合績(jī)效表現(xiàn) 33圖61:滬深300股票池指數(shù)強(qiáng)組合凈值 33圖62:中證500股票池指數(shù)強(qiáng)組合績(jī)效表現(xiàn) 34圖63:中證500股票池指數(shù)強(qiáng)組合凈值 34圖64:中證1000股票池指增強(qiáng)組合績(jī)效表現(xiàn) 35圖65:中證1000股票池指增強(qiáng)組合凈值 351
一、DFQ強(qiáng)化學(xué)習(xí)因子組合挖掘系統(tǒng)概述多因子選股體系主要包括Alpha模型、風(fēng)險(xiǎn)模型、交易成本模型和組合優(yōu)化四個(gè)模塊。Alpha模型負(fù)責(zé)對(duì)股票收益或Alpha的預(yù)測(cè),對(duì)組合收益的影響相對(duì)更大,是量化研究的重中之重。傳統(tǒng)的Alpha模型一般分為Alpha因子庫(kù)構(gòu)建和Alpha因子加權(quán)兩個(gè)核心步驟?;久鏀?shù)據(jù)另類數(shù)據(jù)基本面數(shù)據(jù)另類數(shù)據(jù)分析師數(shù)據(jù)交易成本風(fēng)格暴露跟蹤誤差客觀量?jī)r(jià)數(shù)據(jù)Alpha模型風(fēng)險(xiǎn)模型組合優(yōu)化組合因子生成篩選因子轉(zhuǎn)換初始Alpha精簡(jiǎn)Alpha多因子zscore預(yù)測(cè)收益率績(jī)效歸因交易執(zhí)行機(jī)器學(xué)習(xí)Rank行業(yè)輪動(dòng)有效機(jī)器?主觀觀點(diǎn)事件庫(kù)主觀觀點(diǎn)事件庫(kù)數(shù)據(jù)來(lái)源:東方證券研究所繪制在Alpha因子構(gòu)建中,可以引入的常見(jiàn)機(jī)器學(xué)習(xí)模型主要有兩大類:遺傳規(guī)劃和神經(jīng)網(wǎng)絡(luò),我們都有對(duì)應(yīng)的研究成果。神經(jīng)網(wǎng)絡(luò)方法相關(guān)報(bào)告:《神經(jīng)網(wǎng)絡(luò)日頻alpha模型初步實(shí)踐》、《周頻量?jī)r(jià)指增模型》、《多模型學(xué)習(xí)量?jī)r(jià)時(shí)序特征》、《基于循環(huán)神經(jīng)網(wǎng)絡(luò)的多頻率因子挖掘》;遺傳規(guī)劃算法相關(guān)報(bào)告:《機(jī)器因子庫(kù)相對(duì)人工因子庫(kù)的增量》、《DFQ遺傳規(guī)劃價(jià)量因子挖掘系統(tǒng)》。遺傳規(guī)劃和神經(jīng)網(wǎng)絡(luò)方法各有優(yōu)劣,神經(jīng)網(wǎng)絡(luò)方法樣本內(nèi)擬合效果好,但模型黑箱,因子無(wú)顯式公式,可解釋性差,存在過(guò)擬合風(fēng)險(xiǎn);遺傳規(guī)劃算法生成的因子具有顯式公式,可解釋性強(qiáng),相對(duì)不易過(guò)擬合,對(duì)算力要求低,但模型泛化能力不強(qiáng),在滬深300和中證500股票池中效果較差。在Alpha因子加權(quán)問(wèn)題上,我們也有相應(yīng)探索,可參考《機(jī)器的比拼》等報(bào)告。例如彈性網(wǎng)絡(luò)等線性模型,決策樹(shù)、神經(jīng)網(wǎng)絡(luò)等非線性模型也都有不錯(cuò)的應(yīng)用效果。在量化投資實(shí)踐中,為了提升模型穩(wěn)定性,我們通常會(huì)同時(shí)使用多個(gè)因子。傳統(tǒng)的Alpha模型往往單獨(dú)挖掘每個(gè)因子,在挖掘過(guò)程中只關(guān)注每個(gè)因子自身的選股效力。先選出一部分效果不錯(cuò)的單因子后再去進(jìn)行加權(quán)組合。這樣做將因子挖掘和因子加權(quán)割裂開(kāi)來(lái),在因子挖掘階段忽略了單因子在應(yīng)用中的組合需求。實(shí)際上我們更關(guān)注的是可以協(xié)同工作并產(chǎn)生綜合效果的因子組合?;诖?,我們展示了一種新的因子組合挖掘框架,直接使用因子組合的表現(xiàn)來(lái)優(yōu)化一個(gè)強(qiáng)化學(xué)習(xí)因子生成器,最終生成的是一組公式因子集合,這些因子協(xié)同使用具有較高的選股效力。這樣做既能保留遺傳規(guī)劃算法公式化的優(yōu)勢(shì),也能提升模型泛化能力,適應(yīng)多種股票池,還能大幅提升運(yùn)算效率。本文參考了華為&中科院計(jì)算所的科學(xué)家在2023年發(fā)表的研究論文《GeneratingSynergisticFormulaicAlphaCollectionsviaReinforcementLearning》,并進(jìn)行了修改優(yōu)化工作。2:強(qiáng)化學(xué)習(xí)示意圖
二、強(qiáng)化學(xué)習(xí)算法介紹強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)(ReinforcementLearning,RL)是一類機(jī)器學(xué)習(xí)方法,它的核心思想是訓(xùn)練一個(gè)智能體(agent),智能體能夠在與環(huán)境(environment)交互的過(guò)程中不斷學(xué)習(xí),從而做出最優(yōu)決策。在強(qiáng)化學(xué)習(xí)過(guò)程中,智能體與環(huán)境一直在交互:智能體在環(huán)境里面獲取某個(gè)狀態(tài)后,會(huì)利用該狀態(tài)輸出一個(gè)動(dòng)作,然后這個(gè)動(dòng)作會(huì)在環(huán)境之中被執(zhí)行。接下來(lái)環(huán)境會(huì)根據(jù)智能體采取的動(dòng)作,輸出下一個(gè)狀態(tài)以及當(dāng)前這個(gè)動(dòng)作帶來(lái)的獎(jiǎng)勵(lì)。這樣智能體就可以利用獎(jiǎng)勵(lì)信號(hào)來(lái)更新自己,使得下一次輸出的動(dòng)作能獲得更高的獎(jiǎng)勵(lì)。強(qiáng)化學(xué)習(xí)的智能體一開(kāi)始并不知道每一步正確的動(dòng)作應(yīng)該是什么,只能通過(guò)不停地試錯(cuò)探索來(lái)獲取對(duì)環(huán)境的理解,發(fā)現(xiàn)最有利的動(dòng)作,最大化獎(jiǎng)勵(lì)。數(shù)據(jù)來(lái)源:東方證券研究所&EasyRL:強(qiáng)化學(xué)習(xí)教程
智能體(Agent):執(zhí)行動(dòng)作和學(xué)習(xí)的實(shí)體。智能體所處的外部世界,與智能體互動(dòng)。狀態(tài)(State):環(huán)境在某個(gè)時(shí)間點(diǎn)的描述。動(dòng)作(Action):智能體可以在某個(gè)狀態(tài)下采取的操作。獎(jiǎng)勵(lì)(Reward):一個(gè)數(shù)值,表示智能體采取某個(gè)動(dòng)作后的即時(shí)收益。策略(Policy):智能體采取動(dòng)作的策略,通常用于描述在特定狀態(tài)下采取各個(gè)動(dòng)作的概率。強(qiáng)化學(xué)習(xí)模型的這種不斷適應(yīng)環(huán)境,探索環(huán)境的特性,決定了它有非常大的潛力,可能可以獲得超越人類能力的表現(xiàn)。近年來(lái),強(qiáng)化學(xué)習(xí)已經(jīng)在諸多領(lǐng)域展示了其強(qiáng)大的能力。在游戲領(lǐng)域,DeepMindAlphaGo4:1RL在復(fù)雜策略分析方面的能力。AlphaZero不僅學(xué)會(huì)了圍棋,還自主學(xué)習(xí)了國(guó)際象棋和將棋,并在各自的領(lǐng)域擊敗了世界級(jí)算法。AlphaStar在星際爭(zhēng)霸II中擊敗了人類職業(yè)選手。在金融領(lǐng)域,強(qiáng)化學(xué)習(xí)可以進(jìn)行自動(dòng)化交易。通過(guò)學(xué)習(xí)歷史數(shù)據(jù)和實(shí)時(shí)市場(chǎng)動(dòng)態(tài),強(qiáng)化學(xué)習(xí)算法可以確定何時(shí)買入、賣出或持有特定資產(chǎn)。還可以進(jìn)行投資組合優(yōu)化,用于確定資產(chǎn)組合的最佳權(quán)重分配,以實(shí)現(xiàn)特定的風(fēng)險(xiǎn)/回報(bào)目標(biāo)。但目前強(qiáng)化學(xué)習(xí)算法在Alpha模型上的應(yīng)用還比較少,這也是我們本次報(bào)告要解決的問(wèn)題。使用強(qiáng)化學(xué)習(xí)進(jìn)行選股因子挖掘具有以下優(yōu)勢(shì):適應(yīng)性決策制定:與傳統(tǒng)的預(yù)測(cè)模型不同,強(qiáng)化學(xué)習(xí)不僅僅預(yù)測(cè)市場(chǎng)動(dòng)態(tài),而是直接學(xué)習(xí)一個(gè)策略。隨著市場(chǎng)的變化,強(qiáng)化學(xué)習(xí)模型可以持續(xù)地學(xué)習(xí)和調(diào)整策略,從而適應(yīng)新的市場(chǎng)環(huán)境。端到端的學(xué)習(xí):強(qiáng)化學(xué)習(xí)可以實(shí)現(xiàn)從原始輸入到交易決策的端到端學(xué)習(xí),避免了傳統(tǒng)方法中的多個(gè)步驟和假設(shè)。探索與利用的平衡:強(qiáng)化學(xué)習(xí)算法自然地處理探索(嘗試新的策略)與利用(沿用當(dāng)前最佳策略)之間的平衡,使其能夠在穩(wěn)定性與性能之間找到最佳折衷。考慮交易成本和約束:強(qiáng)化學(xué)習(xí)可以直接在獎(jiǎng)勵(lì)函數(shù)中考慮交易成本、稅費(fèi)、市場(chǎng)沖 擊等實(shí)際約束,使策略更具實(shí)用性。 有關(guān)分析師的申明,見(jiàn)本報(bào)告最后部分。其他重要信息披露見(jiàn)分析師申明之后部分,或請(qǐng)與您的投資代表聯(lián)系。并請(qǐng)閱讀本證券研究報(bào)告最后一頁(yè)的免責(zé)申明。多因子策略優(yōu)化:強(qiáng)化學(xué)習(xí)可以更好地整合和平衡多個(gè)選股因子,從而形成一個(gè)綜合的、更穩(wěn)健的投資策略。PPO算法近端策略優(yōu)化(ProximalPolicyOptimization,PPO)是一種深度強(qiáng)化學(xué)習(xí)算法,結(jié)合了深度學(xué)習(xí)和傳統(tǒng)的強(qiáng)化學(xué)習(xí)技術(shù),也是現(xiàn)在OpenAI默認(rèn)的強(qiáng)化學(xué)習(xí)算法。PPO算法完全遵循強(qiáng)化學(xué)習(xí)的框架,使用狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì)等概念,并通過(guò)與環(huán)境的交互來(lái)訓(xùn)練智能體。目標(biāo)是找到一種策略(即動(dòng)作選擇機(jī)制),使得從環(huán)境中獲得的獎(jiǎng)勵(lì)最大化。與此同時(shí),PPO算法使用深度神經(jīng)網(wǎng)絡(luò)來(lái)表示策略和價(jià)值函數(shù),這允許算法處理高維、連續(xù)或復(fù)雜的觀察和動(dòng)作空間。PPO算法是傳統(tǒng)策略梯度算法(PolicyGradient,PG)的改進(jìn),屬于同策略算法。在強(qiáng)化學(xué)習(xí)中,如果要學(xué)習(xí)的智能體和與環(huán)境交互的智能體是相同的,稱之為同策略。在策略梯度算法中,智能體先去跟環(huán)境互動(dòng),收集經(jīng)驗(yàn)。然后根據(jù)收集到的經(jīng)驗(yàn),按照策略梯度算法的方式更新策略網(wǎng)絡(luò)的參數(shù)。但問(wèn)題是,一旦我們更新了策略網(wǎng)絡(luò)參數(shù),那么之前收集到的經(jīng)驗(yàn)就變的不能用了,所PPO算法。PPO屬于信任域(TrustRegion,TR)方法的一種,其核心思想是在每次更新策略的時(shí)候,不讓新策略偏離老策略太遠(yuǎn),這樣基于老策略收集的經(jīng)驗(yàn)仍然可以繼續(xù)使用,避免在更新策略的過(guò)程中產(chǎn)生過(guò)大的震蕩和不穩(wěn)定。具體來(lái)說(shuō),PPO(新策略和舊策略的比值),確保策略更新是有界的,從而增加了訓(xùn)練的穩(wěn)定性。圖3:策略梯度算法VSPPO算法示意圖從同一個(gè)策略中多次采樣,不斷更新模型數(shù)據(jù)采樣更新模型數(shù)據(jù)采樣數(shù)據(jù)采樣更新模型數(shù)據(jù)采樣策略梯度算法示意圖 PPO算法示意圖數(shù)據(jù)來(lái)源:東方證券研究所&EasyRL:強(qiáng)化學(xué)習(xí)教程PPO算法步驟如下:收集經(jīng)驗(yàn):執(zhí)行當(dāng)前策略來(lái)與環(huán)境交互并收集經(jīng)驗(yàn)樣本,包括狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì)。而后從經(jīng)驗(yàn)集中多次抽取樣本進(jìn)行學(xué)習(xí),充分利用每批經(jīng)驗(yàn)來(lái)不斷更新網(wǎng)絡(luò)。經(jīng)驗(yàn)集個(gè)數(shù)由n_stepsbatch_size個(gè)樣本,然后重復(fù)選擇n_epochs次,根據(jù)每個(gè)樣本更新策略。一個(gè)樣本可能會(huì)被多次選中,進(jìn)行多次學(xué)習(xí)。計(jì)算回報(bào)與優(yōu)勢(shì):(1)優(yōu)勢(shì):衡量在給定狀態(tài)下采取某一行動(dòng)相對(duì)于平均行動(dòng)的優(yōu)勢(shì)。(2)回報(bào):從當(dāng)前步驟開(kāi)始的未來(lái)折扣獎(jiǎng)勵(lì)的總和。計(jì)算損失函數(shù):分為三部分:策略損失:策略損失是強(qiáng)化學(xué)習(xí)中關(guān)鍵的損失函數(shù),其目的是優(yōu)化智能體的策略,以便在與環(huán)境互動(dòng)時(shí)選擇更好的動(dòng)作。通過(guò)優(yōu)勢(shì)和新舊策略的比率來(lái)計(jì)算策略損失,然后將比率剪裁以限制更新的幅度。值損失:值損失用于優(yōu)化值函數(shù),即狀態(tài)值的估計(jì)。值函數(shù)在強(qiáng)化學(xué)習(xí)中用于估計(jì)從給定狀態(tài)開(kāi)始的預(yù)期回報(bào),值損失利用值函數(shù)預(yù)測(cè)值和實(shí)際回報(bào)之間的均方誤差來(lái)計(jì)算。通過(guò)最小化值損失,可以更準(zhǔn)確地預(yù)測(cè)未來(lái)回報(bào)。熵?fù)p失:熵?fù)p失是一種鼓勵(lì)探索的機(jī)制。通過(guò)增加策略的熵,來(lái)鼓勵(lì)智能體采取更隨機(jī)的動(dòng)作,從而探索更多的狀態(tài)空間。在訓(xùn)練智能體時(shí),我們不僅想讓它學(xué)習(xí)如何在已知環(huán)境中表現(xiàn)良好,還想讓它探索新的可能性,以便在未知情況下也能做出好決策。將策略損失、值損失、熵?fù)p失三者加權(quán)作為損失函數(shù),ent_coef和vf_coef是熵?fù)p失和值損失的權(quán)重系數(shù)。這三種損失共同工作,以訓(xùn)練能夠在多種環(huán)境中做出智能決策的智能體。優(yōu)化損失函數(shù):通過(guò)隨機(jī)梯度下降(或其他優(yōu)化器)來(lái)優(yōu)化損失函數(shù)。默認(rèn)使用Adam算法。學(xué)習(xí)率是優(yōu)化器的關(guān)鍵參數(shù),它決定了每次梯度下降更新時(shí)參數(shù)更新的幅度。較高的學(xué)習(xí)率可能導(dǎo)致更快的收斂,但也可能造成不穩(wěn)定。較低的學(xué)習(xí)率可能更穩(wěn)定,但收斂速度可能會(huì)慢,容易陷入局部最優(yōu)解。更新策略:重復(fù):使用PPO算法進(jìn)行選股因子挖掘有多個(gè)潛在的優(yōu)點(diǎn):PPO的特征,減少了手工特征工程的需求。PPO解決復(fù)雜的選股問(wèn)題上可能比某些傳統(tǒng)方法更有優(yōu)勢(shì)。訓(xùn)練穩(wěn)定性高:PPO通過(guò)限制策略更新的大小來(lái)增加訓(xùn)練的穩(wěn)定性,這在金融市場(chǎng)這種高度噪音、非穩(wěn)定的環(huán)境中是很有價(jià)值的。適應(yīng)性強(qiáng):PPO的策略迭代方法使其能夠更好地適應(yīng)不斷變化的市場(chǎng)環(huán)境。此外,PPO算法可以與動(dòng)作掩蔽機(jī)制結(jié)合,以確保在訓(xùn)練過(guò)程中僅選擇合法動(dòng)作,稱為MaskablePPO算法??梢酝ㄟ^(guò)以下步驟實(shí)現(xiàn):定義掩蔽向量:TrueFalse。修改策略網(wǎng)絡(luò)的輸出:將策略網(wǎng)絡(luò)的輸出(即動(dòng)作概率分布)與掩蔽向量相結(jié)合,通過(guò)將非法動(dòng)作的對(duì)數(shù)概率設(shè)置為一個(gè)非常大的負(fù)數(shù)來(lái)完成,這樣對(duì)數(shù)概率進(jìn)行softmax轉(zhuǎn)0,使得這些動(dòng)作在采樣中幾乎不可能被選擇,以消除非法動(dòng)作的影響。重新歸一化:由于消除了某些動(dòng)作的概率,所以需要重新歸一化概率分布,以確保其總1。選擇動(dòng)作:根據(jù)修改后的概率分布選擇動(dòng)作。訓(xùn)練和優(yōu)化:PPOPPO相同。Python中的StableBaselines和sb3_contrib庫(kù)提供了一系列強(qiáng)化學(xué)習(xí)算法的實(shí)現(xiàn),sb3_contrib是StableBaselines3的擴(kuò)展庫(kù)。我們使用的是sb3_contrib中的ppo_mask。在ppo_mask中使用了TensorBoard工具來(lái)監(jiān)控訓(xùn)練過(guò)程,可以展示訓(xùn)練過(guò)程中的各種可視化統(tǒng)計(jì)數(shù)據(jù),幫助我們更直觀地理解訓(xùn)練過(guò)程,從而更有效地調(diào)試和優(yōu)化模型。三、基于強(qiáng)化學(xué)習(xí)的因子組合生成模型模型概述基于強(qiáng)化學(xué)習(xí)的因子組合生成模型,由兩部分組成:Alpha因子生成器:使用MaskablePPO模型生成動(dòng)作,并以token序列的形式生成公式化的Alpha因子。Alpha因子組合模型:組合Alpha因子,并給出獎(jiǎng)勵(lì)信號(hào)。AlphaAlphaAlpha圖4:基于強(qiáng)化學(xué)習(xí)的因子組合生成模型示意圖(A)Alpha因生器 (B)Alpha因組模型&
公式化因子公式化的Alpha因子有顯式公式,可以用數(shù)學(xué)表達(dá)式的形式表示。因子表達(dá)式由以下幾部分組成,每個(gè)元素都被稱為Token:算子:118個(gè)),二元截面(Binary,21個(gè)),三元截面(Three,個(gè)),四元截面(Four,8);時(shí)序算子根據(jù)需要的特征個(gè)數(shù)和窗口個(gè)數(shù)進(jìn)一步分為個(gè)小類:一元時(shí)序(Rolling,35個(gè)),二元時(shí)序(PairRolling,11個(gè)),2常數(shù)(PairRollingDiffDay2,4個(gè)),3常數(shù)(PairRollingDiffDay3,2個(gè)),三元時(shí)序(ThreeRolling,2)。算子內(nèi)部需要充分考慮缺失值兼容性及運(yùn)算效率。特征:703314l2量?jī)r(jià)特征13個(gè),基本面特征(估值+)10時(shí)間窗口(時(shí)序算子的參數(shù)):55日,10日,20日,40日,60日。強(qiáng)化學(xué)習(xí)模型是按照逆波蘭表達(dá)式的形式生成因子,先產(chǎn)生操作數(shù),再匹配操作符。我們選取的特征和時(shí)間窗口參數(shù)的數(shù)量差別較大,因而更容易產(chǎn)生特征。特征后續(xù)只能匹配截面算子進(jìn)行截面的運(yùn)算,匹配時(shí)序算子不合法,因而時(shí)序算子出現(xiàn)的概率會(huì)大大降低?;诖?,我們將時(shí)間窗口的序列*1050特殊符號(hào):BEG(序列開(kāi)始),SEP(序列結(jié)束)。每個(gè)因子公式天然地與一棵表達(dá)式樹(shù)等價(jià),進(jìn)而與一個(gè)逆波蘭表達(dá)式(表達(dá)式樹(shù)的后續(xù)遍歷,ReversedNotation,RPN)等價(jià),模型通過(guò)token序列的形式生成RPN,從而生成因子。逆波蘭表示法是一種沒(méi)有括號(hào)、沒(méi)有優(yōu)先級(jí)規(guī)則的數(shù)學(xué)表達(dá)式表示方法。在這種表示法中,操作符位于其操作數(shù)之后。例如,表達(dá)式add(5,volume)的逆波蘭表達(dá)式就是5volumeadd,表達(dá)式ts_sum(add(5,volume2)5volumeadd2ts_sum圖5:因子表達(dá)式&表達(dá)式樹(shù)&逆波蘭表達(dá)式因子表達(dá)式表達(dá)式樹(shù)因子表達(dá)式逆波蘭表達(dá)式數(shù)據(jù)來(lái)源:東方證券研究所&arXivAlpha為了控制和評(píng)估有效表達(dá)式的生成過(guò)程,我們將Alpha因子的生成過(guò)程,建模為非平穩(wěn)的馬爾可夫決策過(guò)程(Markovdecisionprocess,MDP)。MDP的各個(gè)組成部分如下:圖6:Alpha因子生成器數(shù)據(jù)來(lái)源:東方證券研究所&arXiv狀態(tài)(State):token序列,例如[BEG,$adjclose,$volume]。有效狀態(tài)BEGtoken序列。動(dòng)作空間(actionspace):token序列不能保證是表達(dá)式的RPN,因而我們只允許模型輸出符合運(yùn)算規(guī)則的合法動(dòng)作,以確保RPN序列的格式正ActionMask步驟。動(dòng)作掩蔽(ActionMask):根據(jù)當(dāng)前狀態(tài)判斷動(dòng)作空間中的動(dòng)作是否合法,不合法的動(dòng)作將被掩蔽,模型僅從合法動(dòng)作集合中進(jìn)行抽樣得到下一個(gè)動(dòng)作。每類token性定義如下圖。行動(dòng)(Action):將要添加到token序列尾部的下一個(gè)tokenSub。下一個(gè)行動(dòng)是什么由策略網(wǎng)絡(luò)從動(dòng)作空間中選取生成。狀態(tài)轉(zhuǎn)移(Dynamic)token獎(jiǎng)勵(lì)(Reward):智能體在特定狀態(tài)下采取某一動(dòng)作的即時(shí)效用。獎(jiǎng)勵(lì)是針對(duì)Action的,MDPtoken序列給出即時(shí)獎(jiǎng)勵(lì),僅在序列結(jié)束(SEP或長(zhǎng)度達(dá)到閾值)0ICAlpha如果當(dāng)前的token序列是[BEG,$adjclose,$vol,Sub,Add],那么序列未完成,當(dāng)前動(dòng)作Add0token[BEG$adjclose,$vol,Sub,SEP],那么序列actionSub(0.1,$vol)IC。20個(gè)token的表達(dá)式如果當(dāng)前仍不完整,那么獎(jiǎng)勵(lì)將被強(qiáng)制設(shè)為-1(IC的最小值),以降低后續(xù)再生成超長(zhǎng)表達(dá)式的概率。此外,我們將出現(xiàn)連續(xù)重復(fù)一元截面運(yùn)算符的因子(例如rank(rank($adjclose)))、單特征因子(例如$adjclose)、無(wú)法計(jì)算IC(缺失率過(guò)高、標(biāo)準(zhǔn)差過(guò)小、截面不重復(fù)數(shù)值太少)的因子、與因子池中的已有因子的因子值相關(guān)系數(shù)0.990,降低不合理單因子出現(xiàn)的概率。價(jià)值(Value):優(yōu)勢(shì)(Advantage):度量一個(gè)動(dòng)作相對(duì)于平均動(dòng)作的優(yōu)勢(shì)??梢允褂脧V義優(yōu)勢(shì)估計(jì)(GeneralizedAdvantageEstimation,GAE)來(lái)計(jì)算。回報(bào)(Return):=+價(jià)值。圖7:token的合法性定義token類型合法性規(guī)則特征(FEATURE)前面沒(méi)有token,或前面的token是特征時(shí)間窗口(DELTA_TIME)前面至少有一個(gè)token一元截面(Unary)滿足參數(shù)個(gè)數(shù)要求+前一個(gè)token是特征二元截面(Binary)滿足參數(shù)個(gè)數(shù)要求+前2個(gè)token是特征三元截面(Three)滿足參數(shù)個(gè)數(shù)要求+前3個(gè)token是特征四元截面(Four)滿足參數(shù)個(gè)數(shù)要求+前4個(gè)token是特征算子(OPERATOR)一元時(shí)序(Rolling)滿足參數(shù)個(gè)數(shù)要求+前1個(gè)token是時(shí)間窗口,倒數(shù)第二個(gè)token是特征二元時(shí)序(PairRolling)滿足參數(shù)個(gè)數(shù)要求+前1個(gè)token是時(shí)間窗口,倒數(shù)第二個(gè)和第三個(gè)token是特征二元時(shí)序2常數(shù)(PairRollingDiffDay2)滿足參數(shù)個(gè)數(shù)要求+倒數(shù)第一個(gè)和第二個(gè)token是時(shí)間窗口,倒數(shù)第三個(gè)和第四個(gè)token是特征二元時(shí)序3常數(shù)(PairRollingDiffDay3)滿足參數(shù)個(gè)數(shù)要求+倒數(shù)第1-3個(gè)token是時(shí)間窗口,倒數(shù)第4-5個(gè)token是特征三元時(shí)序(ThreeRolling)滿足參數(shù)個(gè)數(shù)要求+前1個(gè)token是時(shí)間窗口,倒數(shù)第2-4個(gè)token是特征數(shù)據(jù)來(lái)源:東方證券研究所繪制基于上述定義的MDP,我們使用MaskablePPO模型不斷生成動(dòng)作。該模型接受狀態(tài)作為輸入,并輸出動(dòng)作分布,實(shí)際動(dòng)作將從輸出分布中抽樣。PPO算法中用于學(xué)習(xí)環(huán)境的策略模型屬于演員-評(píng)論家策略(MaskableActorCriticPolicy,MlpPolicy)。這個(gè)策略根據(jù)當(dāng)前觀察到的環(huán)境狀態(tài)選擇動(dòng)作,評(píng)估動(dòng)作的價(jià)值,并計(jì)算動(dòng)作被模型選中的概率。智能體會(huì)根據(jù)策略做出動(dòng)作,相當(dāng)于演員,而價(jià)值函數(shù)會(huì)對(duì)做出的動(dòng)作給出價(jià)值,相當(dāng)于評(píng)論家。該方法可以看作基于價(jià)值的方法和基于策略的方法的交集,習(xí)慣上仍歸入基于策略的方法。演員-評(píng)論家方法結(jié)合了基于策略的策略梯度算法的探索能力和基于價(jià)值的方法的穩(wěn)定性和高效性,可以加速學(xué)習(xí)過(guò)程,通過(guò)同時(shí)學(xué)習(xí)策略(演員)和價(jià)值函數(shù)(評(píng)論家),算法可以相互引導(dǎo)和糾正,避免一些不穩(wěn)定的學(xué)習(xí)動(dòng)態(tài)。演員-評(píng)論家策略需要價(jià)值網(wǎng)絡(luò)和策略網(wǎng)絡(luò)。策略網(wǎng)絡(luò)根據(jù)當(dāng)前策略和給定的狀態(tài),選擇一個(gè)動(dòng)作輸出。價(jià)值網(wǎng)絡(luò)用來(lái)評(píng)估在給定狀態(tài)下采取特定動(dòng)作的預(yù)期回報(bào)。這兩個(gè)網(wǎng)絡(luò)均使用深度神經(jīng)網(wǎng)絡(luò)來(lái)表示。策略網(wǎng)絡(luò)的結(jié)構(gòu)包括:一個(gè)特征提取器(features_extractor),一個(gè)多層感知機(jī)(mlp_extractor),一個(gè)動(dòng)作分布生成網(wǎng)絡(luò)(action_net)。價(jià)值網(wǎng)絡(luò)的結(jié)構(gòu)包括:一個(gè)特征提取器(features_extractor),一個(gè)多層感知機(jī)(mlp_extractor),一個(gè)價(jià)值估計(jì)生成網(wǎng)絡(luò)(value_net)。價(jià)值網(wǎng)絡(luò)和策略網(wǎng)絡(luò)共享一個(gè)基礎(chǔ)的特征提取器(features_extractor)。token序mlp_extractor,其目的是為后續(xù)的網(wǎng)絡(luò)組件提供一個(gè)更簡(jiǎn)潔、更信息化的表示。這樣的共享這不僅有助于減少模型復(fù)雜性,還有助于提高模型的學(xué)習(xí)效率和性能。特征提取器我們采用Transformer模型。TransformerTransformer編碼器可以有效地處理序列數(shù)據(jù),提取其關(guān)鍵特征,并輸出一個(gè)固定長(zhǎng)度的向量。在我們模型中,只需要對(duì)觀察序列進(jìn)行編碼以提取特征,因此只使用了編碼器部分,并沒(méi)有使用解碼器。LSTM模型相比,Transformer有以下優(yōu)點(diǎn):(1)提高計(jì)算效率。(2)長(zhǎng)距離依賴關(guān)系:通過(guò)自注意力機(jī)制,直接捕獲序列中的長(zhǎng)距離依賴關(guān)系。(3)可解釋性:自注意力機(jī)制的權(quán)重提供了序列元素之間關(guān)系的直觀可視化。(4)靈活性:可以輕松擴(kuò)展到多頭注意力,從而捕獲序列中不同層次的特征。實(shí)際測(cè)試發(fā)現(xiàn),LSTM模型運(yùn)行速度更快,顯存占用更低,但產(chǎn)生的合法有效因子數(shù)量少,合成因子效果不如Transformer。在算力允許的情況下,使用Transformer模型作為特征提取器應(yīng)是更優(yōu)選擇。圖8:Transformer模型下產(chǎn)的合法因子數(shù)量 圖9:LSTM模型下產(chǎn)生的合法因子數(shù)量 數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊 數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊圖10:Transformer模型下試集因子表現(xiàn) 圖11:LSTM模型下測(cè)試集因子表現(xiàn)數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊 數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊價(jià)值網(wǎng)絡(luò)和策略網(wǎng)絡(luò)均使用多層感知器(multilayerperceptron,MLP)網(wǎng)絡(luò)來(lái)處理特征。MLPfeatures_extractor得到的特征,旨在得到更有意義、更高級(jí)的表示,為策略MLPMLP264個(gè)神經(jīng)元。動(dòng)作分布生成網(wǎng)絡(luò)(action_net)使用了一個(gè)單層全連接網(wǎng)絡(luò),用于生成動(dòng)作分布。動(dòng)作分布還將與動(dòng)作掩蔽機(jī)制相結(jié)合,以確保非法動(dòng)作不會(huì)被選中。價(jià)值估計(jì)生成網(wǎng)絡(luò)(value_net)也使用了一個(gè)單層全連接網(wǎng)絡(luò)組成,用于將特征轉(zhuǎn)換為單一的價(jià)值估計(jì)。因子評(píng)價(jià)我們將優(yōu)化后因子組合的IC,作為當(dāng)前動(dòng)作的獎(jiǎng)勵(lì)。因子組合的IC率來(lái)計(jì)算。合成因子值通過(guò)單因子值和單因子權(quán)重加權(quán)計(jì)算。計(jì)算單因子IC時(shí),收益率進(jìn)行截面中性化和標(biāo)準(zhǔn)化,不進(jìn)行缺失值填充。因子值進(jìn)行標(biāo)準(zhǔn)化,并使用0來(lái)填充缺失值。計(jì)算合成因子IC時(shí),因子值也進(jìn)行標(biāo)準(zhǔn)化,并使用0來(lái)填充缺失值。收益率中性化專注于消除收益率與行業(yè)市值風(fēng)格之間的關(guān)系,使得因子與收益率之間的關(guān)系更純粹,同時(shí)收益率中性化只需要計(jì)算一次,不需要對(duì)每個(gè)因子都計(jì)算,能夠大幅節(jié)省運(yùn)算開(kāi)銷。Alpha考慮到因子組合的可解釋性和運(yùn)算效率,我們使用線性模型來(lái)組合Alpha。也可以根據(jù)模型最終得到的單因子集,在外部進(jìn)行重新加權(quán),考慮動(dòng)態(tài)加權(quán)、非線性加權(quán)等方式,可能也可以獲得更好的合成因子表現(xiàn)。k個(gè)alphaF={f1,f2,……,fk}w=(w1,w2,wk),組合模型定義如下:??c(X;F,w)=∑????????(??)=????=1組合模型的損失設(shè)計(jì)如下,通過(guò)優(yōu)化損失函數(shù),可以找到最佳的因子權(quán)重:?? ????1
????)=??(1?2∑??????)+∑∑|????|?(????,????)|+05?∑∑?????(????,????))??=1
??=1??=1
??=1??=1??=1這里,我們引入了平均相關(guān)性的符號(hào)?????????代表合成因子的IC;??=1∑??
∑??
|????|?(????)????)|,為絕對(duì)值相關(guān)性和,因子間的高度負(fù)相關(guān)和正相關(guān)均會(huì)帶來(lái)?yè)p??=1??=1失的增加。通過(guò)減小因子之間絕對(duì)值的相關(guān)性,減少因子之間的冗余和共線性,增加因子多樣性;∑??∑??=1
??∑∑
?????(????????)考慮了相關(guān)性的正負(fù)號(hào)。一旦我們得到單因子I,以及兩兩相關(guān)系數(shù),就可以使用這些項(xiàng)來(lái)計(jì)算損失,從而在每個(gè)梯度下降步驟中節(jié)省計(jì)算時(shí)間。我們?cè)趽p失函數(shù)中還加入了L1正則化項(xiàng),以防止過(guò)擬合。L1正則化通過(guò)在損失函數(shù)中添加一個(gè)與權(quán)重的絕對(duì)值成比例的項(xiàng)來(lái)工作,將傾向于產(chǎn)生稀疏權(quán)重向量,防止模型過(guò)于復(fù)雜,確保模型不會(huì)過(guò)度依賴單個(gè)因子,從而減少過(guò)擬合的風(fēng)險(xiǎn)。梯度下降采用Adam算法。Adam(AdaptiveMomentEstimation)算法是一種流行的隨機(jī)優(yōu)化方法,結(jié)合了動(dòng)量和自適應(yīng)學(xué)習(xí)率調(diào)整的優(yōu)點(diǎn),會(huì)比傳統(tǒng)的隨機(jī)梯度下降(SGD)alphakO(k^2)100-200alpha了,更多的alpha因子不會(huì)帶來(lái)太多的性能增長(zhǎng),遵循收益遞減法則。規(guī)模上限為200個(gè)因子,當(dāng)因子池達(dá)到200以保持因子總數(shù)不變。下面展示了增量組合模型優(yōu)化算法的主要步驟:Alphak個(gè)alpha因子,F(xiàn)={f1,f2,……,fk},權(quán)重集合W=(w1,w2,wk)alpha因子fnew。AlphaF*和對(duì)應(yīng)的單因子權(quán)重集合W*。算法流程:Alpha因子:AlphafnewAlphaF中。若該因子出現(xiàn)連續(xù)重復(fù)一元截面運(yùn)算符的因子(例如rank(rank($adjclose)))、僅為單特征因子(例如$adjclose)IC(缺失率過(guò)高、標(biāo)準(zhǔn)差過(guò)小、截面不重復(fù)數(shù)值太少)0.99足添加條件,跳過(guò)該因子。若滿足添加條件,則為該因子分配一個(gè)初始權(quán)重,即為單因IC值。AlphaICFAlpha因子f,計(jì)算或從緩存中獲取他們與目標(biāo)的平均相關(guān)性????IC均值。AlphaFAlphafF中的其他所有Alpha因子,計(jì)算或從緩存中獲取它們之間的平均相關(guān)性???(????(??),????(??)),也就是因子值的相關(guān)系數(shù)均值矩陣。梯度下降優(yōu)化因子權(quán)重:計(jì)算上述公式損失函數(shù),使用梯度下降方法(Adam算法)更1AlphaF那么找出權(quán)重wAlpha集合F和權(quán)重集合wAlpha因子和權(quán)重。ICIC。由于每次添加新因子后,都需要計(jì)算出目前因子池中單因子的IC和相關(guān)系數(shù),用于優(yōu)化權(quán)重,這將產(chǎn)生大量重復(fù)計(jì)算。因而我們將每次因子池中的因子表達(dá)式和因子值予以保存,每次計(jì)算IC和相關(guān)系數(shù)之前,將首先從保存的數(shù)據(jù)中查找,如果因子之前已存在,因子值數(shù)據(jù)直接調(diào)用即可,無(wú)需重復(fù)計(jì)算。這將大幅提升運(yùn)算效率,測(cè)試顯示大概可以節(jié)省10倍的運(yùn)算時(shí)間,原先在中證1000股票池中進(jìn)行30萬(wàn)步訓(xùn)練需要24小時(shí)以上,修改后僅需3-5小時(shí)。此外,我們?cè)诔跏技尤肓?0個(gè)人工因子,相當(dāng)于不斷尋找跟人工因子具有協(xié)同效應(yīng)的新因子。這些人工因子的表達(dá)式均可以用我們?cè)O(shè)置的特征和算子來(lái)表示。圖12:人工因子列表
因子類別 因子名稱 因子含義 因子表達(dá)式lnamihud_20d 20日Amihud非流動(dòng)性自然對(duì)數(shù) log(ts_mean(amihud,20))因子類別 因子名稱 因子含義 因子表達(dá)式lnto_20d 過(guò)去20個(gè)交易日的日均換手率對(duì)數(shù) ts_mean(lnto,20)vol_20d 過(guò)去20個(gè)交易日的波動(dòng)率 ts_mean(lnto,20)ret_20d 過(guò)去20個(gè)交易日的收益率 ts_pctchg(adjclose,dd)ppreversal 過(guò)去5日均價(jià)/過(guò)去60日均價(jià)-1 hlcut 收盤價(jià)切割振幅 _ts_fxcut_75(adjclose,lnhlret,20)tocut 收盤價(jià)切割換手率 _ts_fxcut_75(adjclose,lnto,20)trumr 切割真實(shí)波動(dòng)加權(quán)超額收益 _ts_umr_ewm(tr,ex_lnret,10,60)toumr 切割換手率加權(quán)超額收益 idskew_20d 過(guò)去20個(gè)交易日的日內(nèi)收益率偏度均值 ts_mean(rskew,20)idkurt_20d 過(guò)去20個(gè)交易日的日內(nèi)收益率峰度均值 ts_mean(rkurt,20)idjump_20d 過(guò)去20個(gè)交易日日內(nèi)極端收益之和 ts_sum(rjump,20)idmom_20d 過(guò)去20個(gè)交易日日內(nèi)溫和收益、隔夜收益之和 ts_sum(lnret-rjump,20)sdrvol_20d 過(guò)去20個(gè)交易日日內(nèi)波動(dòng)率的標(biāo)準(zhǔn)差除以均值 div(ts_std(rvol,20),ts_mean(rvol,20))sdrskew_20d 過(guò)去20個(gè)交易日日內(nèi)收益率偏度的標(biāo)準(zhǔn)差 ts_std(rskew,20)sdvvol_20d 過(guò)去20個(gè)交易日日內(nèi)成交量二階矩的標(biāo)準(zhǔn)差除以均值 arpp_1d_20d 基于1天周期計(jì)算的ARPP指標(biāo),20個(gè)交易日平滑 ts_mean(if_one_nan(touchup-touchdown)*arpp,20)apb_1d_20d 基于日內(nèi)行情計(jì)算的APB指標(biāo),20個(gè)交易日平滑 ts_mean(apb,20)rvolumr 切割分鐘收益波動(dòng)率加權(quán)超額收益 _ts_umr_ewm(rvol,ex_lnret,10,60)rskewumr 切割分鐘收益偏度加權(quán)超額收益 _ts_umr_ewm(rskew,ex_lnret,10,60)數(shù)據(jù)來(lái)源:東方證券研究所繪制我們統(tǒng)計(jì)了在三個(gè)股票池中,模型最后得到的因子組合中人工因子的保留情況。均任取一個(gè)隨機(jī)種子展示??梢钥吹?,整體人工因子保留比例并不高,其中sdrvol_20d在三個(gè)股票池中都展現(xiàn)出了與其他因子很強(qiáng)的協(xié)同效應(yīng)。圖13:DFQ模型因子組合中人工因子的保留情況滬深300中證500中證1000sdrvol_20dts_mean(apb,20)lnto_20drvolumrppreversalapb_1d_20dsdrvol_20dppreversalhlcutsdrvol_20dtrumrhlcutrvolumrtoumr數(shù)據(jù)來(lái)源:東方證券研究所繪制四、DFQ模型實(shí)驗(yàn)結(jié)果股票池:3005001000大,訓(xùn)練所需顯存越高,基本線性增長(zhǎng)。顯存占用也與特征數(shù)量有關(guān),在70個(gè)特征的情況下,3003000Mib,5005000Mib,100010000Mib。測(cè)試所用服務(wù)器顯存不足以進(jìn)行全市場(chǎng)訓(xùn)練,感興趣的投資者可自行嘗試。2.訓(xùn)練集、驗(yàn)證集、測(cè)試集:采用2015.1.1-2018.12.31的數(shù)據(jù)作為訓(xùn)練集,2019.1.1-2019.12.312020.1.1-2023.6.30為測(cè)試集。(1)L2數(shù)據(jù),L220132015年開(kāi)始。(2)IC達(dá)到最高點(diǎn)的步數(shù)為最優(yōu)迭代步數(shù),取此時(shí)的因子組合作為最優(yōu)因子組合。為提高運(yùn)算效率,訓(xùn)練集中的IC20天計(jì)算,驗(yàn)證集和測(cè)試集由于時(shí)間較短,采用每天計(jì)算的方式,考慮不同調(diào)倉(cāng)路徑避免誤差。(5)IC時(shí),收益率進(jìn)行截面中性化和標(biāo)準(zhǔn)化,不進(jìn)行缺失值填充。因子值進(jìn)行標(biāo)準(zhǔn)化,并使0來(lái)填充缺失值。調(diào)倉(cāng)頻率:挖掘月頻因子,考察因子預(yù)測(cè)未來(lái)20子同樣可以操作,但會(huì)增加運(yùn)算時(shí)間和顯存占用。模型參數(shù):圖14:DFQ模型主要參數(shù)設(shè)置參數(shù)類別 參數(shù)符號(hào) 參數(shù)含義 參數(shù)取值參數(shù)類別 參數(shù)符號(hào) 參數(shù)含義 參數(shù)取值Transformer參數(shù)
pool_capacity 池的容量,定義了可以同時(shí)存儲(chǔ)的因子表達(dá)式的最大數(shù)量。 200steps 訓(xùn)練過(guò)程中的總步數(shù),定義了模型訓(xùn)練的迭代次數(shù) 30000features_extractor_class 特征提取器的類別 Transformern_steps 每個(gè)訓(xùn)練批次的步數(shù) 2048n_epochs 每個(gè)訓(xùn)練批次的訓(xùn)練次數(shù) 10batch_size 批處理大小,每個(gè)訓(xùn)練批次中的樣本數(shù)量 256gamma 折扣因子,用于計(jì)算未來(lái)獎(jiǎng)勵(lì)的折現(xiàn) 1GAE(廣義優(yōu)勢(shì)估計(jì))的超參數(shù),用于權(quán)衡偏差和方差之間的平衡 0.95clip_range 用于裁剪代理?yè)p失的參數(shù) 0.2ent_coef 熵系數(shù),用于控制策略的探索性 0.1vf_coef 損失計(jì)算中的值函數(shù)系數(shù) 0.5max_grad_norm 梯度裁剪的最大值,用于防止梯度爆炸 0.5learning_rate 學(xué)習(xí)率,控制策略模型每次梯度下降更新時(shí)參數(shù)更新的幅度 0.001n_encoder_layers Transformer編碼器中的層數(shù)。編碼器層數(shù)決定了模型的深度 6模型中每個(gè)層的維度??刂颇P蛯挾?128n_head 多頭自注意力機(jī)制中的“頭”的數(shù)量 4d_ffn 隱藏層維度 2048在模型訓(xùn)練過(guò)程中應(yīng)用的丟棄率 0.1數(shù)據(jù)來(lái)源:東方證券研究所繪制由于我們已經(jīng)設(shè)置了表達(dá)式長(zhǎng)度閾值限制,無(wú)需懲罰表達(dá)式長(zhǎng)度。因此,我們將折扣因子設(shè)置為gamma=1(無(wú)折扣)。這將使得我們的模型試圖去尋找那些可能更長(zhǎng)但表現(xiàn)良好的alpha因子表達(dá)式,而不是傾向于選擇較短的表達(dá)式。由于搜索空間隨著表達(dá)式長(zhǎng)度的增加而指數(shù)級(jí)增長(zhǎng),這個(gè)選擇有助于鼓勵(lì)模型探索更復(fù)雜的解決方案。多種子訓(xùn)練:555算力:TensorGPU上運(yùn)行。如果一GPUTensor結(jié)構(gòu)通常CPUNumPyCPU-Tensor,GPU-TensorNumPy在計(jì)10000*10000CPUGPUTensor都比NumPy快,GPU版本的是近百倍的加速。需要注意的是,在不同pytorch版本下,運(yùn)算結(jié)果可能會(huì)出現(xiàn)差異,尤其是在一些涉及浮點(diǎn)運(yùn)算的情況下,但總體差距不大,并不會(huì)顯著影響模型結(jié)果。數(shù)據(jù)存儲(chǔ):qlib圖15:Tensor和NumPy的性能差異數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊我們展示三個(gè)股票池中的模型運(yùn)算耗時(shí),其中fps指一秒運(yùn)行的步數(shù),size指當(dāng)前因子池內(nèi)的單因子個(gè)數(shù)。均隨機(jī)選取一個(gè)種子??梢钥吹剑篺ps200著因子池內(nèi)單因子個(gè)數(shù)增多而迅速下降,當(dāng)size200fps10-2030w3-6圖16:滬深300股票池:size(單因子個(gè)數(shù)) 圖17:滬深300股票池:fps(一秒運(yùn)行的步數(shù)) 數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊 數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊有關(guān)分析師的申明,見(jiàn)本報(bào)告最后部分。其他重要信息披露見(jiàn)分析師申明之后部分,或請(qǐng)與您的投資代表聯(lián)系。并請(qǐng)閱讀本證券研究報(bào)告最后一頁(yè)的免責(zé)申明。2020 |DFQ18500股票池:size(單因子個(gè)數(shù))19500股票池:fps(一秒運(yùn)行的步數(shù))&wind資訊&wind資訊201000股票池:size(單因子個(gè)數(shù))211000股票池:fps(一秒運(yùn)行的步數(shù))&wind資訊&wind資訊|DFQ18500股票池:size(單因子個(gè)數(shù))19500股票池:fps(一秒運(yùn)行的步數(shù))&wind資訊&wind資訊201000股票池:size(單因子個(gè)數(shù))211000股票池:fps(一秒運(yùn)行的步數(shù))&wind資訊&wind資訊4.3特征與算子出現(xiàn)頻次我們展示三個(gè)股票池中,最終得到的因子組合中200個(gè)單因子的表達(dá)式長(zhǎng)度分布,以及所用到的特征與算子出現(xiàn)頻次。均隨機(jī)選取一個(gè)種子??梢钥吹剑海?)表達(dá)式長(zhǎng)度:6-7192,總體長(zhǎng)度適中。22300len20181614121086420數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊有關(guān)分析師的申明,見(jiàn)本報(bào)告最后部分。其他重要信息披露見(jiàn)分析師申明之后部分,或請(qǐng)與您的投資代表聯(lián)系。并請(qǐng)閱讀本證券研究報(bào)告最后一頁(yè)的免責(zé)申明。Elu(Ts_hhi($lncoret,40))Ts_fxcut_50($swing,$e…Ts_min(Hhi($l2c15),10)Softmax($l2c16)212123500LEN20181614121086420&wind資訊(2)特征出現(xiàn)頻次:30023500LEN20181614121086420&wind資訊(2)特征出現(xiàn)頻次:300500300EP2(TTM/總市值)500中TPER(目標(biāo)價(jià)隱含的收益率)最易出現(xiàn),說(shuō)明大票中基本面特征能起到比較重要的作用;中證1000中分鐘特征出現(xiàn)頻次最高,其中vvol(日內(nèi)成交量的波動(dòng)率,除以當(dāng)日成交量)因子最易出現(xiàn),說(shuō)明小票中高頻量?jī)r(jià)特征能起到比較重要的作用。25300&500&1000日度量?jī)r(jià)&wind資訊(3)算子出現(xiàn)頻次:三個(gè)股票池最終保留的單因子里,時(shí)序算子和截面算子出現(xiàn)頻次基本300Ts_pctchg_abs(Ts_pctchg_abs)500Quantile(1000Ts_var(d天的方差)23則較為復(fù)雜,出現(xiàn)頻次較低。有關(guān)分析師的申明,見(jiàn)本報(bào)告最后部分。其他重要信息披露見(jiàn)分析師申明之后部分,或請(qǐng)與您的投資代表聯(lián)系。并請(qǐng)閱讀本證券研究報(bào)告最后一頁(yè)的免責(zé)申明。Ts_corr($lnhlret,$ep2,20)Inv(Ts_ref($tper,40))Ts_mean($l2c4,20)Signed_power($l2c20,…Ts_product($cvpct,5)Ts_skew($adjlow,10)Fraction($adjtwap)|DFQ241000LEN20181614121086420&wind資訊基本面分鐘量?jī)r(jià)l2量?jī)r(jià)|DFQ241000LEN20181614121086420&wind資訊基本面分鐘量?jī)r(jià)l2量?jī)r(jià)Ts_mean($apb,20)Regression_proj($lnt…Ts_kurt($ep2,10)Ts_max_to_min($rkur…Ts_med($sqrskew,10)Ts_var($apb,60)Arc_tan($peg)金融工程|專題報(bào)告——DFQ強(qiáng)化學(xué)習(xí)因子組合挖掘系統(tǒng)圖26:滬深300&中證500&中證1000股票池:算子出現(xiàn)頻次數(shù)據(jù)來(lái)源:東方證券研究所&wind資訊單因子表現(xiàn)首先我們展示三個(gè)股票池中,最終得到的因子組合中200個(gè)單因子的權(quán)重分布,以及每個(gè)因子與其他因子相關(guān)系數(shù)絕對(duì)值的最大值。均隨機(jī)選取一個(gè)種子,并在訓(xùn)練集上計(jì)算單因子取值??梢钥吹剑涸谌齻€(gè)3003%0.01%。3001%。但可能出現(xiàn)50097%在傳統(tǒng)的Alpha因子選擇中,我們通常會(huì)剔除高相關(guān)的因子,以減少多重共線性的問(wèn)題。例如在DFQ遺傳規(guī)劃模型中,我們將挖掘得到的單因子按照50%的相關(guān)系數(shù)閾值進(jìn)行了過(guò)濾。而在此次的強(qiáng)化學(xué)習(xí)模型中,我們并未嚴(yán)格限制相關(guān)性范圍,單因子篩選僅通過(guò)損失函數(shù)自行完成。測(cè)試顯示,添加嚴(yán)格的單因子相關(guān)性約束后,合成因子組合性能會(huì)下降。1+1>2500a1a297%,然而,a1和a26%IC(4%5%),一個(gè)可能解釋是:雖然這些alpha因子高相關(guān),但他們的某些線性組合可能指向與原始方向完全不同的方向。假設(shè)線性空間中有兩個(gè)單位向量,兩個(gè)向量越相似,它們之間的差異向量就越接近垂直于原始向量。這意味著,即使兩個(gè)alpha因子高度相關(guān),它們的差異也可能指向一個(gè)全新的方向,這個(gè)方向可能包含有價(jià)值的信息。有關(guān)分析師的申明,見(jiàn)本報(bào)告最后部分。其他重要信息披露見(jiàn)分析師申明之后部分,或請(qǐng)與您的投資代表聯(lián)系。并請(qǐng)閱讀本證券研究報(bào)告最后一頁(yè)的免責(zé)申明。22Ts_mean($apb,20)Rank_div(Ts_log_pct…Ts_to_wmean(Regre…Truncate(Ts_rsi(Orth…Ts_ref(Ts_rank_ame…Ts_max_to_min(Qua…Fraction($ovpct)Ts_kurt(Quantile($lno…Signed_power($l2c20…Ts_to_max(Ortho(Ra…Ts_fxcut_75($adjclos…Ts_fxumr_50($sqrske…Ts_pctchg(Ts_delta($…Log(Neg(Ts_min_ma…Ts_product($cvpct,5)Demean(Inv(Ts_sum(…Ts_max_to_min(Ts_r…Ts_umr_ewm($tr,$ex…Ortho(Ts_coskew(Ts…Fraction(Truncate(Re…Ts_max(Multiply3($cv…Multiply3($apb,Sqrt(R…Mul(Rank_amean(Ra…Ts_corr($l2c13,Ts_m…Rank_gmean(Ts_ran…Ts_fxumr_75($cvpct,…Zscore(Poly_regressi…Max2(Ts_rank_amea…Ts_product(Regressi…Ts_log_pctchg(Ts_m…Regression_proj($l2c…Rank_gmean_amean…Ts_sum(Quantile(Inv(…Min2($wfr,Ts_std($ad…S_log_1p(Sub_add_d…Ts_fxumr_50(Ts_cov(…Ts_kurt(Power3(Max…Mul(Ts_var(Sub_add…Softmax($cret)Ts_umr_ewm($lnto,$…Ts_coskew(Ts_var($…Ts_diffcorr($l2c18,$a…Mul(Min3(Ts_wma($s…Ts_min_max_cps(Ra…Ts_to_ewm($rkurt,40)Relu(Curt(Leakyrelu(…Inv($bp)Demean(Umr(Min4($…Ts_mean($apb,20)Rank_div(Ts_log_pct…Ts_to_wmean(Regre…Truncate(Ts_rsi(Orth…Ts_ref(Ts_rank_ame…Ts_max_to_min(Qua…Fraction($ovpct)Ts_kurt(Quantile($lno…Signed_power($l2c20…Ts_to_max(Ortho(Ra…Ts_fxcut_75($adjclos…Ts_fxumr_50($sqrske…Ts_pctchg(Ts_delta($…Log(Neg(Ts_min_ma…Ts_product($cvpct,5)Demean(Inv(Ts_sum(…Ts_max_to_min(Ts_r…Ts_umr_ewm($tr,$ex…Ortho(Ts_coskew(Ts…Fraction(Truncate(Re…Ts_max(Multiply3($cv…Multiply3($apb,Sqrt(R…Mul(Rank_amean(Ra…Ts_corr($l2c13,Ts_m…Rank_gmean(Ts_ran…Ts_fxumr_75($cvpct,…Zscore(Poly_regressi…Max2(Ts_rank_amea…Ts_product(Regressi…Ts_log_pctchg(Ts_m…Regression_proj($l2c…Rank_gmean_amean…Ts_sum(Quantile(Inv(…Min2($wfr,Ts_std($ad…S_log_1p(Sub_add_d…Ts_fxumr_50(Ts_cov(…Ts_kurt(Power3(Max…Mul(Ts_var(Sub_add…Softmax($cret)Ts_umr_ewm($lnto,$…Ts_coskew(Ts_var($…Ts_diffcorr($l2c18,$a…Mul(Min3(Ts_wma($s…Ts_min_max_cps(Ra…Ts_to_ewm($rkurt,40)Relu(Curt(Leakyrelu(…Inv($bp)Demean(Umr(Min4($…27300weights4.00%3.00%2.00%1.00%0.00%-1.00%-2.00%-3.00%&wind資訊29500weights2.50%2.00%1.50%1.00%0.50%0.00%-0.50%-1.00%-1.50%-2.00%&wind資訊311000weights3.00%2.00%1.00%0.00%-1.00%-2.00%-3.00%&wind資訊有關(guān)分析師的申明,見(jiàn)本報(bào)告最后部分。其他重要信息披露見(jiàn)分析師申明之后部分,或請(qǐng)與您的投資代表聯(lián)系。并請(qǐng)閱讀本證券研究報(bào)告最后一頁(yè)的免責(zé)申明。Ts_mean($arpp,60)Arc_tan(Truncate($l2c14))Ts_pctchg_abs($l2c20,40)Ts_to_max($dp2,40)Sub_add_div(Ortho(Ts_…Ts_to_mean($cret,5)Ts_pctchg($l2c12,5)Ts_med(Pow(Neg(Elu(Z…Ts_product(Power2($l2c…Rank_div(Umr(Ts_cokur…Cut($l2c20,Quantile(Ma…Ts_cokurt($lnopenret,El…Ts_pctchg(Ts_var(Ts_m…Ts_triple_corr(Ts_to_mi…Ts_to_min(Ts_var(Ortho…Ts_to_min(Ts_to_min(T…Softmax_one(Inv(Ts_hhi…Ts_coskew($lncoret,$vh…Mean3($cvpct,Quantile(…Ts_product(Hhi($fyroe_r…Ts_pctchg(Arc_tan(Scal…Ts_mean(Regression_n…70.00%60.00%50.00%40.00%30.00%20.00%10.00%0.00%70.00%60.00%50.00%40.00%30.00%20.00%10.00%0.00%&wind資訊Umr($fyroe_resid,$vvol)Arc_tan($wfr)Ts_fxcut_75($adjclos…Rank_amean(Rank_…Ts_fxumr_50($apb,$l…Ts_med($sqrskew,10)Ts_kurt($ep2,10)Ts_cokurt($adjvolum…Ts_to_ewm($ex_lnlo…Ts_log_pctchg(Inv(El…Arc_tan(Regression_…Ts_kurt(Ts_skew(Cur…Ts_product(Regressi…Ts_max_to_min(Ts_…Div($lntwapret,$cret)Sub_add_div($lnret,$…Ts_kurt(Power3(Ts_r…Inv(Ts_sum($l2c8,5))Ts_fxumr_50(Ts_hhi(…Ts_max_to_min($lnto,5)
Ts_sum(Maxminnorm…Ts_umr_ewm($rvol,$…Min3(Ts_med($l2c9,4…Fraction($adjtwap)Ts_rank_amean($arp…Mul(Rank_amean(Ra…Softmax(Poly_regres…Ts_var(Rank_gmean…Ts_max_to_min($rsk…Poly_regression(Mul(…Ts_coskew(Zscore(T…Leakyrelu(Mean2(Ts_…Div(Mean2($l2c11,$a…&wind資訊32&wind資訊321000maxabscorr
Rank_div(Umr(Ts_co…Ortho($apb,$l2c12)Ts_pctchg_abs(Rank…Ts_product(Hhi($fyro…Ts_umr_ewm($rvol,$…|DFQ28300股票池:因子相關(guān)系數(shù)絕對(duì)值的最大值分布maxabscorr&wind資訊30|DFQ28300股票池:因子相關(guān)系數(shù)絕對(duì)值的最大值分布maxabscorr&wind資訊30500股票池:因子相關(guān)系數(shù)絕對(duì)值的最大值分布maxabscorrDiv($adjopen,Ts_fxu…Ts_coskew($l2c9,$cf…Umr(Ts_mon(Ts_min…Ts_pctchg_abs(Ts_c…Ts_to_mean(Ts_ske…Ts_pctchg($l2c12,5)Ts_pctchg_abs(Ts_to…Ts_var(Ts_to_mean(…Ts_triple_corr(Tanh(T…Inv(Ts_min_max_cps…Ts_to_wmean(Ts_fxc…2323rankic8.00%6.00%4.00%2.00%0.00%-2.00%-4.00%-6.00%-8.00%-10.00%&wind資訊rankic10.00%8.00%6.00%4.00%2.00%0.00%-2.00%-4.00%-6.00%-8.00%&wind資訊rankic15.00%10.00%5.00%0.00%-5.00%-10.00%-15.00%rankic8.00%6.00%4.00%2.00%0.00%-2.00%-4.00%-6.00%-8.00%-10.00%&wind資訊rankic10.00%8.00%6.00%4.00%2.00%0.00%-2.00%-4.00%-6.00%-8.00%&wind資訊rankic15.00%10.00%5.00%0.00%-5.00%-10.00%-15.00%&wind資訊24Ts_med($arpp,10)Ts_pctchg_abs($arpp,10)Ts_cov(Arc_tan($apb),…Ts_cov(Poly_regressio…Ts_pctchg_abs($l2c20,…Ts_skew(Log(Ts_rank_…Div($lnopenret,Cut(Fra…Pow(Ts_rank_amean(L…Inv($rjump)Ts_to_wmean(Ts_fxcut…Ts_fxcut_75(Cut(Ts_co…Ts_fxcut_75(Sub(Cut($…Ts_pctchg($l2c15,10)Softmax($l2c16)Ts_coskew(Umr($epfy,…Ts_min(Hhi($l2c15),10)Ts_pctchg($l2c12,5)Zscore(Multiply3($adjv…Ts_var(Ts_sum($sqrsk…If_then_else(Softmax_o…Ts_ir($l2c4,40)Ts_to_mean(Ts_hhi(Ts…Multiply3($l2c4,$lnlowr…Ts_rankcorr(Ts_med($l…Div($apb,$cfp)Elu(Ts_hhi($lncoret,40))Ts_min(Multiply3(Ts_m…Fraction(Cut($citic3inde…Ts_to_wmean(Ts_log_…Div($lnopenret,Cut(Fra…Pow(Ts_rank_amean(L…Ts_pctchg_abs(Multiply…Inv($rjump)Ts_pctchg_abs(Ts_to_…Div($lnhighret,$apb)Ts_var(Ts_to_mean($f…Ortho(Sign(Multiply3($t…Ts_to_mean($cret,5)Ts_product($rkurt,10)Ts_fxumr_75($l2c11,In…Ts_pctchg($l2c11,40)Div($tper,Zscore($rkurt))Ts_min(Hhi($l2c15),10)Ts_sum($cret,5)Ts_min_max_cps(Ts_p…Rank(Ts_skew(Regres…Ts_mean(Regression_…Ts_mean($apb,20)Ts_corr($rjump,$citic1i…Ts_ref($cfp,60)Ts_max_to_min($rske…Min4($sp,$ex_lnopenre…S_log_1p(Regression_…Rank_gmean_amean_…Ts_partial_corr(Rank_g…Ts_skew(Ts_fxcut_50(…Ts_to_max(Signed_po…Rank_gmean_amean_…Regression_neut(Min4(…Inv(Ts_to_wmean($sqr…Ts_to_ewm($l2c11,20)Ts_pctchg(Ts_partial_c…Inv(Ts_wma(Ts_pctchg…Sigmoid(Ts_pctchg_ab…Ts_ir($tper,40)s_pctchg_abs($vhhi,10)Umr($l2c13,Ts_ir(Ts_p…Signed_power($rskew,…Ts_kurt($lnopenret,10)Ts_delta($cvpct,60)Ts_fxumr_50(Sign(Ts_…Rank_gmean($peg,Lea…Hhi(Ts_fxumr_50(Rank…Ts_var(Quantile(Ts_me…Ts_umr_ewm($rvol,$ex…Ts_max(Ts_to_mean(P…Ts_min_max_cps($ep2…Ts_var(Rank_gmean_a…Mul(Rank_amean(Rank…Ts_mean($apb,20)Min3(Ts_med($l2c9,40)…s_corr($lnhlret,$ep2,20)Ts_med($arpp,10)Ts_pctchg_abs($arpp,10)Ts_cov(Arc_tan($apb),…Ts_cov(Poly_regressio…Ts_pctchg_abs($l2c20,…Ts_skew(Log(Ts_rank_…Div($lnopenret,Cut(Fra…Pow(Ts_rank_amean(L…Inv($rjump)Ts_to_wmean(Ts_fxcut…Ts_fxcut_75(Cut(Ts_co…Ts_fxcut_75(Sub(Cut($…Ts_pctchg($l2c15,10)Softmax($l2c16)Ts_coskew(Umr($epfy,…Ts_min(Hhi($l2c15),10)Ts_pctchg($l2c12,5)Zscore(Multiply3($adjv…Ts_var(Ts_sum($sqrsk…If_then_else(Softmax_o…Ts_ir($l2c4,40)Ts_to_mean(Ts_hhi(Ts…Multiply3($l2c4,$lnlowr…Ts_rankcorr(Ts_med($l…Div($apb,$cfp)Elu(Ts_hhi($lncoret,40))Ts_min(Multiply3(Ts_m…Fraction(Cut($citic3inde…Ts_to_wmean(Ts_log_…Div($lnopenret,Cut(Fra…Pow(Ts_rank_amean(L…Ts_pctchg_abs(Multiply…Inv($rjump)Ts_pctchg_abs(Ts_to_…Div($lnhighret,$apb)Ts_var(Ts_to_mean($f…Ortho(Sign(Multiply3($t…Ts_to_mean($cret,5)Ts_product($rkurt,10)Ts_fxumr_75($l2c11,In…Ts_pctchg($l2c11,40)Div($tper,Zscore($rkurt))Ts_min(Hhi($l2c15),10)Ts_sum($cret,5)Ts_min_max_cps(Ts_p…Rank(Ts_skew(Regres…Ts_mean(Regression_…Ts_mean($apb,20)Ts_corr($rjump,$citic1i…Ts_ref($cfp,60)Ts_max_to_min($rske…Min4($sp,$ex_lnopenre…S_log_1p(Regression_…Rank_gmean_amean_…Ts_partial_corr(Rank_g…Ts_skew(Ts_fxcut_50(…Ts_to_max(Signed_po…Rank_gmean_amean_…Regression_neut(Min4(…Inv(Ts_to_wmean($sqr…Ts_to_ewm($l2c11,20)Ts_pctchg(Ts_partial_c…Inv(Ts_wma(Ts_pctchg…Sigmoid(Ts_pctchg_ab…Ts_ir($tper,40)s_pctchg_abs($vhhi,10)Umr($l2c13,Ts_ir(Ts_p…Signed_power($rskew,…Ts_kurt($lnopenret,10)Ts_delta($cvpct,60)Ts_fxumr_50(Sign(Ts_…Rank_gmean($peg,Lea…Hhi(Ts_fxumr_50(Rank…Ts_var(Quantile(Ts_me…Ts_umr_ewm($rvol,$ex…Ts_max(Ts_to_mean(P…Ts_min_max_cps($ep2…Ts_var(Rank_gmean_a…Mul(Rank_amean(Rank…Ts_mean($apb,20)Min3(Ts_med($l2c9,40)…s_corr($lnhlret,$ep2,20)Ts_max_to_min($rske…Ts_med(Rank_mul($fyr…Ts_ref($l2c11,10)Ts_ref($arpp,5)Ts_hhi($l2c9,60)Tanh(Ts_min_max_diff(…Ts_skew(Ts_skew(Reg…Fraction(Ts_to_wmean(…Ts_cokurt($citic1index_…Ts_to_ewm($apb,10)Regression_neut(Min4(…Rank_div($cret,Ts_corr…Ts_pctchg(Min2(Rank_…Ts_pctchg(Ts_partial_c…Ortho(Ts_coskew(Ts_h…Ts_to_mean(Ts_min_m…Mean2(Poly_regression…Fraction($adjtwap)Softmax(Poly_regressi…Quantile(Fraction($adjv…Ts_umr_ewm($tr,$ex_l…Ts_skew($adjlow,10)Softmax(Ts_cov(S_log…Rank_by_side(Rank_g…Sub_add_div($swing,…Ts_log_pctchg($ep2,20)Ts_rank_amean($l2c…Max4($cret,Rank_gm…Ortho($l2c4,Fraction(…Ts_sum(S_log_1p(Ts…Ts_corr($l2c13,Ts_m…Ts_triple_corr(Ts_var…Ts_min_max_diff(Ma…Ts_ref(Ts_std(Inv($rj…S_log_1p(Sub_add_d…Ts_product(Regressi…Ts_kurt(Ts_skew(Cur…Sub_add_div($vvol,$…Ts_var(Ts_max_to_m…Max2($l2c10,Ts_hhi(…Ts_kurt($ep2,10)Signed_power(Ts_su…Sub_add_div(Ts_hhi(…Div(Ts_std($fyroe_re…Ts_umr_ewm($lnto,$…Ts_kurt($adjhigh,40)Rank_div($adjpreclos…Ts_log_pctchg(Ts_st…Rank_amean(Ts_fxu…Min3(S_log_1p(Ts_w…Div(Div(Ts_sum($am…Ts_fxcut_75($adjclos…|DFQ接下來(lái)我們展示三個(gè)股票池中,最終得到的因子組合中200個(gè)單因子在訓(xùn)練集中的RANKIC、RANKIC_IR(未年化)分布。均隨機(jī)選取一個(gè)種子,并在訓(xùn)練集上計(jì)算單因子取值??梢钥吹剑?jiǎn)我蜃娱g的績(jī)效表現(xiàn)差異較大。這主要是由于我們?cè)谕诰蛞蜃拥倪^(guò)程中,僅關(guān)注合成因子的IC,IC下限。測(cè)試顯示,不加限制,可以在相同步數(shù)的情況下得到更優(yōu)的合成因子組合。33300RANKIC分布圖34:滬深300股票池:?jiǎn)我蜃佑?xùn)練集RANKIC_IR(未年化)分布rankic_ir1.0
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 機(jī)械行業(yè)促銷計(jì)劃總結(jié)
- 健康行業(yè)采購(gòu)工作總結(jié)
- 重要工程安保工作的系統(tǒng)總結(jié)計(jì)劃
- 科技產(chǎn)品設(shè)計(jì)師的智能體驗(yàn)與科技感
- 水務(wù)文化建設(shè)的探索計(jì)劃
- 中小學(xué)了解學(xué)習(xí)歷史英雄人物故事主題班會(huì):紅色人物1
- 2023年云南省臨滄市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2022年浙江省舟山市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2024年山西省忻州市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2022年浙江省麗水市公開(kāi)招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 裝配式鋼筋混凝土簡(jiǎn)支T梁設(shè)計(jì)
- COMMERCIAL INVOICE 商業(yè)發(fā)票
- 大氣課程設(shè)計(jì)-—袋式除塵器
- 普天超五類檢測(cè)報(bào)告
- 會(huì)計(jì)師事務(wù)所業(yè)務(wù)培訓(xùn)制度
- CMM2-18錨桿機(jī)(新)說(shuō)明書
- 12噸汽車起重機(jī)基本技術(shù)規(guī)格資料
- WEB開(kāi)發(fā)基礎(chǔ)-2021秋本-計(jì)算機(jī)科學(xué)與技術(shù)本復(fù)習(xí)資料-國(guó)家開(kāi)放大學(xué)2022年1月期末考試復(fù)習(xí)資料
- 安徽省政協(xié)機(jī)關(guān)文件材料歸檔范圍
- 本質(zhì)安全理論綜述研究
- 代建項(xiàng)目管理工作大綱
評(píng)論
0/150
提交評(píng)論