The paper's -0.34% return in 2022 could come from holding less stock as prices fell. Its trading rules make that explanation easier to credit than an edge from three neural networks.

What the model trades

For each of 17 US stocks across five sectors, the model estimates the chance of a rise the next day. It is a daily classifier built from three encoders. Their outputs meet at a concatenation layer, followed, before tuning, by two dense layers of 40 and 60 units and a sigmoid.

The LSTM reads prices and TA-Lib indicators, including 12 and 26-day EMA, MACD, parabolic SAR, Bollinger bands and slow stochastics. Its starting configuration has two layers of 500 and 450 units. FinBERT, a BERT model fine-tuned on financial text, embeds one headline per stock per day: the headline with the most extreme sentiment score. Those headlines come from the EODHD API, filtered to Yahoo Finance articles. A graph convolutional network covers all 17 stocks. Pearson correlations of closing prices form its edges; seven summary statistics from each stock's price series sit at its node.

The authors claim daily graph recomputation as the advance over earlier stock-graph work with fixed edges. Models are retrained each evaluation day using data through the previous day. For the adjacency, the paper says it uses "all close price observations available up to t". That expanding window of price levels is hard to square with the method section's description of the "most recent time period". News begins only on January 1, 2021, leaving the fused model a short training history. The authors acknowledge that limit and also cite "dependence on timely and clean news".

The tests cover an uptrend from July to December 2021 and a downtrend from January 1 to September 20, 2022. Under the single-stock rule, each name begins fully invested with $10,000. A down call sells up to Max Shares (1, 5 or 10); an up call buys up to that limit using available cash. The multi-stock rule divides the budget equally among the 17 names and trades after three days of the same signal. Across the three Max Shares settings, that rule gave the fused model an average loss of 0.34% in 2022, against -40.3% for buy-and-hold. Gradient boosted trees were next best at -11.00%. In 2021, the fused model averaged 7.64% against buy-and-hold's 27.01%.

Does F1 explain the return?

The fused model's macro F1 spans 0.34 for ADBE in the uptrend to 0.60 for PLD in the uptrend. The authors concede that "gradient boosted trees (GBTs) consistently achieve the highest F1-scores". On GOOG in the January to September 2022 window, GBTs score 0.54 and the fused model 0.41. Their explanation is that GBTs can train on data from 2010 to 2021, whereas the multimodal model "requires the simultaneous availability of news and time series data (available from 2021)". Yet their compute section says the model "ingests a larger historical window" covering 2010 to 2021 and "is trained from scratch".

The authors also argue that F1 treats every day equally, while profit depends on getting the large moves right. ADBE in 2021 illustrates the possibility: the fused model's F1 was 0.34, against 0.54 for both ARIMA and LSTM. Its return was +1.9%; ARIMA lost 9.14% and LSTM lost 1.62%. A hit rate weighted by absolute return, or accuracy separated by move size, could test that account. We did not find either in the paper's main text. Position drift could also explain the ADBE gap.

The exposure question

The paper's conclusion says the model is "more likely to predict downtrends in such market dynamics". The authors associate that tendency with a more conservative outcome and credit fusion with "a better ability to capture uncertainty." If every slice of the multi-stock book starts invested, as the single-stock book does, repeated down calls would sell shares as the decline continued. Cash would rise without the model having to time the largest moves.

Trade size offers some support for that reading. In the multi-stock 2022 window, returns move from -7.16% at 1 share to 3.61% at 5 and 2.52% at 10. In 2021 they move the other way, from 16.64% to 4.77% to 1.51%. Faster changes in exposure from a bearish-leaning signal could help in the fall and hurt in the rally. The LSTM baseline shows only the rally half of that pattern: 23.96% at 1 share and -3.46% at 5 in 2021, followed by -14.47%, -15.23% and -15.38% in 2022. Elsewhere, the 2022 response to trade size is mixed. ARIMA and GBTs improve as size rises; CNN-LSTM, GRU-CNN, GCN-LSTM and Polarity worsen.

At Max Shares 1, the fused model still has the smallest 2022 loss in the table: 7.16%, compared with -12.3% for CNN-LSTM and -13.22% for the static-graph GCN-LSTM. The exhibit that would change my mind is its invested fraction over time beside a constant-exposure book at the same average weight. We did not find that comparison, a Sharpe ratio, a drawdown or a significance test in the paper's main text.

Costs and component tests

We found no commission, spread or slippage in the simulation description. A rule allowed to trade every name every day needs those costs. The three-day confirmation filter applies only to the multi-stock rule, at a single setting; we did not find a sensitivity check on its length in the main text. The single-stock rule trades signals immediately.

The ablation uses the single-stock rule and adds components in sequence. LSTM alone averages 4.95% in the uptrend and -7.42% in the downtrend. With FinBERT, those figures become 8.63% and -4.41%. Adding the graph brings them to 10.40% and -2.28%. The full model leads in 13 of 17 names in the uptrend and 10 of 17 in the downtrend. Two windows and no test statistics in the main text leave that evidence suggestive at best.

The claim for dynamic graph edges also deserves a closer look. The paper says the dynamic-adjacency model "consistently outperformed the GCN-LSTM model, across most stocks". Those are per-stock simulated portfolio gains averaged across Max Shares settings: NVDA is ahead by 36.87 points in the uptrend, TSLA by 20.95 in the downtrend, while EBAY is 5.35 points worse in the downtrend. In the multi-stock table, static GCN-LSTM makes 9.40% in 2021 against the fused model's 7.64%. The dynamic graph wins clearly in 2022, at -0.34% against -20.37%.

The architecture leaves a reimplementation problem, too. The runtime table specifies a 21×21 adjacency, and its flatten size of 336 corresponds to 21 nodes times 16 channels. The graph is described as having 17 nodes.

Our substitute strategy

The paper calls for a 500-epoch cold start and roughly 100 epochs of daily fine-tuning on the LSTM, graph and fusion layers. FinBERT is trained once, then frozen. We do not have the compute to run that procedure walk-forward. The strategy we are evaluating substitutes for it in the spirit of the paper's classical baselines, so it does not test the authors' claim.

The open question is whether 7.64% while buy-and-hold on the same 17 names made 27.01%, followed by -0.34% while it lost 40.3%, reflects better forecasts or a long-only book drifting toward cash.