{% extends "base.html" %} {% block title %}{{ d.display_name }}{% endblock %} {% block body %}

← Overview

sleeve {{ d.sleeve }} · venue {{ d.venue }} · as of {{ d.as_of or '—' }} · {{ d.gate_status }} {{ d.gate_reason }}

{% if d.status %}

{{ d.status }}

{{ d.note }}

{% endif %}

{{ d.days }} forward days · {{ '%+.2f'|format(d.total_return_pct) }}% · Sharpe {{ '%.2f'|format(d.sharpe) }} · maxDD {{ '%.1f'|format(100*d.maxdd) }}%

{{ curve|safe }}
{% if d.funding_label %}
Funding health {%- if d.funding_label == 'funded' -%}funded {%- elif d.funding_label == 'decaying' -%}decaying {{ d.funding_decay_run }}/10 {%- else -%}de-funded{%- endif -%}
State{{ d.funding_label }}
First passed{{ d.funding_first_pass_date or '— (deploy-tier by config)' }}
Decay / recovery run{{ d.funding_decay_run }} / {{ d.funding_recovery_run }}
De-funds after 10 consecutive divergence days from the backtest; re-funds after 15 clean days. {% if d.funding_policy_version %}gate-policy v{{ d.funding_policy_version }}{% endif %}
{% endif %} {% if d.alloc_dollars is not none %}
Allocation ${{ d.alloc_dollars|money }}
Target capital${{ d.alloc_dollars|money }}
{% if d.alloc_weight is not none %}
Book weight{{ (d.alloc_weight*100)|round|int }}% of gross
{% endif %}
Ex-ante vol-target sizing, marginal-Sharpe survivor, bounded by the $35k fund ceiling. {% if d.alloc_policy_version %}alloc-policy v{{ d.alloc_policy_version }}{% endif %}
{% elif d.funding_label == 'de-funded' %}
Allocation $0
$0 — de-funded / killswitched, held as cash.
{% endif %} {% if d.exec_twin_sid and d.exec_return_pct is not none %}
Executed reality {{ d.exec_venue or d.venue }}
Executed forward{{ '%+.2f'|format(d.exec_return_pct) }}%
Modeled forward{{ '%+.2f'|format(d.total_return_pct) }}%
Divergence{{ '%+.2f'|format(d.exec_divergence_pct) }}%
{% if exec_slippage_bps is not none %}
Mean slippage{{ '%.1f'|format(exec_slippage_bps) }} bp
{% endif %}
Envelope-basis, funding & fee net — execution decay shows as divergence. {{ d.exec_twin_sid }} →
{% endif %} {% if d.bt_status %}

backtest verdict {{ d.bt_status }} as of {{ d.bt_as_of or '—' }}

CAGR {{ '%+.1f'|format(100*d.bt_cagr) if d.bt_cagr is not none else '—' }}% · vol {{ '%.1f'|format(100*d.bt_ann_vol) if d.bt_ann_vol is not none else '—' }}% · Sharpe {{ '%.2f'|format(d.bt_sharpe) if d.bt_sharpe is not none else '—' }} · maxDD {{ '%.1f'|format(100*d.bt_maxdd) if d.bt_maxdd is not none else '—' }}% · DSR {{ '%.2f'|format(d.bt_dsr) if d.bt_dsr is not none else '—' }} · OOS Sharpe {{ '%.2f'|format(d.bt_oos_sharpe) if d.bt_oos_sharpe is not none else '—' }}

{% endif %} {% if backtest_reference %}

Backtest reference (standalone, vol-targeted @ {{ '%.0f'|format(backtest_reference.vol_target_pct) }}%)

{{ '%+.1f'|format(backtest_reference.ann_return_pct) }}%/yr · Sharpe {{ '%.2f'|format(backtest_reference.sharpe) }} · maxDD {{ '%.1f'|format(backtest_reference.max_dd_pct) }}%

Standalone backtest on the precomputed return series, scaled to a common annual vol target so it's comparable. The forward record above is still building.

{% endif %} {% if sleeve_breakdown %}

Sleeves (standalone, vol-targeted @ 20% — the book combines them naive eq-wt)

{% for sb in sleeve_breakdown %} {% endfor %}
sleeveSharpeann ret%maxDD%
{{ sb.sleeve }} {{ '%.2f'|format(sb.sharpe) }} {{ '%+.1f'|format(sb.ann_return_pct) }} {{ '%.1f'|format(sb.max_dd_pct) }}
{% endif %}

per-period returns & rolling mean (raw — no normalization)

{% for period in ["daily", "weekly", "monthly"] %}
{{ period }}
{% for p in d.periods[period] %} {% else %} {% endfor %}
periodret%rolling mean%
{{ p.label }} {{ '%+.3f'|format(100*p.ret) }} {{ '%+.3f'|format(100*p.rolling_mean) }}
no data yet
{% endfor %}

daily forward rows

{% for p in d.history %} {% endfor %}
dateret%nav
{{ p.date }} {{ '%+.3f'|format(100*p.ret) }} {{ '%.4f'|format(p.nav) }}
{% endblock %}