FairValue

Checking model

Esc

  • EnvironmentOverviewWhat FairValue measures, what it found, where to go next.
  • EnvironmentTerminalExplore, compare and track players; market, league and model views.
  • EnvironmentStoriesValuations, head-to-heads and research findings, told as stories.
  • TerminalPlayer ExplorerSearch, filter and sort the player export.
  • TerminalComparison StudioTwo to four players on one scale.
  • TerminalWatchlistsNamed collections, kept in this browser.
  • TerminalMarket LandscapeHow observed value is distributed, and where the model drifts.

↑ ↓ to move · Enter to open · Esc to closeLoading player index…

Valuation story

Inside a valuation: Riyad Idrissi

From the model's €2.2M starting point to €4.1M, one input at a time, and where that lands against an observed €4M.

Built from Published SHAP output for the served Model A (reports/explainability); the player was in its training data.10 chapters

Observed €4MModel A €4.1M (served, in-sample)Serie A · Left-Back

Riyad

Idrissi

LB

№ 885226Established €3.8M +0.05

Chapter 01: The valuation

Riyad Idrissi: 20, left-back in Serie A. Transfermarkt's valuation is €4M, in the Established tier. This story follows how Model A arrives at its own figure, one input at a time.

Chapter 02: Where every estimate starts

Before it looks at this player, Model A sits at €2.2M: its average output across the players it was trained on. Every player's journey starts here. Each input then multiplies the estimate up or down.

Chapter 03: League

League (Serie A, Italy) raises the estimate ×2.77: from €2.2M to €6M.

Across all modelled players this input moves Model A's estimate by ×1.96 on average, in one direction or the other. Here it moves it more than usual.

Chapter 04: Age

Age (21.0 yrs) raises the estimate ×2.08: from €6M to €12.5M.

Across all modelled players this input moves Model A's estimate by ×1.60 on average, in one direction or the other. Here it moves it more than usual.

Chapter 05: Appearances

Appearances (26) lowers the estimate ×0.77: from €12.5M to €9.6M.

Across all modelled players this input moves Model A's estimate by ×1.28 on average, in one direction or the other. Here it moves it more than usual.

Chapter 06: Club points per game

Club points per game (1.13) lowers the estimate ×0.83: from €9.6M to €8M.

Across all modelled players this input moves Model A's estimate by ×1.38 on average, in one direction or the other. Here it moves it less than usual.

Chapter 07: Days since last match

Days since last match (83) lowers the estimate ×0.85: from €8M to €6.8M.

Across all modelled players this input moves Model A's estimate by ×1.11 on average, in one direction or the other. Here it moves it more than usual.

Chapter 08: Everything else

The remaining 15 inputs are individually small. Together they lower the estimate ×0.60, to €4.1M.

Chapter 09: The estimate

After all 20 inputs, Model A says €4.1M. Transfermarkt says €4M. The residual, log(observed) − log(estimate), is −0.030: the observed value is below the estimate, so the model over-predicts by ×1.03.

The served model was trained on this player, so this is an in-sample figure; on unseen players a typical miss is ×1.50.

Chapter 10: What this is not

SHAP describes the model's arithmetic for these inputs. It is not a price, a scouting judgement or a statement about what causes value, and the order of the steps is by size, not sequence.

The same record, with Model B and the player's traits, is in the dossier.

Starting point€2.2Mobserved €4M

Every Model A valuation starts at €2.2M, the model's average output over the players it was trained on (log 14.592).

raises the estimate lowers it Model A estimate observed value (dashed line)Log scale: equal lengths are equal multiplications. Inputs are ordered by size of effect, not in any causal sequence. Published SHAP run for the served Model A; this player was in its training data.