---
title: "Get Technical Regime Symbol"
method: GET
path: "/api/v1/indicators/technical/{symbol}"
tags: ["Indicators"]
---

# Get Technical Regime Symbol

`GET /api/v1/indicators/technical/{symbol}`

## Request

- Base URL: `https://cryptodataapi.com`
- URL: `https://cryptodataapi.com/api/v1/indicators/technical/{symbol}`
- Auth: API key in header `X-API-Key`

Per-asset Technical / Structural detail with 60d daily history.

`history` contains compact daily bars (close, RSI-14, BB bandwidth, SMA-200,
above_200) suitable for sparkline rendering.

Hyperliquid thousand-unit tickers (``kBONK``, ``kPEPE``, ``kSHIB``) are
accepted as aliases of the plain symbol.

## Path parameters

- `symbol` string, required

## Response `200`

Successful Response

- TechnicalRegimeDetailResponse
  - `symbol` string, required
  - `source` 'binance_spot' | 'hyperliquid_perp', required
  - `price` number, required
  - `ma` MovingAverageStateModel, required
    - `sma_50` number, nullable
    - `sma_100` number, nullable
    - `sma_200` number, nullable
    - `above_50` boolean, nullable
    - `above_100` boolean, nullable
    - `above_200` boolean, nullable
    - `dist_from_50_pct` number, nullable
    - `dist_from_100_pct` number, nullable
    - `dist_from_200_pct` number, nullable
    - `last_cross_200` 'golden' | 'death', nullable
    - `days_since_cross_200` integer, nullable
    - `last_cross_50_100` 'golden' | 'death', nullable
    - `days_since_cross_50_100` integer, nullable
    - `sma_20` number, nullable
    - `above_20` boolean, nullable
    - `dist_from_20_pct` number, nullable
  - `bollinger` BollingerStateModel, required
    - `middle` number, nullable
    - `upper` number, nullable
    - `lower` number, nullable
    - `bandwidth_pct` number, nullable
    - `squeeze_percentile` number, nullable
    - `in_squeeze` boolean
    - `days_in_squeeze` integer
    - `expanding` boolean
  - `range_state` RangeStateModel, required
    - `low` number, nullable
    - `high` number, nullable
    - `width_pct` number, nullable
    - `position_pct` number, nullable
    - `zone` 'near_low' | 'mid' | 'near_high', nullable
    - `near_high` boolean
    - `near_low` boolean
  - `rsi` RsiStateModel, required
    - `rsi_14_1d` number, nullable
    - `rsi_14_1h` number, nullable
    - `state_1d` 'overbought' | 'oversold' | 'neutral'
    - `state_1h` 'overbought' | 'oversold' | 'neutral'
    - `extreme_1d` boolean
    - `extreme_1h` boolean
    - `extreme_duration_bars` integer
  - `sr` SupportResistanceModel
    - `support` SRLevelModel[]: Nearest-to-price first; each dist_pct is negative
      - `price` number, required
      - `strength` integer, required: Swing-pivot touches clustered into this level
      - `dist_pct` number, required: Signed % distance from current price
    - `resistance` SRLevelModel[]: Nearest-to-price first; each dist_pct is positive
      - `price` number, required
      - `strength` integer, required: Swing-pivot touches clustered into this level
      - `dist_pct` number, required: Signed % distance from current price
  - `history` TechnicalHistoryEntry[]
    - `date` string, required
    - `close` number, required
    - `rsi_14` number, nullable
    - `bb_bw_pct` number, nullable
    - `sma_200` number, nullable
    - `above_200` boolean, nullable
  - `timestamp` 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)
