As previsões de preço das ações do modelo Leras da multicamada keras convergem para um valor constante

Eu criei um modelo LSTM multicamada que usa regressão para prever os valores dos dados do próximo quadro. O modelo termina após 20 épocas. Eu, então, recebo algumas previsões e as comparo com meus valores de verdade básicos. Como você pode vê-los na figura acima, as previsões convergem para um valor constante. Não sei por que isso acontece. Aqui está o meu modelo até agora:

from keras.models import Sequential
from keras.layers.core import Dense, Activation, Dropout
from keras.layers import LSTM, BatchNormalization
from tensorflow.python.keras.initializers import RandomUniform

init = RandomUniform(minval=-0.05, maxval= 0.05)

model = Sequential()

model.add(LSTM(kernel_initializer=init, activation='relu', return_sequences=True, units=800, dropout=0.5, recurrent_dropout=0.2, input_shape=(x_train.shape[1], x_train.shape[2]) ))
model.add(LSTM(kernel_initializer=init, activation='relu', return_sequences=False, units=500, dropout=0.5, recurrent_dropout=0.2 ))

model.add(Dense(1024, activation='linear', kernel_initializer=init))
model.add(BatchNormalization())
model.add(Dropout(0.5))
model.add(Dense(1, activation='linear', kernel_initializer= 'normal'))

model.compile(loss='mean_squared_error', optimizer='rmsprop' )
model.summary()

EDIT1: Eu diminuí as épocas de 20 para 3. os resultados são os seguintes:

Ao comparar duas figuras, posso concluir que, quando o número de épocas aumenta, as previsões têm maior probabilidade de convergir para algum valor específico que fica em torno de -0,1.

questionAnswers(1)

yourAnswerToTheQuestion