license: mit
language:
- en
🔍 Model Overview Feature Description 📦 Model Type LSTM (Long Short-Term Memory), a type of Recurrent Neural Network (RNN) 🧠 Frameworks Used TensorFlow (Keras API), Scikit-learn, yfinance, NumPy, Pandas 📈 Input Past 60 days of Bitcoin closing prices 🎯 Output The predicted closing price for the next day 🧪 Goal Short-term (1-day ahead) price prediction 📊 Evaluation Metric RMSE (Root Mean Squared Error)
🔧 What It Does Downloads historical BTC-USD data from Yahoo Finance
Normalizes the closing price data between 0 and 1 using MinMaxScaler
Splits the data into 80% training and 20% testing
Uses a sliding window of 60 days to create time-sequenced input for LSTM
Builds a 2-layer LSTM network with dropout to avoid overfitting
Trains the model to minimize mean squared error
Evaluates the model on test data
Plots actual vs predicted prices
Makes a future prediction for the next day based on the last 60 days
💡 What This Model Is Useful For Educational purposes (learning LSTM, time series preprocessing)
Research and experimentation with financial prediction models
Visualization and evaluation of model performance
Academic paper support (as you’re already writing)
⚠️ Limitations It uses only closing price – no volume, sentiment, or indicators like RSI/MACD
It performs single-step prediction (only the next day)
May not adapt well to sudden market shocks
Not suitable as-is for high-frequency trading or live trading bots
🚀 How to Improve It Include more features: trading volume, high/low prices, technical indicators
Add external data: news sentiment, macroeconomic indicators
Use attention mechanisms or transformer architectures
Convert it to multi-step forecasting (predict next 3, 5, or 7 days)
Wrap it in a REST API or real-time dashboard
Let me know if you want to:
Package this into a web app
Prepare a GitHub README for the code
Extend the model for live trading (e.g., using Binance API)