--- license: apache-2.0 language: en library_name: transformers tags: - finance - news - macro - financial-news - text-classification pipeline_tag: text-classification --- # binomial-shannon-2 A **financial news characterizer with two modes**: it reads *ticker-tagged* company news the way [binomial-shannon-1](https://huggingface.co/BinomialTechnologies/binomial-shannon-1) does (19 structured features), and reads *macro* news (central banks, inflation, rates, FX, commodities, geopolitics) with a dedicated 35-output macro head bank. A built-in router selects the right head set per article. ~15-30 ms on CPU. ## Quick start ```python from transformers import AutoTokenizer, AutoModel tok = AutoTokenizer.from_pretrained("BinomialTechnologies/binomial-shannon-2") model = AutoModel.from_pretrained("BinomialTechnologies/binomial-shannon-2", trust_remote_code=True) inputs = tok("[FEED: reuters] [SITE: reuters.com] [DATE: 2026-03-18]\n\n" "TITLE: Fed holds rates, signals two cuts later this year\n\nBODY: ...", return_tensors="pt", truncation=True, max_length=1024) out = model.predict(**inputs) out["mode_prob"] # [P(ticker), P(macro)] out["topic_prob"] # 18-way macro topic distribution out["directional_read"] # signed macro read in [-1, +1] out["hawkish_dovish_prob"] # 5-way, meaningful on monetary-policy / rates articles ``` ## What it outputs **Ticker mode (19 features, identical to shannon-1)** — event type (10 binary), tone, implied_direction, novelty, claim_type (4), specificity, materiality_if_true. **Macro mode (35 features):** | Head | Type | Meaning | |---|---|---| | `topic` | softmax (18) | monetary_policy / fiscal_policy / inflation / growth / labor / rates_fixed_income / equities_markets / fx_currency / energy / commodities / credit_banking / crypto / mergers_acquisitions / trade_policy / geopolitics / single_company / technicals / other | | `directional_read` | [-1, +1] | net read for risk assets implied by the article | | `severity` | softmax (5) | noise / minor / notable / major / crisis | | `novelty` | softmax (3) | rehash / commentary / breaking | | `claim_type` | softmax (4) | fact / opinion / rumor / forecast | | `hawkish_dovish` | softmax (5) | dovish → hawkish; meaningful on monetary-policy / rates articles | Every macro head is a softmax or a signed scalar — argmax for a label, the weighted score for a continuous summary, or the entropy for uncertainty. ## Eval Held-out forward-temporal test set (Oct 2025 – May 2026, never seen during training). Numbers from a reproducible harness over all 15,805 macro test articles + a seeded 10,000 ticker sample. ### Ticker heads (parity with shannon-1) | Event-flag macro F1 | implied_direction | tone | claim acc | |---|---|---|---| | 0.79 | 0.854 | 0.834 | 89.5% | The ticker bank matches the standalone shannon-1 model — shannon-2 is a strict superset, adding macro without regressing ticker quality. ### Macro heads (n=15,805) | Head | Metric | Value | |---|---|---| | topic (18-way) | accuracy | **0.814** | | directional_read | Pearson vs panel | **+0.783** | | severity (5-way) | accuracy | 0.708 | | novelty (3-way) | accuracy | 0.648 | | claim_type (4-way) | accuracy | 0.785 | | hawkish_dovish (5-way) | accuracy | 0.616 (n=1,650) | Per-topic F1 (selected): | Topic | F1 | Support | |---|---|---| | commodities | 0.94 | 2,061 | | equities_markets | 0.88 | 3,613 | | fx_currency | 0.88 | 3,861 | | monetary_policy | 0.79 | 1,662 | | inflation | 0.70 | 526 | | geopolitics | 0.48 | 346 | | technicals | 0.25 | 517 | Strongest on high-volume market topics (commodities, FX, equities, monetary policy); weakest on technicals and geopolitics, which are lower-support and more heterogeneous. **Routing.** Ticker and macro articles arrive on structurally distinct feeds (per-company news vs. macro wires), so the router separates the two modes essentially perfectly — it is a convenience for serving mixed streams, not a hard classification result. ## Architecture A specialized ~150M-parameter encoder shared across a 2-way router and two head banks (ticker + macro), each a 3-layer MLP over a CLS+masked-mean pooled representation. - ~150M encoder params + lightweight head banks - 4096-token context (1024 default at inference) - bf16 GPU / fp32 CPU - ~15-30 ms CPU ## How it was trained - **Corpus**: ticker-tagged company news + press releases and a macro news corpus (2018-2026) - **Labels**: distilled from a frontier reasoning model against per-mode rubrics (separate ticker and macro labeling specs) - **Split**: forward temporal — train on ≤2025-09-30, test on 2025-10 → 2026-05 - **Compute**: trained from the base encoder on a single B200 ## Caveats - **Trained against frontier-LLM labels.** Eval correlations are partly imitation; treat the outputs as structured features, not ground truth. - **Macro corpus is English-language wire news**, weighted toward 2024-2026. - **`hawkish_dovish` only fires meaningfully on monetary-policy / rates articles** (it is loss-masked elsewhere during training). - **Tier 2** — research preview. Don't use the outputs as standalone trading signals; combine with your own pipelines. ## License Apache 2.0, like the rest of the Binomial AI Research model zoo. ## Citation ```bibtex @misc{binomial-shannon-2-2026, title = {binomial-shannon-2: A dual-mode financial news characterizer (ticker + macro)}, author = {Binomial AI Research}, year = {2026}, url = {https://huggingface.co/BinomialTechnologies/binomial-shannon-2} } ```