PerformanceMetrics
Realized outcomes of past signals, measured against subsequent market data. Every number on this page traces to recorded pipeline output — when there isn't enough history yet, we say so instead of showing simulations.
Understanding Our Metrics
How We Measure Performance
Definitions of every aggregate shown above, so each number can be reconstructed from the chart data.
Win Rate
The share of trading days on which the strategy return (equal-weight across active signals) was positive. Computed only from realized, historical outcomes.
Average Daily Return
The arithmetic mean of the daily strategy returns shown in the chart, in percent. Days with no active signal count as 0% (cash).
Sharpe Ratio
Mean daily return divided by the standard deviation of daily returns, annualized by √252, with the risk-free rate assumed to be zero. Higher is better; small samples make it noisy.
Maximum Drawdown
The largest percentage decline from a historical peak in portfolio value. This metric helps assess the risk and volatility of our signals.
Performance Methodology
How every series on this page is computed, in enough detail to reconstruct it. The implementation lives in service/performance.py and this description is kept in sync with it.
Equal Weighting
Each active signal is given equal weight on each day: the daily strategy return is the simple average of (signal direction × that ticker's close-to-close return) across all signals active that day.
Signal Timing
A signal is followed from the first trading day after it fired until its stated expiration, using close-to-close returns. No intraday execution or fills are modeled.
No Costs Modeled
Transaction costs, slippage and taxes are NOT modeled — real-world results following the same signals would be lower. This is a research measurement, not a track record.
Benchmark
SPY close-to-close returns over the same trading days when SPY exists in the research database. When it doesn't, the benchmark falls back to the equal-weight average daily return of the entire research universe, and every chart labels it as exactly that — the label always states which benchmark you are looking at.
Work In Progress
Backtesting Process
How model training runs are evaluated today — and what still has to happen before any output should be treated as validated.
Historical Training Data
Models are trained on historical market data with forward-return labels. Each run's exact training window and ticker set are recorded in the model registry above.
Held-Out Test Split
Each training run reports a single evaluation on a chronologically held-out test split (the metrics shown in Model Backtesting). This limits — but does not eliminate — overfitting risk.
Independent Validation: Pending
The system has NOT yet been independently validated. Until it is, signals and forecasts should be treated as experimental research output, not as a basis for trading.
IMPORTANT DISCLAIMER:
The information provided by Project K.E.M. is for informational purposes only and does not constitute financial advice, investment recommendations, or an offer to buy or sell securities. The signals generated are the result of a mathematical model and should not be the sole basis for any investment decision.
Past performance is not indicative of future results. All investments involve risk and the potential for loss. Users should conduct their own research and consult with qualified financial professionals before making investment decisions.
Project K.E.M. is not a registered investment advisor and does not provide personalized financial advice.