For data evaluation

What the dataset is, and how to check it yourself.

Hourly news-sentiment scores and typed market events for 30 crypto pairs. One record per symbol per hour, delivered as a REST API and as MCP tools. This page is the reference for someone evaluating the data itself. It states what the fields mean and what is provable, and it sends you elsewhere for every measured number.

Fields

A normalized score in [-1, 1], a confidence in [0, 1], a direction, the typed events that fired in the bucket, and the source articles behind the score with titles and links. Nothing is derived from prices, and no price or return series is ever served. Field-by-field shapes are in the API reference.

Point in time

Every bucket carries the timestamps it was built from. The window is closed before the bucket is written, so a bucket cannot contain anything published after it. A backtest against this history has no lookahead by construction, not by policy. On the price side, entry is the first close realized after publication rather than the bucket's own close, and the publish-delay distribution is on the research page with the rest of the method.

Provenance you can check

Every hourly bucket's sha256 is committed to a public append-only log at publish time, one file per UTC day. Clone that repository and run one command to verify the history was never rewritten. A free key is enough, and verifying zero buckets exits non-zero, so a pass cannot come from the verifier finding nothing to check.

That is the whole claim, and it is checkable without asking us anything. It is also the reason this dataset is worth evaluating over a cheaper one: a vendor can assert an unrewritten history, and a commitment log lets you test the assertion.

Coverage and honesty markers

The corpus starts 2026-04-06 and grows by a day per day. Buckets from before live collection are labeled reconstructed: true on every point. They are never pooled with live-collected data in any published number, and they gate nothing, so you can drop them, keep them, or measure them against live yourself.

Some assets in the universe emit little directional signal, because the news does not name them often enough to score. That is a property of the corpus rather than a defect, and the docs say which. Stating it here is cheaper for both of us than having you discover it in evaluation.

What is published about performance

A price-joined backtest is public, including its negative results. The signal is framed as filtering or sizing a baseline strategy, never as generating entries, because that is the only claim an hourly news signal can support. Read the numbers at the source rather than from a summary here: shingou.io/research.

What you are buying

As-of stamped buckets, a verifiable history, and typed events on the same clock. Priced on freshness and depth, which are properties of the data rather than of its profitability. Nothing here rests on a demonstrated edge.

Licensing: paid tiers are commercial use included. The free tier is personal and non-commercial use. Per tier limits and prices are on the plans table.

Method

News is ingested, embedded, clustered into stories, scored once per story by an LLM, then aggregated into one signal per symbol per hour. Scoring once per deduped story rather than once per article is what keeps an LLM-scored feed affordable. The aggregation is deterministic, documented and unit-tested, and the scorer version is stamped on every signal, so a prompt change is measurable rather than silent.

Questions this page does not answer

Anything about a processing agreement, a subprocessor list, or a custom delivery format. Ask and you will get a straight answer or a straight no. A free key needs no conversation and no signup wall on the demo or the docs, so evaluating the data does not require talking to anyone first.