{% from "_macros.html" import pat, wlabel, pill, tri, popover %} {% if not rows %}

No rows match these filters.

{% else %} {% for r in rows %} {% endfor %}
Ticker Pattern Bias Score {% call popover("How to read Score", anchor="enumeration") %}

Final score for the row's top candidate after the coherence multiplier and (optional) LLM blend. Higher = stronger fit. Pair with coherence and right-edge before acting.

{% endcall %}
Coherence {% call popover("How to read Coherence", anchor="coherence") %}

Multi-timeframe agreement on the top count. ✓ = strong, ⚠ = weak, dot = missing timeframe data. The numeric value is the multiplier applied to the engine score.

{% endcall %}
R:R {% call popover("How to read R:R", anchor="trade-plan") %}

Reward:risk for the row's trade signal. Targets default to fib_extension; rows without a valid signal show "—".

{% endcall %}
Entry / Stop / Target Right-edge {% call popover("How to read Right-edge", anchor="right-edge") %}

Probability the most recent pivot is real and won't be invalidated by a deeper move against it. Trained per degree on real pivots from 2015–2024. Open the row's deep-dive to see the active model, degree, and calibration.

{% endcall %}
{{ r.ticker }} {{ pat(r.top_pattern) }} {% if r.direction == "up" %}{{ pill("LONG", "bull", dot=true) }} {% elif r.direction == "down" %}{{ pill("SHORT", "bear", dot=true) }} {% else %}{{ pill("—", "muted") }}{% endif %} {% if r.top_score is not none %} {{ "%.2f"|format(r.top_score) }} {% else %}—{% endif %} {% if r.coherence is not none %}{{ "%.2f"|format(r.coherence) }}{% else %}—{% endif %} {{ "%.2f"|format(r.signal_rr|float) if r.signal_rr is not none else "—" }} {% if r.signal_entry %}{{ r.signal_entry }} / {{ r.signal_stop }} / {{ r.signal_target }} {% else %}—{% endif %} {% if r.right_edge_proba is not none %} {{ "%.2f"|format(r.right_edge_proba) }} {% else %}—{% endif %}
{% endif %}