SAVRN
Search Contact SAVRN

Open-weight model · Tabular classification

forex-eurusd-direction

by LUIS VIZCAYA lvizcaya/forex-eurusd-direction

Binary classification model that predicts whether EUR/USD will close higher (UP) or lower (DOWN) the next trading day. The model uses 53 features including: - Williams %R, CCI: Additional momentum indicators See predict.py for a complete inference example.

Parameters
Context
Weights8.8 MB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads46

Model Card

By LUIS VIZCAYA, published under apache-2.0, revision a27fc2ac3806.

Binary classification model that predicts whether EUR/USD will close higher (UP) or lower (DOWN) the next trading day. The model uses 53 features including: - Williams %R, CCI: Additional momentum indicators See predict.py for a complete inference example. Based on published financial ML literature: This model is for research and educational purposes only. It is NOT financial advice. Forex trading involves significant risk. Past performance does not guarantee future results. Realistic accuracy for daily direction prediction is 52-56% (literature consensus). This model repository was generated by ML Intern, an agent for machine learning research and development on the Hugging Face Hub.

Read LUIS VIZCAYA's full model card

EUR/USD Direction Prediction Model

Binary classification model that predicts whether EUR/USD will close higher (UP) or lower (DOWN) the next trading day.

Model Details

  • Task: Binary classification (Up/Down)
  • Pair: EUR/USD
  • Horizon: Next trading day
  • Models: LightGBM + XGBoost ensemble (average probability)
  • Features: 53 technical indicators and price features
  • Training: Walk-forward expanding window (no data leakage)

Performance (Out-of-Sample, Walk-Forward)

Metric Value
Accuracy 0.6611
F1 (macro) 0.6610
F1 (binary) 0.6544
ROC AUC 0.7245
ZeroR Baseline 0.5041
Improvement +0.1570

Features

The model uses 53 features including:

  • Log returns: Multiple lookback windows (5, 10, 21, 63, 126, 252 days)
  • Momentum: Price momentum at various horizons
  • Volatility: Rolling standard deviation of returns
  • RSI: Relative Strength Index (7, 14, 21 periods)
  • MACD: Moving Average Convergence Divergence
  • Bollinger Bands: %B and bandwidth
  • ATR: Average True Range
  • Stochastic Oscillator: %K and %D
  • ADX: Average Directional Index
  • Williams %R, CCI: Additional momentum indicators
  • Channel Position: Price position within rolling high/low channels
  • Calendar: Day of week, month, quarter

Usage

import joblib, json, numpy as np
from huggingface_hub import hf_hub_download

# Download model files
lgb_model = joblib.load(hf_hub_download("lvizcaya/forex-eurusd-direction", "lgb_model.joblib"))
xgb_model = joblib.load(hf_hub_download("lvizcaya/forex-eurusd-direction", "xgb_model.joblib"))
scaler = joblib.load(hf_hub_download("lvizcaya/forex-eurusd-direction", "scaler.joblib"))
feature_cols = json.load(open(hf_hub_download("lvizcaya/forex-eurusd-direction", "feature_columns.json")))

# Prepare your features (see predict.py for full pipeline)
# X = your_features[feature_cols].values
# X_scaled = scaler.transform(X)
# prob_up = (lgb_model.predict_proba(X_scaled)[:,1] + xgb_model.predict_proba(X_scaled)[:,1]) / 2
# direction = "UP" if prob_up >= 0.5 else "DOWN"

See predict.py for a complete inference example.

Methodology

Based on published financial ML literature: - arxiv:2511.18578 — GBM ensemble with walk-forward validation (most robust approach) - arxiv:2405.08045 — Technical indicator engineering for FOREX - arxiv:2511.15960 — Proper baselines (ZeroR) to avoid overfitting claims

Walk-Forward Validation

  • Minimum 3 years training data
  • Retrain monthly (21 trading days)
  • Expanding window (no data discarded)
  • No random splits (prevents temporal leakage)

Disclaimer

This model is for research and educational purposes only. It is NOT financial advice. Forex trading involves significant risk. Past performance does not guarantee future results. Realistic accuracy for daily direction prediction is 52-56% (literature consensus).

Generated by ML Intern

This model repository was generated by ML Intern, an agent for machine learning research and development on the Hugging Face Hub.

  • Try ML Intern: https://smolagents-ml-intern.hf.space
  • Source code: https://github.com/huggingface/ml-intern

Identity and Version

Repository
lvizcaya/forex-eurusd-direction
Publisher
LUIS VIZCAYA
Task
Tabular classification
Modality
Tabular
Library
Not stated by the source
Parameters
Not stated by the source
Languages
en
Revision
a27fc2ac3806c8436c6f12f1af4ddf0701987264
First published
2026-04-23
Last updated
2026-05-12

Files and Weights

17 files, 8.8 MB in total.

Configuration5 files · 55.8 KB
Documentation2 files · 18.0 KB
Other9 files · 8.7 MB
Repository1 file · 1.5 KB
Every file
FileTypeSizeSHA-256
config.jsonConfiguration484 B
feature_columns.jsonConfiguration758 B
fold_results.jsonConfiguration40.3 KB
predict.pyConfiguration4.4 KB
weight_optimization_results.jsonConfiguration9.8 KB
PAPER.mdDocumentation14.5 KB
README.mdDocumentation3.5 KB
eurusd_dataset.csvOther6.1 MB
feature_importance.csvOther820 B
lgb_model.joblibOther1.4 MB 763233ee93be
paper.htmlOther19.7 KB
paper.pdfOther53.2 KB
paper.texOther21.5 KB
scaler.joblibOther1.8 KB 207a83c273bf
xgb_model.joblibOther1.2 MB c04e27857bb0
yearly_results.csvOther1.2 KB
.gitattributesRepository1.5 KB

License and Download

License
apache-2.0
Access
Open weights, no gate
Download from LUIS VIZCAYA

Released by LUIS VIZCAYA through its official repository on Hugging Face. Read the license.

Built From

  • Described by arXiv:2405.08045
  • Described by arXiv:2511.15960
  • Described by arXiv:2511.18578

Questions About forex-eurusd-direction

Can I use forex-eurusd-direction commercially?

Yes. forex-eurusd-direction is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

Model · Tabular classification

Nori-30M

Synthefy

Nori-30M is the ~29.2M-parameter variant of Nori, a tabular foundation model for regression via in-context learning (ICL). Given a few labeled rows as context, it predicts on new query rows in a single forward pass, with no task-specific training or fine-tuning. The model is trained entirely on synthetic data. Mean and median R² across 96 regression tasks from three public benchmark suites, on the same protocol as the base Nori: Stronger than the ~6M base on every suite. Evaluated with the bundled default inference config and the large-GPU protocol (up to 50k context rows per dataset). Paste this into Claude Code, Cursor, or any AI coding assistant and it will wire python from synthefynori…

Open weights apache-2.0 synthefy-nori

Model · Tabular classification

sap-rpt-1-oss

SAP

Go to SAP-RPT Playground ↗ Note: This model and repository were formerly known as ConTextTab. While the code and repository have now been updated in line with the new name sap-rpt-1-oss, the model checkpoint and functionality remain identical. Implementation of the deep learning model with the inference pipeline described in the paper "ConTextTab: A Semantics-Aware Tabular In-Context Learner". Tabular in-context learning (ICL) has recently achieved state-of-the-art (SOTA) performance on several tabular prediction tasks. Previously restricted to classification problems on small tables, recent advances such as TabPFN and TabICL have extended its use to larger datasets. While being…

Access requested at publisher apache-2.0 sap-rpt-1-oss

Model · Tabular classification

Nori

Synthefy

Nori is a tabular foundation model for regression via in-context learning (ICL). Given a few labeled rows as context, it predicts on new query rows in a single forward pass, with no task-specific training or fine-tuning. The model is trained entirely on synthetic data. Mean and median R² of the base model across 96 regression tasks from three public benchmark suites (single H200, up to 50K context rows per dataset): Large-N / long-context tables (common in TabArena) are the current focus of the large-table training stages. These numbers are reproducible end-to-end with one command — see Reproducing these numbers. Paste this into Claude Code, Cursor, or any AI coding assistant and it will…

Open weights apache-2.0 synthefy-nori

Model · Tabular classification

EXAONE-Tabular

LG AI Research

EXAONE Tabular is a transformer-based foundation model for tabular data that solves classification and regression through in-context learning: you pass the labeled rows to fit and the model predicts new rows in a single forward pass — no gradient updates and no per-dataset training. This repository is the exaonetabular inference runtime — a self-contained package that loads a released checkpoint and serves predictions through a small, scikit-learn-style API. The code here is permissively licensed; the released weights are non-commercial — see Both checkpoints are released: EXAONETabularClassifier and EXAONETabularRegressor each fetch their own weights with a single frompretrained() call.…

Open weights other

Model · Tabular classification

TabPFN-v2-clf

Prior Labs

TabPFN is a transformer-based foundation model for tabular data that leverages prior-data based learning to achieve strong performance on small tabular datasets without requiring task-specific training. For detailed usage examples and best practices, check out: - Python ≥ 3.9 - PyTorch ≥ 2.1 - scikit-learn ≥ 1.0 This repository hosts the production TabPFN-v2 base checkpoints. Files matching the pattern tabpfn-v2-classifier-finetuned-.ckpt are content-identical aliases of the corresponding base checkpoints (e.g. tabpfn-v2-classifier-finetuned-gn2p4bpt-xp6f0iqb.ckpt is identical to tabpfn-v2-classifier-gn2p4bpt.ckpt; tabpfn-v2-classifier-finetuned-zk73skhh.ckpt is identical to…

Open weights other tabpfn

Model · Tabular classification

tabfm-1.0.0-pytorch

Google

TabFM is a zero-shot tabular foundation model from Google Research. It supports classification and regression on structured/tabular data with mixed numerical and categorical columns, requiring no fine-tuning or hyperparameter search - training examples are passed as context and predictions are made in a single forward pass. This repository contains the PyTorch weights. For the JAX/Flax weights see You can also load directly using the HuggingFace Hub API: Developed by the Google Research team. - Tabular data with numerical and/or categorical columns - Binary and multiclass classification (up to 10 classes) TabFM uses alternating row and column attention to capture both feature interactions…

Open weights other tabfm