> ## Documentation Index
> Fetch the complete documentation index at: https://docs.doctacapital.com.ar/llms.txt
> Use this file to discover all available pages before exploring further.

# Yields históricos

> Obtener datos intradiarios históricos de rendimiento de un bono específico

<Note>
  Obtiene los datos históricos de rendimiento de un bono específico.
</Note>

## Parámetros

<ParamField path="symbol" type="string" required>
  Ticker del bono (ej., "AL30").
</ParamField>

## Parámetros de Consulta

<ParamField query="from_date" type="string" required>
  Fecha histórica específica en formato YYYY-MM-DD.
</ParamField>

<ParamField query="to_date" type="string" required>
  Fecha histórica específica en formato YYYY-MM-DD.
</ParamField>

## Ejemplo de Solicitud

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.doctacapital.com.ar/api/v1/bonds/yields/AL30/historical?from_date=2025-01-01&to_date=2025-01-02" \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
  ```
</RequestExample>

## Respuesta Exitosa

<ResponseField name="ticker" type="string">
  Ticker del bono solicitado (ej., "AL30").
</ResponseField>

<ResponseField name="data" type="array">
  Serie histórica de rendimientos para el bono solicitado.
</ResponseField>

<ResponseField name="data[].date" type="string">
  Fecha del dato en formato YYYY-MM-DD.
</ResponseField>

<ResponseField name="data[].tir" type="number">
  Tasa Interna de Retorno (TIR) expresada como decimal.
</ResponseField>

<ResponseField name="data[].tna" type="number">
  Tasa Nominal Anual (TNA) expresada como decimal.
</ResponseField>

<ResponseField name="data[].tea" type="number">
  Tasa Efectiva Anual (TEA) expresada como decimal.
</ResponseField>

<ResponseField name="data[].tem" type="number">
  Tasa Efectiva Mensual (TEM) expresada como decimal.
</ResponseField>

<ResponseField name="from_date" type="string">
  Fecha inicial del rango solicitado (YYYY-MM-DD).
</ResponseField>

<ResponseField name="to_date" type="string">
  Fecha final del rango solicitado (YYYY-MM-DD).
</ResponseField>

<ResponseField name="metadata" type="object">
  Metadatos de la respuesta.
</ResponseField>

<ResponseField name="metadata.total_records" type="number">
  Cantidad total de registros en el período solicitado.
</ResponseField>

## Ejemplo de Respuesta Exitosa

<ResponseExample>
  ```json Success theme={null}
  {
    "ticker": "AL30",
    "data": [
      {
        "date": "2025-01-02",
        "tir": 0.107148,
        "tna": 0.136547,
        "tea": 0.107148,
        "tem": 0.008518
      },
      {
        "date": "2025-01-03",
        "tir": 0.106576,
        "tna": 0.135581,
        "tea": 0.106576,
        "tem": 0.008475
      }
    ],
    "from_date": "2025-01-01",
    "to_date": "2025-02-01",
    "metadata": {
      "total_records": 2
    }
  }
  ```
</ResponseExample>

## Respuestas de Error

### 500 Error Interno del Servidor

Error interno del servidor.

```json theme={null}
{
  "type": "/errors/internal-server-error",
  "title": "Internal server error",
  "status": 500,
  "detail": "Internal server error",
  "correlation_id": "6cd1fd05-63e9-4863-832f-d873e58e9d67"
}
```

### 401 No Autorizado

Token de acceso inválido o faltante.

```json theme={null}
{
  "type": "/errors/authentication-required",
  "title": "Authorization header missing",
  "status": 401,
  "detail": "Authorization header missing",
  "correlation_id": "d6e20e07-0580-4e2d-9480-00a68c1ae493"
}
```

### 400 Solicitud Incorrecta

Parámetro subasset\_class inválido.

```json theme={null}
{
  "type": "/errors/http-error",
  "title": "subasset_class: Value error, Invalid subasset_class 'FIXED_RATES'. Supported values: BOPREAL, CER, DOLLAR_LINKED, FIXED_RATE, HARD_DOLLAR, ON, ON_BADLAR, ON_DOLLAR_LINKED, ON_TAMAR, SUB_SOBERANO, SUB_SOBERANO_BADLAR, SUB_SOBERANO_CER",
  "status": 400,
  "detail": "subasset_class: Value error, Invalid subasset_class 'FIXED_RATES'. Supported values: BOPREAL, CER, DOLLAR_LINKED, FIXED_RATE, HARD_DOLLAR, ON, ON_BADLAR, ON_DOLLAR_LINKED, ON_TAMAR, SUB_SOBERANO, SUB_SOBERANO_BADLAR, SUB_SOBERANO_CER"
}
```

### 400 Fecha Futura

Fecha histórica no puede ser en el futuro.

```json theme={null}
{
  "type": "/errors/http-error",
  "title": "date: Value error, Historical date must be in the past",
  "status": 400,
  "detail": "date: Value error, Historical date must be in the past"
}
```

### 404 No Encontrado

Símbolo/ticker no encontrado o no hay datos disponibles.

```json theme={null}
{
  "type": "/errors/not-found",
  "title": "Resource not found: /bonds/tir_curve/historical",
  "status": 404,
  "detail": "Resource not found: /bonds/tir_curve/historical",
  "correlation_id": "438caef0-f014-4a80-874c-4d0261ff28a3"
}
```

## Notas

* Los datos están disponibles solo para días hábiles (excluyendo fines de semana y feriados)
* Las TIR (Tasas Internas de Retorno) se expresan como decimales (ej., 0.104657 = 10.4657%)
* La disponibilidad de datos históricos puede variar según la clase de subactivo y el rango de fechas
* Los datos incluyen instrumentos específicos con sus respectivos tickers y características financieras


## OpenAPI

````yaml GET /api/v1/bonds/yields/{symbol}/historical
openapi: 3.1.0
info:
  title: API de Bonos de Docta
  description: >-
    API centrada en bonos de Argentina: instrumentos, detalle, cashflows y
    curvas/yields.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.doctacapital.com.ar
security: []
paths:
  /api/v1/bonds/yields/{symbol}/historical:
    get:
      tags:
        - Bonds
      description: >-
        Obtener datos intradiarios históricos de rendimiento de un bono
        específico
      parameters:
        - name: symbol
          in: path
          description: El símbolo del bono
          required: true
          schema:
            type: string
          example: AL30
        - name: from_date
          in: query
          description: Fecha de inicio del rango (YYYY-MM-DD)
          required: true
          schema:
            type: string
            format: date
            default: '2025-01-10'
          example: '2025-01-01'
        - name: to_date
          in: query
          description: Fecha de fin del rango (YYYY-MM-DD)
          required: true
          schema:
            type: string
            format: date
            default: '2025-10-10'
          example: '2025-01-02'
      responses:
        '200':
          description: Datos de curva de rendimiento históricos obtenidos exitosamente
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HistoricalYieldsResponse'
        '400':
          description: Bad Request - Invalid parameters or data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                invalid_subasset_class:
                  summary: Invalid subasset_class parameter
                  description: When the subasset_class parameter contains an invalid value
                  value:
                    type: /errors/http-error
                    title: >-
                      subasset_class: Value error, Invalid subasset_class
                      'FIXED_RATES'. Supported values: BOPREAL, CER,
                      DOLLAR_LINKED, FIXED_RATE, HARD_DOLLAR, ON, ON_BADLAR,
                      ON_DOLLAR_LINKED, ON_TAMAR, SUB_SOBERANO,
                      SUB_SOBERANO_BADLAR, SUB_SOBERANO_CER
                    status: 400
                    detail: >-
                      subasset_class: Value error, Invalid subasset_class
                      'FIXED_RATES'. Supported values: BOPREAL, CER,
                      DOLLAR_LINKED, FIXED_RATE, HARD_DOLLAR, ON, ON_BADLAR,
                      ON_DOLLAR_LINKED, ON_TAMAR, SUB_SOBERANO,
                      SUB_SOBERANO_BADLAR, SUB_SOBERANO_CER
                future_date:
                  summary: Historical date in the future
                  description: When the date parameter is set to a future date
                  value:
                    type: /errors/http-error
                    title: 'date: Value error, Historical date must be in the past'
                    status: 400
                    detail: 'date: Value error, Historical date must be in the past'
        '401':
          description: No autorizado - token de acceso inválido o faltante
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                type: /errors/authentication-required
                title: Authorization header missing
                status: 401
                detail: Authorization header missing
                correlation_id: d6e20e07-0580-4e2d-9480-00a68c1ae493
        '500':
          description: Error interno del servidor
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                type: /errors/internal-server-error
                title: Internal server error
                status: 500
                detail: Internal server error
                correlation_id: 6cd1fd05-63e9-4863-832f-d873e58e9d67
      security:
        - bearerAuth: []
components:
  schemas:
    HistoricalYieldsResponse:
      type: object
      properties:
        ticker:
          type: string
          description: Símbolo del bono
        data:
          type: array
          description: Serie histórica de rendimientos
          items: 1d8ec3f7-6bf3-4e5e-afa4-acbbc6a8e986
        from_date:
          type: string
          format: date
          description: Fecha inicio del rango
          example: '2025-01-01'
        to_date:
          type: string
          format: date
          description: Fecha fin del rango
          example: '2025-02-01'
        metadata: f7788577-6f47-404e-b962-ce7d9173211a
      required:
        - ticker
        - data
        - from_date
        - to_date
        - metadata
    Error:
      required:
        - type
        - title
        - status
        - detail
        - correlation_id
      type: object
      properties:
        type:
          description: El identificador del tipo de error
          type: string
          example: /errors/authentication-required
        title:
          description: Una breve descripción del error
          type: string
          example: Invalid client credentials
        status:
          description: El código de estado HTTP
          type: integer
          example: 401
        detail:
          description: Una descripción detallada del error
          type: string
          example: Invalid client credentials
        correlation_id:
          description: Un identificador único para rastrear esta solicitud de error
          type: string
          format: uuid
          example: 2eb07802-94de-468a-b70f-75a49f3e9516
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````