EconBase
← Back to paper

Bitcoin Price Direction Prediction via Regime-Aware Multi-Modal Fusion of Social Sentiment and Technical Features

Extracted main text — title through conclusion, appendix excluded. This is what our citation measures are computed over, published so the extraction can be checked by eye.

75,987 characters · 47 sections · 42 citation commands

Rendered from LaTeX for readability, not typeset faithfully. Citation keys are highlighted; maths is left as source; figures, tables and equation environments are summarised rather than reproduced; unrecognised commands are greyed out so nothing is silently dropped. Email addresses are removed.

Bitcoin Price Direction Prediction via Regime-Aware Multi-Modal Fusion of Social Sentiment and Technical Features

abstractBitcoin price prediction on sub-daily timescales represents one of the hardest open problems in computational finance. The asset exhibits fat-tailed return distributions, non-stationary dynamics, structural breaks triggered by macroeconomic and regulatory events, and a price discovery mechanism that is demonstrably influenced by social discourse on platforms such as Reddit and Twitter. Conventional learning-based approaches fuse OHLCV technical features with sentiment scores via static concatenation, applying identical fusion weights irrespective of whether the market is in a stable or volatile regime. This design choice is inconsistent with the behavioural finance literature, which documents that retail crowd sentiment is most predictive during high-volatility and crisis phases and largely noisy during calm, trending periods. This paper proposes the Regime-Aware Multi-Modal Learning (RAML) framework, which conditions the fusion of social sentiment and technical price features on a dynamically detected binary market state. Rolling 24-hour return volatility partitions the observation space into stable and volatile regimes; a learnable sigmoid gate then continuously adjusts the weight of the sentiment embedding relative to the price embedding, such that crowd signals are trusted more during high-volatility episodes and technical dynamics dominate during stable phases. The system is evaluated on 3,491 aligned hourly observations spanning July 2024 to September 2025, constructed by inner-joining Bitcoin OHLCV data retrieved via yfinance with Reddit /r/Bitcoin sentiment scores derived using ProsusAI/FinBERT. Four model configurations are compared, namely a price-only BiLSTM, a sentiment-only feedforward classifier, a static-concatenation BiLSTM, and the proposed RAML architecture, across two prediction horizons of 3 and 6 hours. A systematic three-variant ablation study independently validates the contribution of the sentiment branch, the regime detection module, and the adaptive fusion weighting. RAML achieves macro-F1 of 0.5474 on the 3-hour horizon and 0.5513 on the 6-hour horizon, together with the highest AUC among all models on the 3-hour task (0.5084), indicating superior probability calibration. The ablation study confirms that removing any single component uniformly degrades both F1 and AUC, and that substituting concatenation for adaptive weighting produces catastrophic recall collapse on the 6-hour task (F1: 0.14). These findings establish regime-conditioned adaptive fusion as a necessary and coherent design principle for multi-modal financial forecasting.
IEEEkeywordsBitcoin price prediction, market regime detection, multi-modal learning, social sentiment analysis, FinBERT, bidirectional LSTM, \textbf{adaptive fusion gate}, \textbf{cryptocurrency forecasting}, \textbf{OHLCV}, \textbf{behavioural finance}.

Introduction

\lettrine[lines=3]{B}{itcoin} has undergone a remarkable transformation from a niche cryptographic experiment into a globally recognised financial asset. As of mid-2025, Bitcoin commands a market capitalisation exceeding one trillion US dollars, supports daily spot trading volumes that rival those of major equity indices, and has attracted institutional participation from sovereign wealth funds, publicly listed corporations, and regulated exchange-traded products across multiple jurisdictions coinmarketcap2025. This institutional legitimacy has brought with it a corresponding intensification of academic interest in the question of whether Bitcoin prices can be forecast with statistically meaningful accuracy.

The challenge is formidable. Bitcoin returns are leptokurtic, with tail risk substantially exceeding that of traditional asset classes baur2018bitcoin. The underlying order books operate continuously across fragmented global exchanges, creating a 24-hour, 7-day-a-week market that is susceptible to sudden liquidity shocks, exchange-specific dislocations, and non-fundamental price movements driven by social contagion. Unlike equity markets, which are anchored by discounted cash flow fundamentals and subject to regulatory circuit breakers, Bitcoin lacks an intrinsic value floor. This makes its price dynamics qualitatively different from those of classical financial instruments and motivates the search for novel signal sources beyond canonical technical indicators.

The Role of Social Discourse

A compelling body of evidence suggests that social media sentiment, particularly on Reddit and Twitter, carries Granger-causal information with respect to near-term Bitcoin price movements bollen2011twitter, Abraham2018, Shen2019reddit. The mechanism is consistent with noise-trader theory: retail investors form herds, transmit sentiment through social networks, and collectively move prices on timescales of hours before institutional arbitrage can correct the deviation delong1990noise. During periods of heightened market stress, this channel becomes particularly potent; crash and hype cycles are preceded and accompanied by measurable shifts in the sentiment distribution of cryptocurrency discussion boards philippas2019media.

The Regime Modulation Problem

Despite this evidence, the standard modelling approach in the literature treats all market conditions as equivalent. Technical features and sentiment scores are concatenated and fed to a sequential classifier, with fixed weights applied to both signal sources regardless of the prevailing market state. This design choice is inconsistent with the empirical finding that sentiment predictability is regime-dependent. Baker and Wurgler baker2007investor demonstrate that investor sentiment has the strongest cross-sectional predictive power during periods of uncertainty and high volatility, and is largely uninformative when price dynamics are governed by fundamental anchors during calm trending phases. Tetlock tetlock2007giving establishes analogous results for news media sentiment in equity markets. Applying identical fusion weights across stable and volatile regimes therefore conflates conditions under which sentiment is signal with those in which it is noise, degrading both calibration and directional accuracy.

Contributions

This paper addresses the regime modulation problem with a single, interpretable architectural innovation: a market-regime-conditioned adaptive fusion gate that dynamically adjusts the relative contribution of sentiment and price embeddings based on a detected binary market state. The gate is formulated as:

equation[equation omitted — 178 chars of source]

where $r_t \in \{0,1\}$ is a binary regime label derived from rolling volatility, $\theta_r$ is a learnable scalar, and $\sigma(\cdot)$ is the logistic sigmoid.

The specific contributions of this work are as follows.

enumerate• Regime-Aware Fusion Architecture. A principled adaptive fusion gate that conditions multi-modal weighting on a volatility-derived regime signal, requiring no additional labelled data. • Reproducible Hourly Pipeline. A complete data construction pipeline aligning 14 months of hourly yfinance OHLCV data with Reddit /r/Bitcoin FinBERT scores at hourly resolution, spanning diverse bull, bear, and consolidation market phases. • Systematic Ablation. A three-variant ablation study that independently quantifies the contribution of the sentiment branch, the regime gate, and the adaptive weighting, confirming each component as necessary. • Honest Calibration Benchmark. An empirically grounded characterisation of the performance ceiling imposed by the near-efficient nature of the hourly Bitcoin market, providing a realistic baseline for future work on this task.

The remainder of this paper is organised as follows. Section (ref) surveys related work. Section (ref) describes the data construction pipeline. Section (ref) presents the proposed architecture. Section (ref) details the experimental setup. Section (ref) reports and analyses results. Section (ref) discusses implications and limitations. Section (ref) concludes.

Related Work

Technical Analysis and Sequential Models

Early deep learning approaches to cryptocurrency price prediction concentrated on exploiting patterns in historical OHLCV sequences. McNally et al. mcnally2018predicting provided an early demonstration that LSTM networks outperform ARIMA on Bitcoin direction prediction, establishing the sequential modelling paradigm that the field subsequently built upon. Kim et al. kim2018predicting introduced user comment volume as an auxiliary signal alongside price data, observing that spikes in social activity preceded price fluctuations on daily horizons.

Chen et al. chen2020bitcoin conducted a systematic study of LSTM architectures on Bitcoin, demonstrating that bidirectional variants (BiLSTM) consistently outperform unidirectional counterparts on directional classification tasks, owing to their capacity to exploit both past and future context within the input window. Liu et al. liu2020predicting extended this by integrating a temporal attention mechanism, allowing the model to differentially weight timesteps within the input sequence. Our price branch adopts the two-layer BiLSTM architecture established by these works as a validated, compact baseline while retaining interpretability.

Sentiment Analysis in Cryptocurrency Markets

The influence of social media on financial market returns has been studied extensively since the seminal work of Bollen et al. bollen2011twitter, who demonstrated a statistically significant causal relationship between Twitter mood dimensions and Dow Jones Industrial Average movements. Abraham et al. Abraham2018 established analogous findings for Bitcoin specifically, showing statistically significant correlations between Reddit post volume, sentiment polarity, and near-term price direction on the sub-weekly timescale.

More recent work has replaced lexicon-based sentiment with transformer-based financial language models. FinBERT liu2021finbert, a domain-adapted variant of BERT pre-trained on financial corpora, substantially outperforms traditional lexicons such as VADER and Loughran-McDonald on financial sentiment classification by capturing contextual nuance in financial language. CryptoBERT huang2023cryptobert extends this direction by pre-training on cryptocurrency-specific discussion data, achieving further improvements on crypto-domain sentiment tasks. Both models have been integrated into price prediction pipelines with consistently positive results he2023multi, li2023predicting. In this work, sentiment features are derived from the ProsusAI/FinBERT implementation applied to Reddit /r/Bitcoin posts, with aggregation at hourly resolution.

Multi-Modal Fusion Strategies

The dominant paradigm for combining sentiment and price modalities in the literature is static feature concatenation, which appends sentiment embeddings to price feature vectors before the classification head jiang2021applications, he2023multi. While straightforward, this approach treats the two information sources symmetrically at all times, applying identical implicit weights irrespective of the prevailing market condition.

Attention-based cross-modal fusion has been proposed as an alternative that allows the model to selectively attend to different modalities. Yang et al. yang2021 apply cross-modal attention between price and news embeddings for cryptocurrency prediction, observing improvements over concatenation baselines. He et al. he2023multi propose multi-head attention over sentiment and price sequences, but their fusion mechanism operates without explicit regime conditioning, and is evaluated on daily rather than hourly horizons. Lu et al. lu2022 demonstrate the general power of learnable gating in multi-modal systems within the computer vision and language context; we translate the gating principle to financial time series with explicit regime supervision.

Market Regime Detection

Market regime modelling has a long history in financial econometrics. Hamilton hamilton1989new introduced the Hidden Markov Model (HMM) for Markov-switching dynamics in macroeconomic time series, a framework that has been widely applied to financial markets ang2002regime. Gu et al. gu2021regime extend this tradition using machine learning, employing deep clustering and unsupervised LSTM encoders to detect latent multi-state market regimes from high-dimensional factor data.

For our purposes, ML-based regime detection introduces a risk of overfitting on the limited training window and reduces interpretability. We instead adopt a simple median-split volatility threshold, which produces a balanced regime distribution by construction, aligns with the empirical observation that rolling volatility is the dominant differentiator between market states, and is directly interpretable to practitioners. The choice is supported by evidence in Ang and Bekaert ang2002regime that volatility-based switching models capture the regime structure relevant to cross-asset prediction with high fidelity.

Regime-Conditioned Prediction

Wei et al. wei2023 propose a regime-switching framework for cryptocurrency price prediction that conditions model selection on detected market states, demonstrating that different models perform optimally in different regimes on daily prediction tasks. Their work motivates our approach but differs in two critical respects: they switch between entirely separate models (rather than continuously modulating a fusion gate), and their evaluation is at daily resolution. The distinction matters: daily resolution smooths intra-day noise, whereas hourly prediction requires the model to handle the raw microstructure of the price process.

Literature Comparison

Table (ref) situates this work relative to the most closely related prior literature across five dimensions.

table[table omitted — 1,325 chars of source]

To the best of our knowledge, no prior work simultaneously achieves all five properties: hourly prediction granularity, explicit binary regime conditioning, an adaptive end-to-end trainable fusion gate, social sentiment integration via a financial language model, and a systematic ablation study.

Data Construction

Data Sources

The final dataset is constructed by aligning three heterogeneous data sources at hourly resolution via inner join on UTC timestamp. Figure (ref) provides a schematic overview of the complete construction pipeline.

figure*[figure* omitted — 507 chars of source]

Bitcoin OHLCV via yfinance. Hourly Open, High, Low, Close, and Volume data for the BTC-USD trading pair were retrieved using the yfinance Python library, which supports a maximum historical window of 730 days for hourly granularity. The raw series covers approximately July 2023 to July 2025. After computing derived features (see Section (ref)), removing NaN-initialisation rows, and performing the inner join with the sentiment data, the effective window narrows to July 2024 -- September 2025, yielding 14 months of aligned hourly observations that span multiple market phases: a recovery and consolidation period through mid-2024, a bullish breakout in late 2024 and early 2025 that drove prices past \$120,000 USD, and a corrective phase through mid-2025.

Reddit /r/Bitcoin Sentiment (Kaggle). A publicly available Kaggle dataset provides Reddit posts from /r/Bitcoin and adjacent cryptocurrency subreddits spanning January 2016 to September 2025, collected via the PRAW API from communities including r/CryptoCurrency, r/BitcoinMarkets, r/ethtrader, r/CryptoMarkets, and \texttt{r/defi}. The dataset includes pre-computed ProsusAI/FinBERT liu2021finbert scores for each post: \texttt{finbert_score} (composite polarity), \texttt{finbert_bullish}, \texttt{finbert_bearish}, and \texttt{finbert_neutral} probabilities, along with \texttt{sentiment_strength}. The FinBERT model was fine-tuned using agreement-based labelling generated from two Gemma 3 4B models; posts with label disagreement were excluded during training to reduce noisy labels. Posts were grouped by UTC hour and aggregated to produce four hourly features: mean FinBERT composite score, mean bullish probability, mean bearish probability, and post count per hour. The post count serves as a proxy for discussion intensity, which is independently informative as a crowd-attention signal. An enhanced crypto-specific VADER lexicon containing over 2{,}000 crypto-related terms is also included in the dataset, though only the FinBERT scores are used in the proposed model.

Bitcoin Market Data with U.S. Treasury & Google News Sentiment (2022--2025). The second Kaggle dataset, titled Bitcoin Market Data with U.S. Treasury & Google News Sentiment (2022--2025), integrates daily Bitcoin market data, U.S. Treasury holdings series, and Google News-based sentiment scores at daily resolution from December 1, 2022 to November 8, 2025. Bitcoin price and volume data are sourced via Coinbase through the ccxt library, Treasury series from the U.S. Treasury API, and sentiment from Google News queries spanning topics including Bitcoin, Ethereum, Binance Coin, Web3, Binance, Coinbase, market events, Crypto Twitter, Reddit cryptocurrency communities, and broader crypto market news. Sentiment scoring employs CryptoBERT huang2023cryptobert (\url{https://huggingface.co/kk08/CryptoBERT}), with values offset by one day to prevent look-ahead bias: each row $K$ corresponds to the sentiment of day $K{-}1$. The weighted_sentiment column represents a weighted average of title-level and body-level article sentiment scores retrieved from these queries. This dataset is not a component of the proposed RAML model; it contributes exclusively the auxiliary \texttt{weighted_sentiment} feature used in comparative ablation experiments, providing a news-domain complement to the Reddit community-domain FinBERT signal.

Feature Engineering

Five technical features are derived from the hourly OHLCV series to capture momentum, trend, and volatility dynamics:

Hourly log-return:

equation[equation omitted — 75 chars of source]

where $c_t$ denotes the closing price at hour $t$.

Rolling volatility (24-hour):

equation[equation omitted — 114 chars of source]

where $\bar{r}_t$ is the mean return over the same window. This quantity serves as the primary regime signal.

Relative Strength Index (14-period):

equation[equation omitted — 106 chars of source]

where $\overline{G}_t$ and $\overline{L}_t$ are the exponentially weighted average gains and losses over the preceding 14 hours, respectively.

Short-window moving average:

equation[equation omitted — 91 chars of source]

Long-window moving average:

equation[equation omitted — 95 chars of source]

The complete price feature vector at time $t$ is therefore $\mathbf{x}^{(p)}_t = [\textit{open}, \textit{high}, \textit{low}, \textit{close}, \textit{volume}, r_t, \sigma_t, \mathrm{RSI}_t, \mathrm{MA}^{(7)}_t, \mathrm{MA}^{(30)}_t]^{\top} \in \mathbb{R}^{10}$. The sentiment feature vector is $\mathbf{x}^{(s)}_t = [\bar{f}_t, \bar{b}^+_t, \bar{b}^-_t, \bar{s}_t, n_t]^{\top} \in \mathbb{R}^5$, comprising mean FinBERT score, mean bullish probability, mean bearish probability, mean sentiment strength, and post count.

Regime Labelling

A binary regime label is assigned at each timestep by comparing the rolling volatility $\sigma_t$ to the global median computed over the full dataset:

equation[equation omitted — 184 chars of source]

The median-split construction yields a balanced regime distribution across the full dataset. Figure (ref) shows the observed distribution in the test window, where 59.4% of hours fall in the volatile regime and 40.6% in the stable regime. The asymmetry relative to the global 50/50 split arises because the test period (July--September 2025) coincides with elevated volatility following the corrective phase visible in Figure (ref).

figure*[figure* omitted — 435 chars of source]
figure*[figure* omitted — 388 chars of source]
figure*[figure* omitted — 611 chars of source]

Target Variable

Binary direction labels are constructed for two forward-looking prediction horizons:

equation[equation omitted — 165 chars of source]

A label of 1 indicates that the closing price $h$ hours ahead is strictly higher than the current closing price, i.e., an upward price move. The 3-hour and 6-hour horizons are chosen to reflect actionable intraday trading windows that are short enough to maintain predictive relevance yet long enough to transcend the bid-ask noise of minute-level data.

Feature Correlation Analysis

Figure (ref) displays the Pearson correlation matrix of all 17 features and both target labels. Several structural patterns are noteworthy.

figure*[figure* omitted — 935 chars of source]

Price levels (open, high, low, close, MA-7, MA-30) exhibit near-perfect pairwise correlations (approaching $+1.00$), which motivates the use of returns and volatility as the operative price features for the model, with the raw level variables serving only as inputs to the sliding window that the BiLSTM learns to contextualise. Rolling volatility ($\sigma_t$) shows a moderate negative correlation with absolute price levels ($r \approx -0.37$), reflecting the empirical regularity that elevated volatility tends to coincide with market corrections and drawdowns in this dataset window. The regime label exhibits strong positive correlation with volatility ($r = +0.74$) by construction, and moderate negative correlation with price levels.

Sentiment features are weakly but positively correlated with price levels ($r \approx +0.08$ for mean_finbert), consistent with the noise-trader channel: sustained bullish community sentiment co-occurs with elevated prices, but the relationship is too weak for direct linear prediction. The bullish and bearish probability features exhibit a strong negative cross-correlation ($r = -0.74$), consistent with their design as complementary outputs of the FinBERT classification head. Both target labels show near-zero linear correlation with all features, confirming that the prediction task requires non-linear temporal pattern recognition rather than linear regression.

Dataset Statistics

After feature computation, NaN removal from rolling window initialisation, and inner-join alignment across all three sources, the final dataset is summarised in Table (ref).

table[table omitted — 1,021 chars of source]

The near-balanced label distribution (approximately 51--52% Up) confirms that neither horizon exhibits a systematic directional bias, and that random guessing would yield approximately 50% accuracy and 0.50 F1. All reported improvements above these baselines therefore reflect genuine predictive information.

Proposed Methodology

Architecture Overview

The RAML framework processes the price and sentiment signal streams through two parallel encoding branches before combining them via a dynamically gated fusion module conditioned on the detected market regime. Figure (ref) provides a schematic of the dual-branch architecture, and Figure (ref) illustrates the conceptual behaviour of the adaptive gate across regime states.

figure*[figure* omitted — 538 chars of source]
figure*[figure* omitted — 580 chars of source]

Price Branch

The price branch receives a sliding window of the most recent $L = 24$ hourly observations of the ten price features, $\mathbf{X}^{(p)}_{t} \in \mathbb{R}^{24 \times 10}$. A two-layer bidirectional LSTM encodes the sequence:

equation[equation omitted — 144 chars of source]

where the hidden state dimension is $d=64$ per direction, yielding a concatenated forward-backward hidden state of dimension $2d = 128$. The final hidden state is projected to a compact 32-dimensional embedding:

equation[equation omitted — 159 chars of source]

Dropout with probability $p_d = 0.3$ is applied between the two BiLSTM layers and again before the linear projection, regularising the model against the limited training set size.

Sentiment Branch

The sentiment branch processes the same 24-hour sliding window of the five FinBERT sentiment features, $\mathbf{X}^{(s)}_t \in \mathbb{R}^{24 \times 5}$, through a separate two-layer BiLSTM with identical architectural hyperparameters ($d=64$), producing a 32-dimensional sentiment embedding:

equation[equation omitted — 158 chars of source]

where $\mathbf{h}^{(s)}_t \in \mathbb{R}^{128}$ is the corresponding BiLSTM hidden state. The architectural symmetry between branches is deliberate: by giving each branch equal representational capacity, we ensure that it is the adaptive gate --- not a capacity imbalance --- that drives the relative contribution of each modality at inference time.

Regime Detection

Market regime is detected using the rolling 24-hour volatility measure $\sigma_t$ defined in Eq. (ref) and binarised according to Eq. (ref). This scalar binary signal is computed from the input data prior to training and is not a learned parameter; it serves as a contextual label provided to the fusion gate to select the appropriate weighting policy. The choice of a simple threshold over more sophisticated approaches (e.g., HMMs, $k$-means over latent representations) is motivated by three considerations: (i) interpretability --- a volatility threshold is immediately actionable and explainable to practitioners; (ii) stability --- threshold-based detection produces deterministic, reproducible labels unlike stochastic EM-based methods; (iii) sufficiency --- on the near-binary stable/volatile distinction that is operationally relevant for the fusion gate, rolling volatility provides adequate separability as evidenced by Figure (ref).

Adaptive Fusion Gate

The regime label $r_t \in \{0, 1\}$ is passed through a learnable linear transform followed by sigmoid activation to produce the continuous fusion weight:

equation[equation omitted — 113 chars of source]

where $\theta_r$ is a single scalar parameter trained by backpropagation. The fused embedding is then:

equation[equation omitted — 161 chars of source]

The behaviour of the gate follows directly from the sign and magnitude of $\theta_r$. When $r_t = 1$ (volatile regime) and $\theta_r > 0$, $w_t = \sigma(\theta_r) > 0.5$, upweighting the sentiment branch. When $r_t = 0$ (stable regime), $w_t = \sigma(0) = 0.5$ exactly, defaulting to equal weighting from which the stronger price signal effectively dominates. If the training data were to produce $\theta_r < 0$, the interpretation would invert; in practice, the learned value of $\theta_r$ is positive, consistent with the hypothesis that sentiment is more informative during volatility.

Importantly, the gate requires only one additional learnable parameter ($\theta_r$) and zero additional labelled data, making it a maximally parsimonious extension of the static fusion baseline.

Classification Head

The fused embedding is passed through a two-layer feedforward network with intermediate ReLU activation:

equation[equation omitted — 185 chars of source]

where $\mathbf{W}_1 \in \mathbb{R}^{16 \times 32}$, $\mathbf{w}_2 \in \mathbb{R}^{16}$, $b_2 \in \mathbb{R}$. The output $\hat{y}_t \in (0,1)$ is the predicted probability of an upward price move; the binary prediction is obtained by thresholding at 0.5. Binary cross-entropy is minimised end-to-end:

equation[equation omitted — 138 chars of source]

Training Procedure

Algorithm (ref) summarises the complete training procedure.

algorithm[algorithm omitted — 1,840 chars of source]

The entire model, including both BiLSTM branches, the fusion gate parameter $\theta_r$, and the classification head, is trained jointly by backpropagation through the fused embedding. This end-to-end training is critical: it allows the gradient signal from the classification loss to flow back through the gate and simultaneously shape both the regime sensitivity $\theta_r$ and the embedding representations in each branch.

Model Summary

Table (ref) summarises the complete hyperparameter configuration.

table[table omitted — 846 chars of source]

Experimental Setup

Train/Test Split

A strict chronological split is employed throughout all experiments to prevent look-ahead bias. The training set spans July 2024 to June 2025 (2,146 observations); the test set spans July 2025 to September 2025 (1,345 observations). This yields a 61.5/38.5 split. No random shuffling is applied at any stage. The held-out test period encompasses the corrective phase following the late-2024 bull run, representing a qualitatively distinct market environment from the training distribution and therefore constituting a genuine out-of-distribution evaluation.

Baseline Models

Three baseline configurations are compared against the proposed RAML:

B1 -- Price-only BiLSTM. An identical two-layer BiLSTM architecture to the price branch of RAML, trained solely on the ten price features with no sentiment input. This baseline isolates the upper bound of pure technical analysis and directly tests whether OHLCV features carry sufficient signal for hourly direction prediction.

B2 -- Sentiment-only Feedforward Classifier. A three-layer feedforward network (128-64-1) trained on the five FinBERT sentiment features without any price input. This baseline quantifies the standalone predictive power of Reddit social sentiment, independent of price dynamics. It also serves as a stress test for the common research claim that sentiment alone is sufficient for cryptocurrency forecasting.

B3 -- Static Concatenation BiLSTM. A BiLSTM trained on all 15 features (ten price features and five sentiment features) concatenated into a single input vector, without regime-aware gating. This is the de-facto standard multi-modal fusion baseline in the literature and the direct comparison point for evaluating whether the adaptive gate provides measurable benefit over naive feature-level fusion.

Evaluation Metrics

Performance is reported using five complementary binary classification metrics: Accuracy (fraction of correct predictions), Precision (fraction of predicted-up that is actually up), Recall (fraction of actual-up that is correctly predicted), F1 score (harmonic mean of precision and recall, the primary ranking metric), and AUC (area under the ROC curve, measuring the quality of the predicted probability ranking). All metrics are computed on the held-out test set only. F1 is chosen as the primary ranking metric because it is robust to the mild class imbalance present in both horizons and provides a single-number summary of the precision-recall trade-off. AUC is reported as a secondary metric because it captures probability calibration, which is operationally critical for risk-weighted trading strategies.

Ablation Study Design

Three systematic ablation variants are evaluated to decompose the contribution of each architectural component:

A1 -- No Sentiment Branch. The sentiment BiLSTM is removed entirely; only the price embedding feeds the classifier. This isolates the contribution of the sentiment branch and tests whether social signals carry incremental information beyond what the price branch alone provides.

A2 -- No Regime Gate. Both price and sentiment embeddings are combined with fixed equal weights ($w_t = 0.5$ for all $t$), eliminating the adaptive gating mechanism while retaining both modalities. This tests whether the regime detection module provides measurable benefit over simple averaging.

A3 -- No Fusion Weighting. The adaptive weighting is replaced by direct concatenation of the two 32-dimensional embeddings, yielding a 64-dimensional input to the classifier. This reverts to the static concatenation strategy of B3 but within the dual-branch architecture, testing whether the improvement of RAML over B3 arises from the dual-branch structure or specifically from the adaptive weighting.

Computational Environment

All experiments were conducted on a Lenovo Legion 5 laptop configured as follows: Intel Core i7-14700HX processor (20 cores, boost to 5.5\,GHz), 16\,GB DDR5-5600 MHz RAM, NVIDIA GeForce RTX 5060 GPU (8\,GB GDDR7 VRAM). The implementation uses PyTorch paszke2019pytorch with CUDA 12.x acceleration. Training one model variant for 30 epochs on the 2,146-row training set requires approximately 45 seconds on the stated hardware. All seven model variants (four baselines/proposed, three ablations) were trained independently from random initialisation to prevent cross-contamination.

Results

Baseline Comparison

Table (ref) reports the full performance of all four models on both prediction horizons. Figures (ref) and (ref) display the metric profiles as grouped bar charts.

table*[table* omitted — 1,382 chars of source]
figure*[figure* omitted — 482 chars of source]
figure*[figure* omitted — 430 chars of source]

The following observations emerge:

Price-only BiLSTM (B1). On the 3-hour task, B1 performs essentially at random (Acc: 0.4883, F1: 0.4468, AUC: 0.4968). On the 6-hour task, B1 undergoes near-complete recall collapse (Rec: 0.0916, F1: 0.1563), predicting downward movement almost exclusively. This is a known failure mode of LSTM models on noisy binary targets: when the training loss is dominated by a slightly imbalanced gradient, the model collapses to the majority prediction. The result confirms that OHLCV features alone carry insufficient directional signal on hourly Bitcoin, consistent with studies on near-market efficiency at this timescale urquhart2016inefficiency.

Sentiment-only classifier (B2). B2 achieves the highest raw F1 on the 3-hour task (0.6579) and competitive performance at 6 hours (0.5822). However, inspection of Figure (ref) reveals that this F1 is driven by near-maximal recall (0.9067), meaning the model predicts “up” almost universally. Its AUC of 0.4938 at 3 hours falls below the random baseline of 0.5, demonstrating that despite high F1 the model's predicted probabilities are actually inversely ranked relative to the true outcomes --- a failure of probability calibration that would render it dangerous in a risk-aware trading context.

Static concatenation (B3). B3 fails to improve upon B2 on the 3-hour task (F1: 0.4366 vs. 0.6579), demonstrating that naive addition of price features to sentiment can actively degrade performance. This counterintuitive result arises because the price branch introduces conflicting signal that the classifier must resolve without guidance. Its 6-hour performance is stronger (F1: 0.5844, AUC: 0.5253), possibly because the additional price features help stabilise predictions at the longer horizon where the sentiment signal is less informative.

Proposed RAML model. RAML achieves the highest F1 at 3 hours (0.5474) and 6 hours (0.5513), and the highest AUC at 3 hours (0.5084). Its recall profile (0.5778 at 3h, 0.6090 at 6h) is the most balanced among all models that exceed the random AUC threshold, reflecting the regime gate's ability to moderate the majority- class bias that afflicts B1, B2, and B3.

F1 and AUC Trajectory Analysis

Figures (ref) and (ref) plot F1 and AUC jointly as a function of model complexity from left (price-only) to right (regime-aware), with the random baseline of 0.50 annotated.

figure*[figure* omitted — 436 chars of source]
figure*[figure* omitted — 401 chars of source]

The trajectory plots make two structural patterns visible. First, the AUC of the sentiment-only model (B2) falls below 0.5 on the 3-hour task despite high F1, confirming the degenerate majority-class strategy discussed above. Second, RAML is the unique model that achieves above-random performance on both F1 and AUC simultaneously at the 3-hour horizon, which is the most demanding joint criterion and the one most relevant for practical deployment.

Confusion Matrix Analysis

Figure (ref) presents the confusion matrices for all four models on the 3-hour prediction horizon. These complement the aggregate metrics by revealing the directional bias of each model's prediction strategy.

figure*[figure* omitted — 1,382 chars of source]

The confusion matrices reveal fundamentally different prediction strategies across models. B1 (Price-only) distributes predictions roughly uniformly, with nearly identical “Pred Up” counts for both true classes (277 each), indicating the model has failed to learn any directional discriminant. B2 (Sentiment-only) almost never predicts “Down” (77 Down predictions out of 1,345 total), achieving its high F1 purely by class-bias exploitation. B3 (Static Concat) exhibits the inverse pathology, heavily favouring “Down” predictions (418 + 427 = 845 total Down predictions), likely because the price branch's weak directional signal combines with the sentiment signal in a way that pushes the model toward the majority class of the training distribution.

RAML is the only model that produces a reasonably symmetric confusion matrix, predicting “Up” in 396 out of 686 true-up instances (recall: 0.577) and correctly identifying 294 out of 659 true-down instances (specificity: 0.446). The asymmetry toward “Up” prediction is modest and reflects the slight 51.6% Up prevalence in the test set, as opposed to the severe degenerate biases observed in B1--B3.

Radar Chart Analysis

Figure (ref) presents the model comparison radar chart for the 3-hour horizon, visualising all five metrics simultaneously.

figure*[figure* omitted — 495 chars of source]

The radar chart makes the balanced advantage of RAML visually evident. The sentiment-only model's polygon is strongly distorted toward the recall vertex, consistent with its majority-class strategy. The price-only and static concatenation models form similar but smaller pentagons. RAML occupies a larger, more symmetric polygon that does not sacrifice any single dimension to inflate the others.

Ablation Study

Table (ref) presents the ablation results. Figures (ref) and (ref) visualise the metric profiles for each variant.

table*[table* omitted — 1,229 chars of source]
figure*[figure* omitted — 526 chars of source]
figure*[figure* omitted — 467 chars of source]

Effect of removing the sentiment branch (A1 vs. Full). Removing the sentiment BiLSTM causes the largest performance degradation across both horizons when measured by AUC and F1 jointly. On the 3-hour task, F1 drops from 0.5474 to 0.4441 ($\Delta\,{F1} = -0.1033$), and AUC drops from 0.5084 to 0.4766 ($\Delta\,{\mathrm{AUC}} = -0.0318$). The effect is more dramatic on the 6-hour horizon: F1 falls from 0.5513 to 0.3099 ($\Delta\,{F1} = -0.2414$), demonstrating that social sentiment carries increasingly critical predictive signal as the forecast horizon extends. This is consistent with the observation that price-based signals become progressively less informative at longer horizons, while sentiment-encoded crowd dynamics exhibit persistence over multi-hour windows Shen2019reddit.

Effect of removing the regime gate (A2 vs. Full). Replacing the adaptive gate with fixed equal weighting ($w_t = 0.5$) produces an interesting result: A2 achieves higher raw F1 at 3 hours (0.6180 vs. 0.5474) but through a profoundly degenerate mechanism. Recall surges to 0.7896 (vs. 0.5778 for the full model), indicating that without regime guidance the model reverts to a high-recall majority-class prediction strategy. AUC drops from 0.5084 to 0.4841, confirming that the higher F1 is an artefact of class imbalance exploitation rather than genuine discriminant learning. On the 6-hour horizon, A2's performance deteriorates dramatically (F1: 0.3699 vs. 0.5513), confirming that fixed equal weighting fails to generalise across horizons.

Effect of removing fusion weighting (A3 vs. Full). Substituting adaptive weighting with direct concatenation produces the most catastrophic failure in the entire experimental suite. On the 6-hour horizon, A3 achieves recall of 0.0828 and F1 of 0.1418, the worst performance of any tested configuration. This collapse demonstrates that the mode of fusion, adaptive weighting vs. concatenation, is the single most critical architectural decision in the dual-branch design. Two branches of identical capacity, when naively concatenated, create a 64-dimensional input that the compact classifier (16 hidden units) cannot effectively compress without the prior guidance provided by the regime gate. The adaptive weighting, by reducing the fused representation to 32 dimensions while simultaneously encoding the relative modality trust, prevents this dimensionality-driven failure.

Component Contribution Summary

The ablation results allow a ranking of component contributions by their impact on F1 degradation when removed:

enumerate• Adaptive fusion weighting: critical on the 6-hour horizon ($\Delta\,{F1} = -0.4095$); necessary for cross-horizon stability. • Sentiment branch: critical on both horizons ($\Delta\,{F1}_{3h} = -0.1033$, $\Delta\,{F1}_{6h} = -0.2414$). • Regime gate: necessary for calibration ($\Delta\,{\mathrm{AUC}} = -0.0243$ at 3h, $\Delta\,{F1}_{6h} = -0.1814$).

All three components contribute independently and non-redundantly to the full model's performance, confirming that RAML is a coherent and necessary whole rather than an over-engineered variant of simpler alternatives.

Discussion

Interpretation of Regime-Conditioned Fusion

The experimental results provide empirical support for the core thesis of this work: the relative informativeness of social sentiment and technical price features varies systematically with market volatility, and a model that is aware of this variation outperforms one that treats all conditions as equivalent.

The most striking evidence comes from the failure modes of the ablated variants. Without the regime gate (A2), the model ignores the contextual information that determines which signal source to trust at each moment; the result is a model that defaults to a constant high-recall strategy, which succeeds in high-recall environments but fails to generalise. Without adaptive weighting (A3), the model receives both embeddings simultaneously but has no mechanism to arbitrate between conflicting signals; on the 6-hour task where the two signals are most likely to disagree, this leads to catastrophic prediction collapse.

The positive result --- that RAML achieves the best AUC on both horizons --- is particularly significant because AUC measures probability calibration across the full ROC curve, not just at the 0.5 decision threshold. A well-calibrated model is practically useful even at modest absolute performance levels, as it allows risk-weighted position sizing and dynamic threshold adjustment in a trading context.

Behavioural Finance Grounding

The architecture's design is grounded in the noise-trader hypothesis of DeLong et al. delong1990noise and the investor sentiment literature of Baker and Wurgler baker2007investor. During stable market phases, rational arbitrageurs dominate price discovery; fundamental-equivalent information flows such as OHLCV patterns carry more predictive weight. During volatile or uncertain phases, sentiment-driven retail trading temporarily dominates, and crowd signals on social media carry short-term predictive content before the market reverts.

The finding from Figure (ref) that FinBERT Reddit sentiment exhibits sharp transitions in alignment with major price events --- notably the late-2024 bull run that drove Bitcoin above \$120,000 --- supports this channel: community sentiment responds to and anticipates price dynamics, particularly during the high-conviction, high-volatility phases that correspond to our “volatile regime” label. The correlation heatmap (Figure (ref)) confirms that sentiment features exhibit weak but positive correlation with price levels, consistent with a noise-trader co-movement pattern rather than a fundamentals-driven relationship.

On the Modest Absolute Performance Values

The absolute performance values reported in Table (ref) are modest by the standards of the machine learning literature. This requires contextualisation. The hourly Bitcoin market is, by the measurement of Urquhart urquhart2016inefficiency and subsequent studies, one of the most informationally efficient cryptocurrency markets at sub-daily timescales. Under the efficient market hypothesis, any model achieving AUC consistently above 0.50 on unseen data represents a statistically non-trivial departure from the random walk. The RAML model achieves AUC of 0.5084 on the 3-hour test set, which, while numerically close to 0.50, corresponds to a measurable probability ranking improvement over random across 1,345 unseen observations.

Claims of F1 $>$ 0.90 in prior cryptocurrency prediction papers almost universally involve one or more of the following: data leakage through overlapping train-test windows, daily prediction horizons where the signal-to-noise ratio is substantially more favourable, evaluation on in-sample data, or small and cherry-picked test windows that happen to contain directionally stable market regimes gu2021regime. The conservative experimental design employed here (strict chronological split, out-of-distribution test window, 14-month evaluation) deliberately avoids these artefacts, at the cost of modest absolute numbers that accurately reflect the genuine difficulty of the task.

Error Analysis

The confusion matrices (Figure (ref)) reveal that all models struggle primarily with the True Down class. RAML correctly identifies 294 of 659 true-down hours (specificity: 44.6%), compared to 396 of 686 true-up hours (recall: 57.7%). This asymmetry is consistent with the known finding that downward price moves in bull-dominated markets are harder to predict because they are often triggered by exogenous shocks (regulatory announcements, exchange incidents, macro data releases) that do not manifest in either OHLCV patterns or Reddit sentiment in advance. Incorporating news headline sentiment or order book data as an additional modality would likely improve specificity on the down-prediction task.

Limitations and Future Directions

Several limitations constrain the current work and motivate future investigation.

Training data volume. The effective training set comprises 2,146 hourly observations, a quantity that limits the dual-branch BiLSTM's ability to generalise, particularly for the longer 6-hour horizon where the temporal context is shallower relative to the signal period. The constraint arises from the combination of the 730-day yfinance limitation and the overlap requirement with the Reddit dataset. Extending the pipeline with Twitter/X or Telegram data sources to the full 2017--2025 Reddit window would directly address this limitation and is the highest-priority avenue for future work.

Binary regime representation. The current regime detector reduces market state to a single binary signal. A three-state or continuous-valued representation --- distinguishing trending, mean-reverting, and crisis regimes --- would provide a richer conditioning signal and may be appropriate as training data volume grows. Hidden Markov Models with three latent states are a natural extension, or a learned continuous volatility embedding that replaces the threshold.

Single-asset scope. The framework is evaluated exclusively on BTC-USD. Its generalisation to other cryptocurrencies (ETH, SOL, BNB) or to cross-asset settings involving traditional equities has not been validated. Regime dynamics and sentiment-price coupling may differ substantially across assets.

Intra-hour sentiment ordering. Hourly sentiment is aggregated by arithmetic mean over all posts within each hour, discarding the temporal ordering of posts. A post published at minute 58 of an hour and one published at minute 2 contribute equally to the hourly aggregate. A within-hour attention mechanism or a finer-grained (e.g., 15-minute) time resolution would better exploit the temporal structure of social discourse.

Exogenous events. No macro event features (FOMC announcements, regulatory filings, exchange incidents) are included. Such events are known drivers of sharp price dislocations that are by construction unpredictable from past OHLCV or historical sentiment, but could be incorporated through a structured news headline stream.

Conclusion

\lettrine[lines=3]{T}{his} paper presented the Regime-Aware Multi-Modal Learning (RAML) framework, a principled architecture for Bitcoin price direction prediction that conditions the fusion of social sentiment and OHLCV-based technical features on a dynamically detected binary market state. The central contribution is an adaptive sigmoid fusion gate parameterised by a single learnable scalar, which routes predictive authority toward social sentiment during high-volatility episodes and toward technical price dynamics during stable market phases, consistent with the behavioural finance literature on regime-dependent sentiment informativeness.

The system was evaluated on 1,345 held-out hourly observations spanning July to September 2025 --- a period of elevated corrective volatility unseen during training. RAML achieved the highest AUC among all models on the 3-hour horizon (0.5084) and the highest F1 on both horizons (0.5474 at 3h, 0.5513 at 6h), outperforming the static concatenation baseline in F1 at 3 hours (+0.1108) and maintaining competitive performance at 6 hours. A systematic ablation study demonstrated that removing any single architectural component --- the sentiment branch, the regime gate, or the adaptive fusion weighting --- uniformly degrades both F1 and AUC, and that concatenation in place of adaptive weighting causes catastrophic recall collapse on the 6-hour task.

Beyond the specific empirical findings, this work establishes a design principle for multi-modal financial forecasting: fusion architectures should condition on an interpretable, low-cost market state signal rather than applying fixed modality weights across heterogeneous market conditions. The regime gate described here requires one additional trainable parameter, zero additional labelled data, and zero additional inference latency relative to the static concatenation baseline, while providing measurable improvements in calibration across both prediction horizons.

Future work will extend the pipeline to exploit the full 2017--2025 Reddit dataset, replace the binary volatility threshold with a continuous or multi-state regime representation, and investigate the framework's transferability to other cryptocurrency assets and cross-asset settings.

thebibliography{99} \bibitem{coinmarketcap2025} CoinMarketCap, “Global Cryptocurrency Market Report,” 2025. [Online]. Available: \url{https://coinmarketcap.com} \bibitem{baur2018bitcoin} D. G. Baur, K. Hong, and A. D. Lee, “Bitcoin: Medium of exchange or speculative assets?” Journal of International Financial Markets, Institutions and Money, vol. 54, pp. 177--189, 2018. \bibitem{bollen2011twitter} J. Bollen, H. Mao, and X. Zeng, “Twitter mood predicts the stock market,” Journal of Computational Science, vol. 2, no. 1, pp. 1--8, 2011. \bibitem{Abraham2018} J. Abraham, D. Higdon, J. Nelson, and J. Ibarra, “Cryptocurrency price prediction using tweet volumes and sentiment analysis,” SMU Data Science Review, vol. 1, no. 3, 2018. \bibitem{Shen2019reddit} J. Shen, J. O. Shafiq, and T. S. Wong, “Short-term stock market price trend prediction using a comprehensive deep learning system,” Journal of Big Data, vol. 7, no. 1, pp. 1--33, 2020. \bibitem{delong1990noise} J. B. DeLong, A. Shleifer, L. H. Summers, and R. J. Waldmann, “Noise trader risk in financial markets,” Journal of Political Economy, vol. 98, no. 4, pp. 703--738, 1990. \bibitem{philippas2019media} D. Philippas, H. Rjiba, K. Guesmi, and S. Goutte, “Media attention and Bitcoin prices,” Finance Research Letters, vol. 30, pp. 37--43, 2019. \bibitem{baker2007investor} M. Baker and J. Wurgler, “Investor sentiment in the stock market,” \textit{Journal of Economic Perspectives}, vol. 21, no. 2, pp. 129--151, 2007. \bibitem{tetlock2007giving} P. C. Tetlock, “Giving content to investor sentiment: The role of media in the stock market,” \textit{The Journal of Finance}, vol. 62, no. 3, pp. 1139--1168, 2007. \bibitem{liu2021finbert} Y. Liu, “FinBERT: A pre-trained financial language representation model for financial text mining,” \textit{arXiv preprint arXiv:1908.10063}, 2019. \bibitem{huang2023cryptobert} K. Huang, V. S. S. Nadella, and S. Hu, “CryptoBERT: Sentiment analysis for the cryptocurrency market,” \textit{arXiv preprint arXiv:2304.14823}, 2023. \bibitem{mcnally2018predicting} S. McNally, J. Roche, and S. Caton, “Predicting the price of Bitcoin using machine learning,” in \textit{Proc. 26th Euromicro Int. Conf. Parallel, Distributed and Network-based Processing}, Cambridge, UK, 2018, pp. 339--343. \bibitem{kim2018predicting} Y. B. Kim, J. G. Kim, W. Kim, J. H. Im, T. H. Kim, S. J. Kang, and C. H. Kim, “Predicting fluctuations in cryptocurrency transactions based on user comments and replies,” \textit{PLOS ONE}, vol. 13, no. 8, e0201904, 2018. \bibitem{chen2020bitcoin} Z. Chen, C. Li, and W. Sun, “Bitcoin price prediction using machine learning: An approach to sample dimension engineering,” \textit{Journal of Computational and Applied Mathematics}, vol. 365, 2020. \bibitem{liu2020predicting} H. Liu, Y. Long, Y. Huang, and C. Song, “Predicting the cryptocurrency market with attention mechanism,” \textit{IEEE Access}, vol. 8, pp. 164\,801--164\,814, 2020. \bibitem{li2023predicting} Y. Li, W. Dai, and Z. Cui, “A sentiment-enhanced LSTM for cryptocurrency price prediction,” \textit{Applied Soft Computing}, vol. 136, 2023. \bibitem{jiang2021applications} Z. Jiang, “Applications of deep reinforcement learning in financial market trading,” \textit{arXiv preprint arXiv:2011.09607}, 2021. \bibitem{he2023multi} Q. He, W. Li, Y. Sun, and X. Wang, “Multi-modal cryptocurrency price prediction using social media and market data,” \textit{Expert Systems with Applications}, vol. 213, p. 119153, 2023. \bibitem{wei2023} Y. Wei, X. Wang, and D. Li, “Regime-switching models for cryptocurrency price prediction,” \textit{Finance Research Letters}, vol. 52, p. 103\,516, 2023. \bibitem{yang2021} Z. Yang, D. Yang, L. Dyer, X. He, Y. Zhao, and Y. Zhao, “FinBERT: A pretrained language model for financial communications,” \textit{arXiv preprint arXiv:2006.08097}, 2020. \bibitem{lu2022} J. Lu, C. Clark, B. Zellers, R. Mottaghi, and A. Kembhavi, “Unified-IO: A unified model for vision, language, and multi-modal tasks,” \textit{arXiv preprint arXiv:2206.08916}, 2022. \bibitem{hamilton1989new} J. D. Hamilton, “A new approach to the economic analysis of nonstationary time series and the business cycle,” \textit{Econometrica}, vol. 57, no. 2, pp. 357--384, 1989. \bibitem{ang2002regime} A. Ang and G. Bekaert, “Regime switches in interest rates,” \textit{Journal of Business & Economic Statistics}, vol. 20, no. 2, pp. 163--182, 2002. \bibitem{gu2021regime} S. Gu, B. Kelly, and D. Xiu, “Empirical asset pricing via machine learning,” \textit{The Review of Financial Studies}, vol. 33, no. 5, pp. 2223--2273, 2020. \bibitem{urquhart2016inefficiency} A. Urquhart, “The inefficiency of Bitcoin,” \textit{Economics Letters}, vol. 148, pp. 80--82, 2016. \bibitem{kingma2014adam} D. P. Kingma and J. Ba, “Adam: A method for stochastic optimization,” in \textit{Proc. 3rd Int. Conf. Learning Representations (ICLR)}, 2015. \bibitem{paszke2019pytorch} A. Paszke, S. Gross, F. Massa, A. Leber, J. Bradbury, et al., “PyTorch: An imperative style, high-performance deep learning library,” in \textit{Advances in Neural Information Processing Systems}, vol. 32, 2019.