Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

📈 Financial Market Prediction Using Regression on Sequential Time-Series Data

Python Scikit-learn Pandas Domain Type Status

A machine learning mini project that applies regression algorithms to real-world financial time-series data to predict continuous market price values.


📌 Overview

Predicting financial market movements is one of the most challenging problems in data science due to the noisy, non-stationary, and sequential nature of financial data. This project explores how classical regression algorithms can be applied to structured time-series financial data to forecast price-related values.

The pipeline covers everything from data loading and feature engineering to model training, evaluation, and visualization — giving a clear picture of where regression models succeed and where they fall short in real-world financial markets.

Built as a Mini Project during a 3-month Machine Learning Internship at VCodEZ (Nov 2025 – Feb 2026)


🚀 Key Features

  • Time-Series Regression — Applied 4 regression models to sequential financial data
  • Lag Feature Engineering — Created lag-based and rolling-window features to capture temporal patterns
  • Temporal Train-Test Split — Avoided data leakage with time-aware splitting (no random shuffling)
  • Multi-Model Comparison — Evaluated and compared Linear, Ridge/Lasso, Decision Tree, and Random Forest regressors
  • Visualization — Matplotlib plots for actual vs predicted values, residuals, and feature importances
  • Honest Evaluation — Clearly documents both capabilities and limitations of regression in financial markets

🛠️ Tech Stack

Technology Version Purpose
Python 3.9 Core language
Pandas 2.x Data loading, manipulation, feature engineering
NumPy 1.x Numerical operations
Scikit-learn 1.x Regression models, metrics, preprocessing
Matplotlib 3.x Plotting actual vs predicted, residuals
Jupyter Notebook Development and experimentation environment

🧠 Regression Models Used

Model Strength Limitation
Linear Regression Fast, interpretable, low variance Fails on non-linear market patterns
Ridge / Lasso Regression Handles multicollinearity, regularized Still linear — limited expressiveness
Decision Tree Regressor Captures non-linearity Overfits easily on noisy financial data
Random Forest Regressor Handles non-linearity + variance Risk of overfitting on financial noise

📊 Evaluation Metrics

Metric Description
MAE (Mean Absolute Error) Average magnitude of prediction error
RMSE (Root Mean Squared Error) Penalizes large errors more heavily
R² Score Proportion of variance explained by the model

⚙️ Project Pipeline

Raw Financial Data (CSV)
        |
        v
1. Data Loading & Exploration (Pandas)
        |
        v
2. Feature Engineering
   - Lag features (t-1, t-2, t-3 ...)
   - Rolling mean / rolling std windows
   - Technical indicators (optional)
        |
        v
3. Time-Aware Train-Test Split
   (No random shuffling — preserves temporal order)
        |
        v
4. Model Training
   (Linear, Ridge, Lasso, Decision Tree, Random Forest)
        |
        v
5. Evaluation (MAE, RMSE, R²)
        |
        v
6. Visualization (Actual vs Predicted, Residuals, Feature Importance)

📁 Project Structure

Machine-learning/
├── Financial Market/
│   ├── read.md               # Project notes and model comparison summary
│   └── [notebooks / scripts] # Data processing, training, evaluation
├── README.md                 # Full project documentation
└── .gitignore

💡 Key Learnings

  • Temporal dependency matters — Random train-test split leaks future data into training, leading to falsely high scores.
  • Linear models are insufficient — Financial data is inherently non-linear; regularized linear models still underfit.
  • Overfitting is real — Tree-based models capture training patterns well but generalize poorly on unseen market data.
  • Feature engineering is critical — Lag features and rolling statistics are more informative than raw price values alone.
  • Regression ≠ trading strategy — Predicting price direction and predicting exact price values are very different problems.

🔮 Future Scope

  • Integrate LSTM / GRU deep learning models for better sequence modelling
  • Add technical indicators (RSI, MACD, Bollinger Bands) as engineered features
  • Build a multi-step forecast pipeline (predict t+1, t+2, ... t+n)
  • Deploy as a Streamlit web dashboard for live market monitoring
  • Experiment with XGBoost and LightGBM for gradient boosting on time-series

👨‍💻 Developer

Field Details
Name Mulamreddy Venkata Vasu Deva Reddy
GitHub @MVVasudevreddy
LinkedIn venkata-vasu-deva-reddy-mulamreddy-6666vdr
Institution Bharath Institute of Higher Education and Research (BIHER), Chennai
Internship Machine Learning Intern — VCodEZ, Chennai (Nov 2025 – Feb 2026)
Project Type Mini Project — B.Tech CSE (2022–2026)

⭐ If this project helped you understand regression on time-series data, give it a star!

Department of Computer Science and Engineering | BIHER, Chennai

About

Financial Market Prediction using Regression on Sequential Time-Series | ML Mini Project | Python, Scikit-learn, Pandas | BTech CSE @ BIHER

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages