前幾日係屋企清理舊書,汁汁下搵到本以前大學非常推崇既 linear regression 書,名就唔多講了因為我睇完發覺中晒伏,但點解會咁蠢睇完先覺得中伏?
1. 原來有本更容易理解既 LR 書 (有興趣學 LR 想上手,可睇 Regression Modeling Strategies by Harrell Jr)
2. 我自己可能有bias,因為以前自己睇完本書,做埋啲題目後你覺得啲野易左,所以諗返點解啲野咁易都要花咁多時間睇。
3. LR 其實再熟都無咩大實戰用途,反而要睇多啲 quantile regression / ML書,實戰應用性高以倍計,因為做trade唔係一刀切,畫一條線對做trade作用不大
好喇返正題, 今日主要講 time series model 對比 cross sectional model。大家可能即刻諗到一定係 time series linear regression,即係你可能用百幾日既股票回報, regress on 一堆因子回報,從而得出個 Beta之類,而啲係 time series regression。
而 cross sectional regression / cross sectional model,其實唔係做而行既朋友未必知,好多 quant fund 設計股票 long/short 或只 long 策略個陣,好多時會傾向用橫截面(cross sectionall)模型,而唔係純粹依賴時間序列(time series)模型。而個分別可能就係好多retail trader 做左交易好多年,但係預測層面上都未必做得好好既原因。就咁聽落去,用邊種model好似只係一個模型選擇既問題,但實際上牽涉到唔少野,例如預測穩定性﹑交易成本、風險管理等問題,之後再講。
好多人用歷史價格數據作為基礎,用時間序列模型做預測,然後決定係買入定係賣出。但係如果你有幾年交易經驗既話,你會發現,特別係股票市場,公司既基本面突然變動、跨行業、概念輪動 (theme rotation) 等等唔同因素會令到單靠時間序列模型好易受到局限,亦容易產生參數不穩定、過度擬合等問題。點解? 因為你用幾十日什至百幾日之前既數據去做regression計Beta,其實可能10日之前既數據對預測Beta既作用已經唔高,更可況係幾十日之後。所以,不論係學術界定行內都會考慮用另一角度,就係橫截面模型去做預測。簡單講句,就係橫截面模型,以每日(或更短時間,如intraday level)唔同標的 (例如唔同股票) 當下既相對表現為基礎去做預測,令到交易策略更容易捕捉市場既斷面效應同相對優勢。同埋從某種程度上講,橫截面模型更加符合「相對價值交易」既理念,即係話就算我當個市場走勢不明朗,但總有某啲股票既表現比其他股票黎得強勢,所以只要Long/short 岩股票 或者 Long/Short 岩股票同指數期貨,其實都係會有肉食。
Time series beta 實戰性低
好多時time series beta係歷史上睇都係chok上chok落,唔stable,所以好多PM都唔中意用time series beta,唔係既話要經常rebalance,大大增加交易成本。
參數不穩定同過度擬合
個個市場都係架喇,變得好快,但股票市場變化得特別快,因為每隻股票都有自己公司特性,所以好多時過去既歷史參數係唔適合長期適用。好多時候喺回測時參數,例如estimate出黎既Beta,可能會令個策略表現得好,但一到實盤交易,就PK散晒。
非平穩性假設問題
時間序列模型普遍要求數據平穩,而現實中股票既價格序列往往都係非平穩既,有結構性斷裂既現象,所以搞到個預測結果唔夠穩健同準確。
橫截面模型將焦點由單一股票既歷史數據轉向股票之間既相對表現。具體黎講,佢會將同一時點所有股票既各項指標(例如近期回報、估值指標、波動率等唔同metrics)一齊拿出來做比較,再按照某一組合規則(例如排名、打分、因子值加權)生成一個「橫截面」既數據矩陣。
呢個矩陣之後就會用作生成交易信號:例如挑選回報排名最高前 10% 既股票做多,而將回報最低既 10% 股票做空。咁樣既可以做到捕捉市場相對差,亦可以直接達到市場中性,從而大幅降低系統性風險。
做更有效既預測
因為市場information decay快,取短期大量數據比長期大量數據做預測更附合金融nature,所以做預測會更準確同robust。橫截面模型反映短期內各股票之間既表現差異,特別適合捕regime change / theme change 情況下,由機構調倉、消息效應或基本面變化帶來既短期波動。換句說話講,好多時以前用time series regression做既預測,因為 X variables 用左太遠以前既數據,本身無咩有用既 information contained,所以做regression後做的預測,好多時都唔準。但而家你做 cross sectional regression / cross sectional model (e.g. 排名) 係用緊岩岩過左既一兩日什至係一兩分鐘既大量數據去做預測,而唔係用緊一隻股票的大量過往(=無咩用)既數據去做預測。咁當唔同股票的某啲特性的值有轉變,令到Long/Short極端兩組股票的回報差異係可能去到mid single digit 什至low double digit annualized returns的話,咁你用而啲特性轉變去做預測就更有把握可extract alpha。
簡單講,而個係大量無用(long term) 既數據 (time series) V.S. 大量有用(short term)既數據(cross sectional) 既分別
相對穩健的參數依賴性
因為模型主要係基於相對排序而非歷史數據既絕對值,所以對於參數估計既要求相對較低。即使市場狀況改變,橫截面模型依然能保持一定既穩健性,而唔需要頻繁調整模型參數
風險分散同市場中性
做股票 Long/Short 策略時,橫截面模型能夠自動對沖市場波動。因為買入賣出既股票往往分別代表市場中高估與低估既部分,兩者形成市場中性組合,可以大幅降低系統性風險
操作性更高
橫截面模型可以每日統一根據最新數據重新排序,每隻股票既數據更新後就可立刻反映係交易信號上,對於實戰黎講,特別對PM/trader黎講係一個相當靈活既工具
黎到而度,今日最有價值個part,我舉個實際以前經歷做例子:
以前曾經管理過一個有 500 隻股票 Universe (唔係日日都有500隻股position當然),其中每日都會根據過去 20 個交易日回報率、波動率同成交量同埋由alternative data而建立一個打分系統。打分公式如下:
加權回報率係 20%;
波動率作調整權重 15%(低波動得分較高);
成交量穩定性占 15%;
alternative data metrics 50%
經過每日打分,從 500 隻股票中挑選出得分最高的前 30-50 隻做long,同時從得分最低的一組中篩選出 30-50 隻做short。
回測方法,大路野黎:
資料整理
先以標準化順序將所有股票數據抽取出來,確保每一日既資料排列一致,避免因排列錯序而影響後續排名。
因子計算
依據每日數據,計算各隻股票既標準化回報、標準差﹑成交量波動及alternative data metrics等features,用向量化方法(例如 NumPy 或 Pandas)避免迴圈排序帶來既退化性解問題 (之前文章講過)。
信號生成與組合構建
根據當日計算既綜合得分,自動產生交易信號:得分由高至低排列,採取等權重或者風險平價分配各標的權重。
模擬交易
再進一步引入交易成本、滑點模擬,測試從回測環境到實盤環境中,策略靈敏度是否穩定,有冇因資料更新或排列方式不同而產生結果偏差。
風險控制
最後,設置單一股票及組合風險上限,防止極端行情發生時出現個別標的風險過集中既情況。
最核心想做好long/short既朋友留意,核心核心核心係,用得cross sectional方法,以我認為,必須要有捕捉長期effects,亦要有個dynamic系統去捉短期effects。
唔少人都知P/E的 90th 及 10th percentile long short 股票既長期 returns difference係明顯,但偏偏好多人唔識/唔考慮用佢做一個filter去選出一啲比較大機會會買/short岩方向的股票,而只專注係short term層面上。你諗下,點解咁多PM manage portfolio 個陣,交低個algo比條靚,叫佢每日開市前後要微調策略參數,或者肉眼見到有good risk adjusted returns opportunity時侯要人手去trade姐? 就係因為個市唔係日日都realize緊long term effects,有時係會short term effects in dominant。變相你想個portfolio更加robust,你必須要有個系統 (be it semi automatic because of 加入人手調整參數, 或者 fully automatic 情況下考慮好多種市況),去short term adpatively 應對個市況。
例如Trump突然話要加大對某行業支持力度,扔多啲錢落去,咁個system靜係考慮 P/E因子去做long/short 咪有可能會死/唔賺錢。而個時侯就係要short term effect dominant,long/short 岩個行業股票,而平時無咩short term effect dominant時就按long term effect 去long/short。而個先係 cross sectional long/short 既重點。
希望今日 high-level 的講解可以令大家轉一轉個研究方向,除左time series研究外,行內用的更多是 cross sectional 分析,而個做法可能令大家係做預測時更 accurate and precise。加油! 好快會出埋上一次 intraday trading 教學片,遲下見!
Cheers,
阿程
Ron chan
2025-08-18 04:47:45 +0000 UTCSY
2025-08-06 11:49:06 +0000 UTCsurewin algo
2025-08-06 11:07:51 +0000 UTC