How DIONYSUS filters and ranks symbols

Signals, quality scores, SATA thresholds, and risk profiles—how the optimizer selects the universe before allocation.

Before any allocation strategy runs

DIONYSUS does not optimize every ticker in the market. It:

  1. Loads symbol analysis documents (from Firestore—the same analysis pipeline that powers ATHENA-driven views in IRIS).
  2. Filters by signal and price (must have a usable trade signal and a positive price).
  3. Scores each symbol with a shared quality function (from the METIS library) so DIONYSUS and other services can align on definitions.
  4. Sorts by quality (with a deterministic tie-break so alphabetical bias does not dominate).
  5. Applies risk-profile thresholds and signal-specific SATA floors.

Nothing here promises future performance; it encodes repeatable rules for what the product is willing to consider.

Signal filter

Typically, symbols must carry a BUY, ADD, or HOLD signal (as modeled in analysis). Other signals are excluded from the allocation pool for this path.

Quality score (high level)

The quality score blends factors such as:

  • SATA (composite technical alignment score),
  • Mansfield relative strength,
  • Stage (cycle label) and stage confidence,
  • Momentum / breakout context,
  • Risk-adjusted factors derived from analysis fields.

Exact weights live in METIS; DIONYSUS calls calculate_symbol_quality_score with your max_risk_per_trade so conservative profiles can require higher composite scores than aggressive ones.

Risk profiles: conservative / moderate / aggressive

DIONYSUS maps max_risk_per_trade to a profile:

  • Conservative — tighter minimum quality score.
  • Moderate — middle threshold.
  • Aggressive — lower minimum quality score (more names pass the filter).

This mirrors how risk appetite is expressed in the UI—not as investment advice, but as stricter or looser filtering of the same candidate pool.

SATA thresholds by signal type

Buy-side entry signals (e.g. BUY / ADD) and HOLD are treated differently:

  • BUY/ADD can use a more lenient minimum SATA (e.g. ≥ 7.0 in product documentation).
  • HOLD typically requires a stricter SATA (e.g. ≥ 8.0) because holding an existing position without a fresh entry thesis is judged more harshly.

Exact numbers are subject to change with METIS; always check release notes if your workflow depends on a specific floor.

Why this matters for retail investors

  • Ranking is not “pick the best stock”; it is ordering a list that already passed model and data gates.
  • Disagreement with Hunt or your own research is normal—different services, different objectives.

Progress is saved in this browser. Cloud sync requires PUBLIC_IRIS_API_BASE, IRIS CORS allowlist, and window.__trinityIdToken.