Trioptima Risk API

Risk data submission and delta ladder management

OpenAPI Specification

trioptima-risk-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Trioptima triReduce Cycles Risk API
  description: 'The triReduce API provides machine-to-machine access to TriOptima''s portfolio compression service for OTC derivatives. The API allows cycle participants to automate their participation in compression cycles, submit trade and risk data, and retrieve compression results and reports.

    The API is available at both the rates (IRS/OIS) and credit derivatives services. Authentication uses OAuth 2.0 tokens. Read-only access (GET only) is provided for initial development and testing; full access (GET and POST) is enabled on request for production use.

    Full interactive documentation is available at /api/v1/doc after authenticating to the relevant triReduce service (e.g., https://rates.trireduce.com/api/v1/doc).'
  version: '1'
  contact:
    name: TriOptima / OSTTRA Support
    url: https://osttra.com
    email: triReduce-support@trioptima.com
  license:
    name: Proprietary
servers:
- url: https://rates.trireduce.com/api/v1
  description: triReduce Rates (Interest Rate Swaps / OIS)
- url: https://credit.trireduce.com/api/v1
  description: triReduce Credit (Credit Default Swaps)
security:
- oauth2: []
tags:
- name: Risk
  description: Risk data submission and delta ladder management
paths:
  /cycles/{cycleId}/risk:
    get:
      operationId: getCycleRisk
      summary: Get Cycle Risk Data
      description: Returns the risk data (delta ladders) submitted by the participant for a given compression cycle.
      tags:
      - Risk
      parameters:
      - name: cycleId
        in: path
        required: true
        description: Unique identifier for the compression cycle
        schema:
          type: string
      responses:
        '200':
          description: Participant risk data for the cycle
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskData'
        '401':
          description: Unauthorized
        '404':
          description: Cycle or risk data not found
    post:
      operationId: submitCycleRisk
      summary: Submit Risk Data for Cycle
      description: Submits risk constraints (delta ladders, DV01 limits) for a compression cycle. Risk data constrains the optimization algorithm to preserve the participant's aggregate risk profile within specified tolerances.
      tags:
      - Risk
      parameters:
      - name: cycleId
        in: path
        required: true
        description: Unique identifier for the compression cycle
        schema:
          type: string
      requestBody:
        required: true
        description: Risk constraints for the compression cycle
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RiskSubmission'
      responses:
        '200':
          description: Risk data submitted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmissionResult'
        '400':
          description: Bad request — invalid risk data
        '401':
          description: Unauthorized
        '403':
          description: Forbidden — read-only access
components:
  schemas:
    RiskSubmission:
      type: object
      required:
      - currency
      - deltaLadder
      properties:
        currency:
          type: string
        deltaLadder:
          type: array
          items:
            type: object
            required:
            - tenor
            - dv01
            properties:
              tenor:
                type: string
              dv01:
                type: number
                format: double
              tolerance:
                type: number
                format: double
    RiskData:
      type: object
      description: Risk constraints submitted by a participant
      properties:
        cycleId:
          type: string
        participantId:
          type: string
        currency:
          type: string
        deltaLadder:
          type: array
          description: DV01 risk by tenor bucket
          items:
            type: object
            properties:
              tenor:
                type: string
                description: Tenor bucket (e.g., 1Y, 2Y, 5Y, 10Y, 30Y)
                example: 5Y
              dv01:
                type: number
                format: double
                description: Dollar value of a basis point for this tenor
              tolerance:
                type: number
                format: double
                description: Allowed DV01 change after compression (fraction of original)
    SubmissionResult:
      type: object
      description: Result of a data submission operation
      properties:
        success:
          type: boolean
        message:
          type: string
        recordsProcessed:
          type: integer
        errors:
          type: array
          items:
            type: object
            properties:
              tradeId:
                type: string
              errorCode:
                type: string
              errorMessage:
                type: string
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.trireduce.com/oauth/token
          scopes:
            read: Read-only access to cycles, trades, and results
            write: Full access to submit trades, risk data, and confirmations
externalDocs:
  description: triReduce API Documentation
  url: https://www.cmegroup.com/education/brochures-and-handbooks/trireduce-api