---
title: "Search Algobrain"
method: GET
path: "/api/v1/algobrain/search"
tags: ["AlgoBrain"]
---

# Search Algobrain

`GET /api/v1/algobrain/search`

## Request

- Base URL: `https://cryptodataapi.com`
- URL: `https://cryptodataapi.com/api/v1/algobrain/search`
- Auth: API key in header `X-API-Key`

Search the AlgoBrain strategy wiki (~5k pages: strategies, the Hyperliquid
signal baskets, concepts, methodology).

**Ranking** (2026-10-10): a page NAMED by the query comes first (its title, an acronym in
its title, or an alias), then pages with the whole query as a phrase in their title or
aliases, then every term in the title/aliases, then every term anywhere, then any term.
Within each tier, concept and strategy pages rank above the ~2.5k generated per-coin
pages, then by BM25. Each result says which tier it came from in ``match``
(``exact_title``, ``title_phrase``, ``title_terms``, ``all_terms``, ``any_term``); its
``score`` (BM25) orders results only within a tier.

Each result carries ``path``, ``title``, ``type``, ``tags``, a ``snippet``
around the match, a relevance ``score`` (higher is better; null when ``q`` is
empty) and ``read`` — the ``/algobrain/page`` URL for the full markdown. Filters
without ``q`` list matching pages by title. A bare call (no ``q``, no filter) lists
the newest pages by their ``updated`` date, so an agent can discover real paths
before it has a query. All tiers. Content is CC BY 4.0.

Strategy pages also carry ``strategy``: the authors' frontmatter —
``backtest_status``, ``horizon``, ``strategy_type``, ``complexity``,
``crowding_risk``, ``markets``, ``edge_source`` and the ESTIMATES
``expected_sharpe`` / ``expected_max_drawdown`` / ``breakeven_cost_bps``, labelled
``expected_sharpe_source: "author_estimate"``. They are literature expectations, not
results measured on any venue, so results are never ranked by them; filter on
``backtest_status`` (e.g. ``cost-corrected``, ``walk-forward-validated``, ``live``)
to find the pages with the most evidence behind them. ``strategy`` is null on
non-strategy pages. Each strategy filter is an any-of match (``horizon=swing``
also finds ``swing|position`` pages).

``strategy.runnable`` / ``strategy.gate_counts`` summarise the page's **gates** — each
condition the strategy checks mapped to one endpoint and one response field, or marked
partial (a human judgement remains) or not runnable (we serve nothing that measures it).
``runnable=all`` finds pages an agent can run end to end. The gates themselves are on
``/algobrain/page``. An unrecognised query parameter is a 400.

## Query parameters

- `q` string: Free-text query, e.g. `atr trailing stop trend following`. Omit it and every filter to list the newest pages
- `type` string, nullable: Page type filter: strategy, concept, entity, market, …
- `tag` string, nullable: Exact tag filter, e.g. mean-reversion
- `category` string, nullable: Top-level wiki folder, e.g. strategies, strategy-development, concepts
- `backtest_status` string, nullable: Strategy pages by the authors' evidence label: untested, naive-backtested, cost-corrected, walk-forward-validated, paper-traded, pilot, live, paused, retired
- `horizon` string, nullable: Holding style: scalp, intraday, swing, position, long-term. NOT a bar interval (the wiki has no 1h/4h field)
- `strategy_type` string, nullable: quantitative, hybrid, algorithmic, technical, fundamental, …
- `complexity` string, nullable: beginner, intermediate, advanced
- `crowding_risk` string, nullable: low, medium, high
- `market` string, nullable: Market the strategy is written for, e.g. crypto, options
- `runnable` string, nullable: Strategy pages by gate coverage: `all` (every condition maps to an endpoint + field), `partial`, `none`
- `limit` integer

## Response `200`

Successful Response

- AlgoBrainSearchResponse
  - `query` string, required
  - `count` integer, required
  - `results` object[], required
  - `license` string, required
  - `source` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/cryptodataapi/apis/crypto-data-api.md) · [All operations](https://skmtc.dev/cryptodataapi/apis/crypto-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cryptodataapi/apis/crypto-data-api/revisions/8628b754ca81?raw)
