Hi Omar!
It looks like you are having issues in training your model using the LSTM network. It is evident by the validation error in your network. Model training in deep learning often requires a lot of experimentation and tuning. You are on a good path with the reshaping of data and setting up the network. The choice of "sgdm" as a solver also makes sense.
The provided graph for RMSE vs iterations looks constant after 20 epochs. You can try experimenting with the learning rate and other parameters like optimizers and batch size to eliminate the possibility of the model being stuck in local minima.
If the performance doesn't improve by much, try working with a model with more complexity. You can either tweak the current LSTM or adopt a different model architecture such as bidirectional LSTMs or ensemble techniques. You can also look at the data and experiment with different representations for complex numbers and analyze the impact on the model.
You can refer to the following link for more information about the deep learning toolbox in MATLAB: https://www.mathworks.com/help/deeplearning.
I hope it helps!

