[ <- BACK ]

┤ 06 / 06 :: LSTM INVESTOR ├

LSTM Investor

Master's project: LSTM, Conv1D and CBAM models predicting the Ethereum price from minute-level data.

github.com/SwerkF/LSTM-Investor ->

Stack

  • Python
  • TensorFlow/Keras
  • Gymnasium

What I did

Team project for the Big Data & AI Master's degree at IPSSI, built by five people. The goal: measure how far a recurrent network can predict the Ethereum price, and what actually improves its predictions.

We compared three approaches: a plain LSTM on daily prices, the same model with a 1D convolution and a CBAM attention module (Convolutional Block Attention Module), then a Conv1D-LSTM trained on Binance ETH/USD minute-level history (trained on 2021 to 2024, tested on 2025).

Takeaway: CBAM slightly improves accuracy, but data granularity is what changes the result most: the mean error drops from about $98 to $30.

model :: conv1d-cbam-lstm

┌ Conv1D ┐

64 filters

┌ CBAM ┐

attention

┌ LSTM ┐

50 units

┌ Dense ┐

1 output

results :: ETH price error ($)
ModelDataRMSEMAE
LSTM(50)daily148.57105.38
Conv1D + CBAM + LSTMdaily140.2098.32
Conv1D + LSTM1 min40.0130.07

>> Technical highlights

  • Hand-written 1D CBAM layer in Keras: channel attention (average and max pooling) then temporal attention.
  • Normalized series (MinMaxScaler) and 30-step sliding windows via TimeseriesGenerator.
  • Training with ReduceLROnPlateau, EarlyStopping and best-model checkpoints, tracked in TensorBoard.
  • Prototype Gymnasium environment (buy, sell, hold) to train a reinforcement learning trading agent (DQN).