gitwtfhub

wtf is finbench?

sablier-ai/finbench — explained in plain English

Analysis updated 2026-07-25

1PythonAudience · researcherComplexity · 3/5LicenseSetup · moderate

TL;DR

FinBench tests whether AI-generated financial data keeps the real-world patterns that matter for risk modeling and trading strategies. It scores models on fidelity and real-world utility separately.

Mindmap

mindmap
  root((repo))
    What it does
      Tests synthetic financial data
      Scores fidelity and utility
      Seven benchmark tasks
    Why it exists
      Generic benchmarks reward safe data
      Real markets have fat tails
      Missing patterns breaks models
    How it works
      Fixed panel of US stocks
      200 paths 60 steps
      Run scoring script
    Submission process
      Generate synthetic returns
      Use provided template
      Open a pull request
    Outputs
      Leaderboard ranking
      Separate fidelity scores
      Separate utility scores
    Audience
      Quantitative researchers
      Risk model builders
      Synthetic data creators

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Benchmark your synthetic financial time-series model against finance-specific tasks.

REASON 2

Check if generated market data preserves risk patterns needed for banking regulation tests.

REASON 3

Compare your model's scores against external baselines on the FinBench leaderboard.

REASON 4

Validate that synthetic data keeps strategy performance rankings aligned with real data.

What's in the stack?

Pythonfinval

How it stacks up

sablier-ai/finbench0xustaz/streamgatea-bissell/unleash-lite
Stars111
LanguagePythonPythonPython
Setup difficultymoderatehardhard
Complexity3/54/54/5
Audienceresearcherdeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires generating synthetic returns in a specific format and installing the finval scoring library to run the evaluation.

MIT license lets you use the code freely for any purpose including commercial use, reference results are shared under CC-BY 4.0 which requires attribution.

Wtf does this do

FinBench is a benchmark for evaluating synthetic financial time-series data. Instead of asking whether synthetic data looks superficially similar to real data, it tests whether the synthetic data preserves the statistical properties that matter for financial applications like risk modeling and strategy backtesting. The project exists because popular benchmarks for time-series generation reward models that produce smooth, safe-looking data. A model can score well on those benchmarks while failing to capture real market behavior such as fat tails, volatility clustering, and the leverage effect. These are exactly the patterns that drive financial outcomes, so missing them makes synthetic data unreliable for real-world use. FinBench replaces those generic checks with a suite of tasks grounded in established finance research. The benchmark runs seven tasks on a fixed panel of US equities and macro data with seven dimensions, 200 paths, and a 60-step horizon. Four tasks measure fidelity: whether the synthetic data reproduces the real data's distribution, stylized facts, distance metrics, and random-walk structure. Three tasks measure utility: options pricing accuracy, how well synthetic data preserves strategy performance rankings, and risk model backtesting through standard tests used in banking regulation. A model can do well on fidelity tasks and still fail on utility tasks, which is why the benchmark reports them separately. To submit a model, you generate synthetic returns for the FinBench panel, organize them into a specific directory structure using a provided template, run the scoring script, and open a pull request. You do not need to share your model's code or trained weights, only the synthetic outputs. The project maintains a leaderboard where Sablier, the company behind FinBench, lists three of its own models alongside external baselines. Each edition of FinBench is frozen at a git tag for reproducibility, and scores are tied to a specific version of the scoring library called finval. The code is released under the MIT license, with reference results under CC-BY 4.0.

Yoink these prompts

Prompt 1
Help me organize my synthetic returns into the FinBench directory structure template. My data has 7 dimensions, 200 paths, and 60 time steps.
Prompt 2
Walk me through running the FinBench scoring script on my generated financial data and interpreting the fidelity vs utility task results.
Prompt 3
I want to submit a model to the FinBench leaderboard. What are the exact steps from generating returns to opening the pull request?
Prompt 4
Explain the seven FinBench tasks and help me understand why my model might score well on fidelity but fail on utility tasks.

Frequently asked questions

wtf is finbench?

FinBench tests whether AI-generated financial data keeps the real-world patterns that matter for risk modeling and trading strategies. It scores models on fidelity and real-world utility separately.

What language is finbench written in?

Mainly Python. The stack also includes Python, finval.

What license does finbench use?

MIT license lets you use the code freely for any purpose including commercial use, reference results are shared under CC-BY 4.0 which requires attribution.

How hard is finbench to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is finbench for?

Mainly researcher.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.