How to define the architecture

The functional API of Keras makes it easy to design architectures with multiple inputs and outputs. This example illustrates a network with three inputs, as follows:

  • A two stacked LSTM layers with 25 and 10 units respectively
  • An embedding layer that learns a 10-dimensional real-valued representation of the equities
  • A one-hot encoded representation of the month

We begin by defining the three inputs with their respective shapes, as described here:

returns = Input(shape=(window_size, n_features), name='Returns')tickers = Input(shape=(1,), name='Tickers')months = Input(shape=(12,), name='Months')

To define stacked LSTM layers, we set the return_sequences keyword to True. This ensures that the first layer produces ...

Get Hands-On Machine Learning for Algorithmic Trading now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.