Project developed in Python This repository provides a modular environment for building, experimenting, and evaluating time series forecasting models using modern Machine Learning techniques.
The system is primarily designed for Forex assets—specifically FX EURUSD that can be adapted to any other financial instrument or temporal dataset.
This project is a demo version derived from a real system developed for a private financial analytics company. The company authorized the use of non-sensitive methodologies, fragments, and results exclusively for professional portfolio purposes.
Parts of the original system have been modified, simplified, or recreated using public alternatives.
This repository:
- Contains only non-sensitive and authorized content.
- Includes no proprietary data or logic.
- Demonstrates professional skills in ML applied to time series and financial markets.
NOTE: You can find training metrics within example. Each models has its own folder.
The repository covers the full workflow required for time series ML modeling:
- Data ingestion and preparation
- Dynamic feature engineering
- Time-series-oriented preprocessing
- Model configuration and training
- Temporal validation (backtesting)
- Metrics, error analysis, and performance comparison
- Experimentation with multiple configurations
- Random Forest
- XGBoost
- LightGBM
- Voting Classifiers / Regressors
- Delta Direction (Classification): t+1 movement direction (up / down / neutral)
- Swing Amplitude (Regression): swing magnitude (in pips or decimals)
- Swing Type (Classification): swing category (bullish / bearish / neutral)
NOTE: Only Delta Direction metrics and pipeline code are available. Updating both swing models on next version
Raw Market Data
↓
Feature Engineering
↓
Preprocessing (scaling, cleaning, encoding)
↓
Train/Test temporal split
↓
Model Training (RF, XGB, LGBM, Voting)
↓
Evaluation (metrics, backtesting, error analysis)
↓
Export results / charts / predictions
This repository showcases practical experience in:
- Time series modeling with classical ML
- Advanced feature engineering for financial data
- High-frequency data handling
- Multi-output and multi-task modeling
- Backtesting and temporal validation
- Scalable, reproducible ML pipelines
- Comparative evaluation of multiple algorithms
- Model stabilization via ensemble voting