SBF ConsultRUENRO

SBF Intelligence methodology

Every number in the brief and on the terminal is computed by code from price data. A language model writes only the headline and three context points for an already computed brief — it adds and changes no numbers. code: analyze/llm_context.py

Below is what exactly is measured, from which data and with which thresholds. Each item links to the code that computes it.

Data

Market reaction to an event

For each event type (for example, a rate decision) and each related instrument we take past releases. The 30-minute move is the absolute difference between the open and close of the 30-minute bar starting at the release time.

We take the median over all past cases and divide it by the instrument’s daily ATR(14), so moves are comparable across instruments. The move is also compared with the typical move of the same hour of day: 38 points at 15:30 UTC and at 03:00 UTC are different events. code: event_reactions_job.py

The brief shows the number only if there are at least five past releases; otherwise it says “too few past releases yet”. code: analyze/build_brief_v2.py

Who moved wider than usual

For each instrument the move of the last closed day is divided by its own norm — Wilder’s 14-day average true range (ATR14). A ratio above one means a wider-than-usual move. Data older than three days is not used: that is a data gap, not “yesterday”. code: core/movers.py code: core/focus.py

Pattern statistics

Patterns are searched over the full available history on the H1, H4 and D1 timeframes. For each case we check whether price moved in the pattern’s direction after 3, 5 and 10 candles. Cases closer than six candles to each other count as one. Recomputed weekly. code: pattern_stats_job.py

The brief shows a pattern only with statistics of at least 15 cases. code: analyze/build_brief_v2.py

What our measurements showed: agreement of classic candlestick and chart patterns with the direction of the next five bars is 46.8–51.3% across instruments, statistically indistinguishable from 50%. We show this in the course rather than hide it. code: tools/edu_build/pattern_reality.py

News bursts

A burst is when at least five news items about an instrument appeared in the last hour, and at least three times the average hourly count over the last seven days. Checked every 15 minutes. This is attention, not price. code: news_burst_job.py

How far to trust an item in the brief

Each context item in the brief is labelled with its source: “from quotes” — visible in prices; “from media” — with a link to the outlet; “from social media, unverified” — shown because the market reacts to it, but not confirmed. code: analyze/prompt.md

Limitations