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-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.
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.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| config.json | Configuration | 484 B | — |
| feature_columns.json | Configuration | 758 B | — |
| fold_results.json | Configuration | 40.3 KB | — |
| predict.py | Configuration | 4.4 KB | — |
| weight_optimization_results.json | Configuration | 9.8 KB | — |
| PAPER.md | Documentation | 14.5 KB | — |
| README.md | Documentation | 3.5 KB | — |
| eurusd_dataset.csv | Other | 6.1 MB | — |
| feature_importance.csv | Other | 820 B | — |
| lgb_model.joblib | Other | 1.4 MB | 763233ee93be |
| paper.html | Other | 19.7 KB | — |
| paper.pdf | Other | 53.2 KB | — |
| paper.tex | Other | 21.5 KB | — |
| scaler.joblib | Other | 1.8 KB | 207a83c273bf |
| xgb_model.joblib | Other | 1.2 MB | c04e27857bb0 |
| yearly_results.csv | Other | 1.2 KB | — |
| .gitattributes | Repository | 1.5 KB | — |
License and Download
- License
- apache-2.0
- Access
- Open weights, no gate
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
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…
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…
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.…
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…
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…
