{% extends "base.html" %} {% from "_macros.html" import pill, icon %} {% set active = "scan" %} {% block title %}Scan — wave-alpha{% endblock %} {% block content %}
{% if not scan_ids %}

Scan

{{ icon('search', 22) }}

No scans yet

A scan runs the wave engine across a list of tickers and saves the report. Run one from the CLI to populate this page.

# Scan a list of tickers as of today uv run wave-alpha scan --symbols AAPL,MSFT,NVDA,SPY # Or use a curated universe file uv run wave-alpha scan --universe data/universe_curated.txt

Once a scan finishes, refresh this page — it will appear here automatically.

{% else %}

Scan · {{ current_id }}

{% if report %} {{ report.n_total }} ticker{{ "s" if report.n_total != 1 else "" }} · {{ report.duration_seconds }}s · {{ report.n_with_signal }} signal{{ "s" if report.n_with_signal != 1 else "" }} · {{ report.n_errored }} error{{ "s" if report.n_errored != 1 else "" }} {% endif %}

{% for sid in scan_ids[:5] %} {{ sid }} {% endfor %} {% if scan_ids|length > 5 %}
… {{ scan_ids|length - 5 }} more
{% for sid in scan_ids[5:] %} {{ sid }} {% endfor %}
{% endif %}
{% if report %}
Signals
{{ report.n_with_signal }}
of {{ report.n_total }}
Errors
{{ report.n_errored }}
tickers failed
Duration
{{ report.duration_seconds }}s
end-to-end
Coverage
{{ report.n_total }}
tickers
Sort
{% endif %} {% endif %}
{% endblock %}