WaVeFuse: Regime-Adaptive Equity Index Forecasting via Channel-Wise Wavelet Denoising and Vertical Attention Fusion
Organizations: Department of Computer Science and Engineering, Indian Institute of Technology Jodhpur, Jodhpur, Rajasthan, India
Abstract
Hybrid Deep Learning for equity index forecasting is limited by three problems: propagation of OHLCV noise into derived technical indicators (TIs), channel-indiscriminate multi-scale decomposition that conflates heterogeneous frequency signatures, and static multi-branch fusion that cannot adapt to market regime shifts. WaVeFuse addresses these limitations through a unified dual-branch architecture. Symlet-4 wavelet denoising (level 2, MAD soft threshold) suppresses microstructure noise in OHLCV. Seven low-lag TIs computed from denoised prices are encoded by a causal channel-wise continuous wavelet transform (Morlet, 32 scales) into a per-timestep scale-space matrix. A CNN-BiLSTM branch captures temporal dynamics, while a dual-layer Transformer (heads=4, dk in {16, 32}) models inter-scale spectral dependencies, and their representations are integrated by a 2-token softmax gate Vertical Attention Fusion (VAF) that dynamically reweights branches as market regimes shift. Evaluated under walk-forward validation (WFV) on KOSPI, DAX, NYSE Composite, and Russell 2000 (2010-2023), WaVeFuse achieves R2 = 0.81-0.96 and directional accuracy 70.5-78.3%. It outperforms seven state-of-the-art models by 8.9-20.2% MAE across twelve dataset-period configurations. Diebold-Mariano statistics (4.62-10.38, p<0.001) confirm superiority over a well-tuned XGBoost benchmark across four indices. Ablation verifies component-wise contributions. Under realistic backtesting with 10 basis point transaction costs, WaVeFuse's directional strategy achieves a mean Sharpe ratio of 3.69 across four markets and limits maximum drawdown to 7.5% during the COVID-19 crash. With 152k parameters (0.68MB) and sub-1.3ms GPU inference, WaVeFuse delivers a computationally efficient, regime-robust framework suitable for research and decision-support deployment.
Figures & tables
| Abbrev. | Full Form | Abbrev. | Full Form |
|---|---|---|---|
| Architecture & Models | |||
| WaVeFuse | Wavelet-based Vertical Fusion architecture | VAF | Vertical Attention Fusion |
| CWWT | Channel-Wise Continuous Wavelet Transform | CNN | Convolutional Neural Network |
| BiLSTM | Bidirectional Long Short-Term Memory | LSTM | Long Short-Term Memory |
| BiGRU | Bidirectional Gated Recurrent Unit | TCN | Temporal Convolutional Network |
| DNN | Deep Neural Network | ANN | Artificial Neural Network |
| Paper | Decomposition Applied to TIs | Channel-Wise Multi-Scale TI Processing | Dynamic Fusion Mechanism | Datasets | Key Innovation | Primary Limitation Relative to WaVeFuse |
| Rezaei et al. (2021) | No | No | Linear aggregation | 4 indices (2010-2019) | CNN feature extraction per IMF | Univariate price, shallow layers, no TI denoising |
| Ge (2025) | No | No | Linear aggregation | 8 indices (2013-2022) | MEMD + Aquila-optimized LSTM | High compute, OHLCV only, static fusion |
| Yu et al. (2025) | No | No | Linear aggregation | 3 indices (2012-2021) | GA-optimized VMD + TCN | Univariate close, no channel-wise TI scales |
| Gong and Xing (2024) | No | No | Linear aggregation | 2 indices high/low (2010-2023) | ICEEMDAN + PSO-VMD re-decomp. + BiLSTM-SAM-TCN | Price-only, static fusion |
| Li et al. (2026) | Partial (level-1 SWT on derived deviation) | No | None (single-branch) | 2 stocks (2010-2023) | SWT preprocessing + multi-layer BiLSTM | Only 2 assets, no channel-wise TI CWT, no fusion |
| Tian et al. (2025) | No | No | End-to-end joint training | 3 indices (2017-2024) | BiLSTM + mod. Transformer + TCN | Univariate close, no explicit dynamic fusion |
| Name of Index | Symbol | Duration | Total Trading Days | Training Data | Test Data |
| KOSPI | ˆ KS11 | 01-01-2010 – 31-12-2023 | 3,448 | 3,083 | 365 |
| DAX | ˆ GDAXI | 01-01-2010 – 31-12-2023 | 3,552 | 3,187 | 365 |
| NYSE Composite | ˆ NYA | 01-01-2010 – 31-12-2023 | 3,522 | 3,157 | 365 |
| Russell 2000 | ˆ RUT | 01-01-2010 – 31-12-2023 | 3,522 | 3,157 | 365 |
| Indicator | Formula |
| Relative Strength Index (RSI) | |
| (We use to reduce lag. gains/losses are smoothed exponentially.) | |
| Stochastic %K (SO%K) | |
| where = current close, = highest high over days, = lowest low over days. | |
| Commodity Channel Index (CCI) | |
| where , SMA = simple moving average, MAD = mean absolute deviation, . |
| Metric | Mathematical Expression | Purpose and Meaning |
| Huber Loss | = | Robust loss used during training. It combines MSE for small errors and MAE for large errors. |
| RMSE | Root Mean Squared Error on inverse-scaled closing prices. Penalizes large errors. | |
| MAE | Mean Absolute Error on inverse-scaled prices. It measures average prediction deviation. | |
| MAPE | Mean Absolute Percentage Error. Scale-independent measure of prediction accuracy. | |
| Coefficient of determination, fraction of price variance explained by the model. | ||
| Directional Accuracy (DA) | Percentage of correctly predicted price movement directions (up/down). |
| Category | Parameter | Symbol / Value | Rationale |
| Data | Input window size | ( SEQ_LENGTH ) | Captures short to medium term temporal dynamics |
| OHLCV features | ( Open, High, Low, Close, Volume ) | Preserves microstructure by avoiding close only bias | |
| TI channels | ( RSI, Stoch%K, CCI, OBV, ATR, Williams%R, ROC ) | Low-lag, momentum focused signals | |
| Final test set | days (last year) | Strict chronological hold-out for out of sample evaluation | |
| Train/val in WFV | Train years, Val days, Step days | Rolling origin validation mimicking live deployment | |
| Preproc. | Denoising | Sym-4, level | Removes high frequency noise while preserving trends |
| Model | KOSPI | DAX | NYSE | Russell 2000 | ||||||||
| MAE | RMSE | MAPE | MAE | RMSE | MAPE | MAE | RMSE | MAPE | MAE | RMSE | MAPE | |
| BiLSTM | 15.28 | 18.84 | 0.61 | 219.36 | 275.03 | 1.40 | 194.38 | 238.15 | 1.11 | 37.28 | 46.14 | 0.96 |
| CNN | 17.62 | 22.15 | 0.71 | 255.30 | 330.00 | 1.63 | 225.43 | 281.67 | 1.29 | 43.47 | 54.92 | 1.12 |
| Transformer | 13.81 | 16.73 | 0.55 | 199.74 | 246.78 | 1.27 | 176.24 | 214.58 | 1.01 | 33.94 | 41.28 | 0.87 |
| WaVeFuse | 12.30 | 14.96 | 0.49 | 178.34 | 217.93 | 1.14 | 157.51 | 192.21 | 0.90 | 30.34 | 37.13 | 0.78 |
| WaVeFuse vs. BiLSTM: | 19.5 | 20.6 | 19.7 | 18.7 | 20.8 | 18.6 | 19.0 | 19.3 | 18.9 | 18.6 | 19.5 | 18.8 |
| Dataset | Duration | Reference | MAE | RMSE | MAPE |
| S&P 500 | 01/01/2016 to 29/06/2021 | Ji et al. (2024) | 29.02 | 38.04 | 0.78 |
| WaVeFuse | 25.03 ( 13.8% ) | 33.43 ( 12.1% ) | 0.650 ( 16.7% ) | ||
| DJI | 01/01/2016 to 29/06/2021 | Ji et al. (2024) | 205.86 | 271.53 | 0.68 |
| WaVeFuse | 174.75 ( 15.1% ) | 232.70 ( 14.3% ) | 0.555 ( 18.4% ) | ||
| IXIC | 01/01/2016 to 29/06/2021 | Ji et al. (2024) | 126.17 | 165.71 | 1.00 |
| WaVeFuse | 110.27 ( 12.6% ) | 146.15 ( 11.8% ) | 0.850 ( 15.0% ) |
| Index | DM Stat | -value | Paired | -value | DA (%) | |
| KOSPI | 4.62 | 0.001 | 4.38 | 0.001 | 0.9640 | 78.26 |
| DAX | 10.38 | 0.001 | 13.97 | 0.001 | 0.8098 | 70.51 |
| NYSE | 10.24 | 0.001 | 14.33 | 0.001 | 0.8444 | 75.94 |
| Russell 2000 | 10.06 | 0.001 | 14.94 | 0.001 | 0.8276 | 71.23 |
| Dataset | Parameters | Training Time (s) | Inference Time (ms/sample) | Model Size (MB) |
| KOSPI | 152,116 | 101.63 | 0.95 | 0.68 |
| GDAXI | 99.42 | 0.98 | ||
| NYSE Composite | 109.36 | 1.26 | ||
| Russell 2000 | 101.11 | 1.22 |
| KOSPI | DAX | NYSE | Russell 2000 | |||||||||
| Variant | MAE | RMSE | MAPE(%) | MAE | RMSE | MAPE(%) | MAE | RMSE | MAPE(%) | MAE | RMSE | MAPE(%) |
| WaVeFuse_no_wavelet_denoising | 14.60 | 18.23 | 0.58 | 212.28 | 265.81 | 1.36 | 187.60 | 234.11 | 1.06 | 35.92 | 45.08 | 0.92 |
| WaVeFuse_no_CWWT | 13.71 | 17.07 | 0.55 | 198.95 | 247.64 | 1.27 | 176.09 | 218.35 | 1.00 | 33.77 | 42.26 | 0.87 |
| WaVeFuse_no_VAF | 13.00 | 15.97 | 0.52 | 188.72 | 231.79 | 1.21 | 166.96 | 205.44 | 0.95 | 31.98 | 39.51 | 0.82 |
| WaVeFuse_MLP_decoder | 12.74 | 15.51 | 0.51 | 184.82 | 225.89 | 1.18 | 163.25 | 199.04 | 0.93 | 31.47 | 38.59 | 0.81 |
| WaVeFuse_proposed | 12.30 | 14.96 | 0.49 | 178.34 | 217.93 | 1.14 | 157.51 | 192.21 | 0.90 | 30.34 | 37.13 | 0.78 |
| Removed Component | KOSPI | DAX | NYSE | Russell | Mean |
| Wavelet Denoising | +18.7% | +19.0% | +19.1% | +18.4% | +18.8% |
| CWWT Spectral Encoding | +11.5% | +11.6% | +11.8% | +11.3% | +11.6% |
| VAF Adaptive Fusion | +5.7% | +5.8% | +6.0% | +5.4% | +5.7% |
| BiLSTM Decoder (vs. MLP) | +3.6% | +3.6% | +3.6% | +3.7% | +3.6% |
| Index | Strategy | CAGR | Ann. Vol | Sharpe | 95% CI (Sharpe) | Max DD | PF | Win Rate | Final Value (currency units) |
| KOSPI | 34.4% | 5.9% | 4.73 | [4.37, 5.09] | 1.9% | 2.86 | 63.0% | 12,760 | |
| 22.3% | 5.1% | 3.63 | [3.35, 3.91] | 1.9% | 2.73 | 61.2% | 11,809 | ||
| XGBoost Baseline | 10.3% | 5.9% | 1.37 | — | 5.0% | 1.43 | 46.0% | 10,847 | |
| Buy & Hold | 4.8% | 14.2% | 0.19 | — | 16.3% | — | — | 10,478 | |
| GDAXI | 13.3% | 5.4% | 1.96 | [1.78, 2.14] | 4.3% | 1.62 | 46.6% | 11,138 | |
| 9.7% | 4.2% | 1.76 | [1.60, 1.92] | 2.3% | 1.90 | 51.2% | 10,837 |
| Metric | XGBoost | Buy & Hold | ||
| Average CAGR (%) | 24.6 | 19.0 | 6.8 | 7.1 |
| Average Sharpe Ratio | 3.69 | 3.16 | 0.77 | 0.33 |
| Average Maximum Drawdown (%) | 3.7 | 2.5 | 6.1 | 14.8 |
| Average Win Rate (%) | 57.1 | 56.4 | 42.6 | — |
| Consistency (Sharpe ¿ 1.5) | 4/4 | 4/4 | 1/4 | 0/4 |
| Risk Control (Max DD ¡ 5%) | 3/4 | 4/4 | 1/4 | 0/4 |
| Metric | WaVeFuse (Dir.) | WaVeFuse (Risk-Adj.) | XGBoost | Buy & Hold |
| COVID-19 Crash (Feb–Apr 2020) | ||||
| Total Return (%) | -0.39 | -6.15 | -0.61 | -11.89 |
| Annualized Return (%) | -1.97 | -27.40 | -3.05 | -47.16 |
| Sharpe Ratio | -0.12 | -2.85 | -0.17 | -1.09 |
| Maximum Drawdown (%) | -7.50 | -6.54 | -7.60 | -34.05 |
| Volatility (%) | 18.97 | 11.67 | 19.39 | 49.03 |