# TradingView



TradingView's own screener backend — rank a whole market by price, market cap, and sector, read any instrument's quote card, and find instruments by name.



## TradingView Screener

Rank a whole market by market cap — price, change, volume, market cap, P/E, and sector on every card, fifty a page.

- Method: `GET`
- Path: `/v1/market/tradingview/screener`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `market` | string | optional | A TradingView market key — `indonesia`, `america`, `crypto`, `forex`, `japan`, and every other exchange group the platform carries. |
| `page` | integer | optional | Result page. |
| `count` | integer | optional | Cards per page. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/screener \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "market": "indonesia",
    "total": 843,
    "items": [
      {
        "symbol": "IDX:BBCA",
        "ticker": "BBCA",
        "exchange": "IDX",
        "name": "PT Bank Central Asia Tbk",
        "close": 6400,
        "change_percent": 1.587,
        "change": 100,
        "volume": 67749800,
        "market_cap": 776632795312500,
        "pe_ratio": 13.56,
        "sector": "Finance"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Symbol

One instrument's quote card — price, change, open/high/low, volume, market cap, P/E, EPS, sector, and the company's own description.

- Method: `GET`
- Path: `/v1/market/tradingview/symbol`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `symbol` | string | required | A ticker, with or without its exchange prefix. |
| `market` | string | optional | The market the ticker belongs to. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/symbol \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "symbol": "IDX:BBCA",
    "name": "PT Bank Central Asia Tbk",
    "exchange": "IDX",
    "type": "stock",
    "currency": null,
    "close": 6400,
    "change": 100,
    "change_percent": 1.587,
    "open": 6350,
    "high": 6400,
    "low": 6300,
    "volume": 67749800,
    "market_cap": 776632795312500,
    "pe_ratio": 13.56,
    "eps": 471.83,
    "sector": "Finance",
    "description": "PT Bank Central Asia Tbk provides banking services.",
    "logo": null
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Symbol Search

Find instruments by name or ticker — symbol, exchange, type, and country on every hit.

- Method: `GET`
- Path: `/v1/market/tradingview/search`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `q` | string | required | What to search instruments by. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/search \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "query": "BBCA",
    "items": [
      {
        "symbol": "BBCA",
        "exchange": "IDX",
        "name": "PT Bank Central Asia Tbk",
        "type": "stock",
        "country": "Indonesia"
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Technicals

A whole market's technical indicators — RSI, MACD, Stochastic, ADX, CCI, Williams %R, moving averages, and the platform's own rating.

- Method: `GET`
- Path: `/v1/market/tradingview/technicals`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `market` | string | optional | A market key from the markets endpoint. |
| `page` | integer | optional | Result page. |
| `count` | integer | optional | Cards per page. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/technicals \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "market": "indonesia",
    "items": [
      {
        "symbol": "IDX:BBCA",
        "rsi": 54.92, "macd": 38.48, "macd_signal": 53.37,
        "stoch_k": 46.15, "stoch_d": 47.0, "adx": 10.6,
        "cci20": 38.02, "williams_r": -33.33, "awesome_oscillator": 45.07,
        "sma_10": 6347.5, "sma_50": 6204.5, "ema_10": 6349.45, "ema_50": 6262.36,
        "rating": 0.27, "rating_ma": 0.53, "volatility_daily": 1.59
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Performance

A whole market's performance grid — returns over one week, one month, three months, six months, one year, and year-to-date.

- Method: `GET`
- Path: `/v1/market/tradingview/performance`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `market` | string | optional | A market key from the markets endpoint. |
| `page` | integer | optional | Result page. |
| `count` | integer | optional | Cards per page. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/performance \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "market": "indonesia",
    "items": [
      {
        "symbol": "IDX:BBCA",
        "close": 6400,
        "change_percent": 1.587,
        "perf_1w": 0.787,
        "perf_1m": -2.29,
        "perf_3m": 8.47,
        "perf_6m": -10.8,
        "perf_1y": -23.58,
        "perf_ytd": -20.74
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Financials

A whole market's fundamentals — revenue, net income, debt, assets, market cap, P/E, P/B, and head count.

- Method: `GET`
- Path: `/v1/market/tradingview/financials`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `market` | string | optional | A market key from the markets endpoint. |
| `page` | integer | optional | Result page. |
| `count` | integer | optional | Cards per page. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/financials \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "market": "indonesia",
    "items": [
      {
        "symbol": "IDX:BBCA",
        "total_revenue": 126869068000000,
        "net_income": 57537287000000,
        "total_debt": 55359119000000,
        "total_assets": 1660579336000000,
        "market_cap": 776632795312500,
        "pe_ratio": 13.56,
        "pb_ratio": 2.8,
        "employees": 27937
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Calendar

A whole market's reporting calendar — the last and next earnings release dates and the current dividend yield.

- Method: `GET`
- Path: `/v1/market/tradingview/calendar`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `market` | string | optional | A market key from the markets endpoint. |
| `page` | integer | optional | Result page. |
| `count` | integer | optional | Cards per page. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/calendar \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "market": "indonesia",
    "items": [
      {
        "symbol": "IDX:BBCA",
        "earnings_release_date": 1785231300,
        "earnings_release_next_date": 1792065600,
        "dividend_yield_percent": 5.65
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Markets

Every market key the screener family accepts — the vocabulary for the `market` parameter on the other TradingView endpoints.

- Method: `GET`
- Path: `/v1/market/tradingview/markets`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/markets \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "count": 34,
    "markets": [
      { "key": "indonesia", "name": "Indonesia" },
      { "key": "america", "name": "United States" },
      { "key": "crypto", "name": "Crypto" },
      { "key": "forex", "name": "Forex" }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ"
  }
}
```

## TradingView Chart

OHLCV candles off the platform's own chart transport — any symbol, ten resolutions, up to a thousand candles back.

- Method: `GET`
- Path: `/v1/market/tradingview/chart`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `symbol` | string | required | An exchange-qualified symbol, like `IDX:BBCA`. |
| `resolution` | string | optional | Candle size — minutes (`1`, `5`, `15`, `30`, `60`, `120`, `240`) or `1D`, `1W`, `1M`. |
| `count` | integer | optional | How many candles, bounded by the instrument's own history. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/chart \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "symbol": "IDX:BBCA",
    "resolution": "1D",
    "candles": [
      {
        "time": 1747792800,
        "open": 9700,
        "high": 9725,
        "low": 9550,
        "close": 9700,
        "volume": 169739200
      }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T16:30:00.000Z",
    "age_seconds": 30,
    "next_update_at": "2026-08-20T16:35:00.000Z"
  }
}
```

## TradingView Countries

Every market key grouped by the country it trades in — the geography of the screener family.

- Method: `GET`
- Path: `/v1/market/tradingview/countries`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/countries \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "count": 30,
    "countries": [
      { "country": "Indonesia", "markets": ["indonesia"] },
      { "country": "United States", "markets": ["america"] },
      { "country": "Global", "markets": ["crypto", "forex", "futures", "cfd", "bond"] }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ"
  }
}
```

## TradingView Indicators

The scanner column vocabulary the technicals, performance, financials, calendar, and screener endpoints read.

- Method: `GET`
- Path: `/v1/market/tradingview/indicators`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/market/tradingview/indicators \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "count": 44,
    "groups": [
      { "group": "technicals", "columns": ["RSI", "MACD.macd", "MACD.signal", "Stoch.K", "Stoch.D", "ADX", "CCI20", "W.R", "AO", "SMA10", "SMA50", "EMA10", "EMA50", "Recommend.All", "Recommend.MA", "Volatility.D"] },
      { "group": "performance", "columns": ["Perf.W", "Perf.1M", "Perf.3M", "Perf.6M", "Perf.Y", "Perf.YTD"] }
    ]
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ"
  }
}
```