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

# Calculate a volatility grid from an equity surface.

> Use this operation to evaluate only the equity volatility surface supplied in the request; it does not
modify market data. Supported strike types are `Absolute`, `PercentForward`, and
`PercentSpot`. Each maturity is a day offset and must have a corresponding list of strikes.



## OpenAPI

````yaml /risk-and-pricing/atoti-risk-services/apis-endpoints/openapi/openapi.mintlify.json post /api/MarketData/GetEquityVolGrid
openapi: 3.0.4
info:
  title: Derivitec Api 1.0
  version: '1.0'
servers:
  - url: https://api.riskportal.activeviam.com
security:
  - oauth2: []
  - apikey: []
tags:
  - name: AdminUser
  - name: AtotiReport
  - name: AtotiSession
  - name: BloombergOAuth
  - name: Bond
  - name: BondYieldCurvePage
  - name: BookAccess
  - name: Books
  - name: Commodity
  - name: Counterparties
  - name: Currencies
  - name: Equity
  - name: EquityDividend
  - name: EquityPage
  - name: FeatureFlag
  - name: Fx
  - name: FxPage
  - name: GroupAccess
  - name: Home
  - name: LegacyPosition
  - name: MarketData
  - name: MarketDataProvider
  - name: MarketDataProviderAccess
  - name: Meta
  - name: Notification
  - name: Organisation
  - name: PnLReport
  - name: PortfolioAccess
  - name: Portfolios
  - name: Position
  - name: PositionFilter
  - name: PricingEnvironment
  - name: PricingEnvironmentAccess
  - name: RateAsset
  - name: RateAssetPage
  - name: Report
  - name: ReportDefinition
  - name: ReportHistoryLauncherQuery
  - name: ReportLauncher
  - name: ReportQuery
  - name: ReportQueryViewUser
  - name: ReportRestriction
  - name: ReportView
  - name: RiskReport
  - name: Tradable
  - name: TradeBooking
  - name: User
  - name: VarReport
  - name: VarReportQuery
  - name: YieldCurvePage
paths:
  /api/MarketData/GetEquityVolGrid:
    post:
      tags:
        - MarketData
      summary: Calculate a volatility grid from an equity surface.
      description: >-
        Use this operation to evaluate only the equity volatility surface
        supplied in the request; it does not

        modify market data. Supported strike types are `Absolute`,
        `PercentForward`, and

        `PercentSpot`. Each maturity is a day offset and must have a
        corresponding list of strikes.
      operationId: GetEquityVolGrid
      requestBody:
        description: >-
          The calculation payload. `VolSurface`, `Maturities`, and `Strikes`
          must be non-empty; the outer strike-list count and order must match
          the maturities, and `StrikeType` selects absolute or percentage
          interpretation.
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/ApiGetEquityVolGridRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/ApiGetEquityVolGridRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/ApiGetEquityVolGridRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/ApiGetEquityVolGridRequest'
      responses:
        '200':
          description: >-
            Returns a grid preserving the requested maturities and strikes with
            evaluated volatilities, or an unsupported-strike-type or calculation
            error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiGetEquityVolGridResponse'
        '400':
          description: BadRequest
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
        - oauth2: []
        - apikey: []
components:
  schemas:
    ApiGetEquityVolGridRequest:
      required:
        - $type
      type: object
      properties:
        market_data_environment_name:
          type: string
          description: >-
            Name of the market-data environment to use. Supply either this name
            or `provider_id`, not both.
          nullable: true
          example: Example market data
        provider_id:
          type: string
          description: >-
            Opaque identifier of the market-data provider to use. Supply either
            this identifier or `market_data_environment_name`, not both.
          nullable: true
        vol_surface:
          $ref: '#/components/schemas/EquityVolSurface'
        maturities:
          type: array
          items:
            type: integer
            format: int32
          description: >-
            Maturities as day offsets locating the requested equity volatility
            grid values.
          nullable: true
        strikes:
          type: array
          items:
            type: array
            items:
              type: number
              format: double
          description: >-
            Strike lists locating the requested values, with one list aligned to
            each maturity.
          nullable: true
        strike_type:
          enum:
            - absolute
            - percent_spot
            - percent_forward
          type: string
          description: Strike type locating the requested equity volatility grid values.
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.MarketData.ApiGetEquityVolGridRequest,
              Derivitec.Web.Core
      additionalProperties: false
      description: >-
        Requests a volatility grid by evaluating a supplied surface at specified
        maturity and strike coordinates.
    ApiGetEquityVolGridResponse:
      required:
        - $type
      type: object
      properties:
        is_success:
          type: boolean
          description: >-
            Whether the operation completed successfully. The default is `true`;
            error outcomes set it to `false`.
          example: true
        error_messages:
          type: array
          items:
            type: string
          description: >-
            Messages explaining operation-level failures. The collection is
            empty by default.
          nullable: true
        vol_grid:
          $ref: '#/components/schemas/EquityVolGrid'
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.MarketData.ApiGetEquityVolGridResponse,
              Derivitec.Web.Core
      additionalProperties: false
      description: Returns the evaluated volatility grid.
    EquityVolSurface:
      description: >-
        Equity volatility surface with benchmark coordinates and a spot
        reference.
      discriminator:
        propertyName: $type
        mapping:
          Derivitec.Web.Core.MarketData.EquityVolSurface, Derivitec.Web.Core: '#/components/schemas/EquityVolSurfaceMintlifyShape'
          Derivitec.Web.Core.MarketData.EquityVolSurfaceSpline, Derivitec.Web.Core: '#/components/schemas/EquityVolSurfaceSpline'
          Derivitec.Web.Core.MarketData.EquityVolSurfaceSvi, Derivitec.Web.Core: '#/components/schemas/EquityVolSurfaceSvi'
      oneOf:
        - $ref: '#/components/schemas/EquityVolSurfaceMintlifyShape'
        - $ref: '#/components/schemas/EquityVolSurfaceSpline'
        - $ref: '#/components/schemas/EquityVolSurfaceSvi'
    EquityVolGrid:
      required:
        - $type
      type: object
      properties:
        provider_id:
          type: string
          description: >-
            Market-data provider code recorded as the source of the
            contribution. Defaults to Derivitec.
          nullable: true
        derivitec_created:
          type: string
          description: Timestamp at which the market-data record was created.
        derivitec_modified:
          type: string
          description: Optional timestamp of the record's latest modification.
          nullable: true
        uploaded_date_time:
          type: string
          description: >-
            Optional timestamp at which the contribution was uploaded.
            UploadRateAssets ignores the supplied value on each rate asset and
            stores the current UTC time.
          nullable: true
        derivitec_modified_by:
          type: string
          description: >-
            Principal recorded as the latest modifier. UploadRateAssets ignores
            the supplied value on each rate asset and stores the authenticated
            user identifier.
          nullable: true
        uploaded_by:
          type: string
          description: >-
            Principal recorded as the uploader. UploadRateAssets ignores the
            supplied value on each rate asset and stores the authenticated user
            identifier.
          nullable: true
        rolled:
          type: boolean
          description: Whether the contribution has been rolled.
          example: false
        maturities:
          type: array
          items:
            type: integer
            format: int32
          description: >-
            Maturity offsets from ReferenceDate, in calendar days, corresponding
            by position to the volatility rows.
          nullable: true
        reference_date:
          type: string
          description: Reference date of the volatility grid.
          format: date-time
        strikes:
          type: array
          items:
            type: array
            items:
              type: number
              format: double
          description: >-
            One strike row shared by all maturities, or one row per maturity;
            each row aligns with the corresponding volatility row.
          nullable: true
        strike_type:
          enum:
            - absolute
            - percent_spot
            - percent_forward
          type: string
          description: Coordinate convention used by the strike rows. Defaults to absolute.
        vols:
          type: array
          items:
            type: array
            items:
              type: number
              format: double
          description: >-
            Rows of positive volatility values as decimals; 0.20 means 20%. Rows
            match the strike-row shape and correspond by position to maturities.
          nullable: true
        use_spline:
          type: boolean
          description: Whether the grid is marked for spline use.
          example: false
        spot_ref:
          type: number
          description: Optional spot reference carried by the volatility grid.
          format: double
          nullable: true
        asset_id:
          $ref: '#/components/schemas/InstrumentIdentifier'
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.MarketData.EquityVolGrid, Derivitec.Web.Core
      additionalProperties: false
      description: Equity volatility grid identified by its equity asset.
    EquityVolSurfaceMintlifyShape:
      required:
        - $type
      type: object
      properties:
        provider_id:
          type: string
          description: >-
            Market-data provider code recorded as the source of the
            contribution. Defaults to Derivitec.
          nullable: true
        derivitec_created:
          type: string
          description: Timestamp at which the market-data record was created.
        derivitec_modified:
          type: string
          description: Optional timestamp of the record's latest modification.
          nullable: true
        uploaded_date_time:
          type: string
          description: >-
            Optional timestamp at which the contribution was uploaded.
            UploadRateAssets ignores the supplied value on each rate asset and
            stores the current UTC time.
          nullable: true
        derivitec_modified_by:
          type: string
          description: >-
            Principal recorded as the latest modifier. UploadRateAssets ignores
            the supplied value on each rate asset and stores the authenticated
            user identifier.
          nullable: true
        uploaded_by:
          type: string
          description: >-
            Principal recorded as the uploader. UploadRateAssets ignores the
            supplied value on each rate asset and stores the authenticated user
            identifier.
          nullable: true
        rolled:
          type: boolean
          description: Whether the contribution has been rolled.
          example: false
        asset_name:
          $ref: '#/components/schemas/InstrumentIdentifier'
        benchmark_fwd_factors:
          type: array
          items:
            type: number
            format: double
          description: >-
            Benchmark forward-factor values, one corresponding by position to
            each benchmark maturity.
          nullable: true
        benchmark_maturities:
          type: array
          items:
            type: integer
            format: int32
          description: >-
            Distinct benchmark maturity offsets from ReferenceDate, in calendar
            days.
          nullable: true
        reference_date:
          type: string
          description: Reference date of the equity volatility surface.
          format: date-time
        spot_ref:
          type: number
          description: Spot reference carried by the equity volatility surface.
          format: double
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.MarketData.EquityVolSurface, Derivitec.Web.Core
      additionalProperties: false
      description: >-
        Equity volatility surface with benchmark coordinates and a spot
        reference.
    EquityVolSurfaceSpline:
      required:
        - $type
      type: object
      properties:
        provider_id:
          type: string
          description: >-
            Market-data provider code recorded as the source of the
            contribution. Defaults to Derivitec.
          nullable: true
        derivitec_created:
          type: string
          description: Timestamp at which the market-data record was created.
        derivitec_modified:
          type: string
          description: Optional timestamp of the record's latest modification.
          nullable: true
        uploaded_date_time:
          type: string
          description: >-
            Optional timestamp at which the contribution was uploaded.
            UploadRateAssets ignores the supplied value on each rate asset and
            stores the current UTC time.
          nullable: true
        derivitec_modified_by:
          type: string
          description: >-
            Principal recorded as the latest modifier. UploadRateAssets ignores
            the supplied value on each rate asset and stores the authenticated
            user identifier.
          nullable: true
        uploaded_by:
          type: string
          description: >-
            Principal recorded as the uploader. UploadRateAssets ignores the
            supplied value on each rate asset and stores the authenticated user
            identifier.
          nullable: true
        rolled:
          type: boolean
          description: Whether the contribution has been rolled.
          example: false
        asset_name:
          $ref: '#/components/schemas/InstrumentIdentifier'
        benchmark_fwd_factors:
          type: array
          items:
            type: number
            format: double
          description: >-
            Benchmark forward-factor values, one corresponding by position to
            each benchmark maturity.
          nullable: true
        benchmark_maturities:
          type: array
          items:
            type: integer
            format: int32
          description: >-
            Distinct benchmark maturity offsets from ReferenceDate, in calendar
            days.
          nullable: true
        reference_date:
          type: string
          description: Reference date of the equity volatility surface.
          format: date-time
        spot_ref:
          type: number
          description: Spot reference carried by the equity volatility surface.
          format: double
        var_grid:
          type: array
          items:
            type: array
            items:
              type: number
              format: double
          description: The volatility grid (one vector per maturity)
          nullable: true
        strike_grid:
          type: array
          items:
            type: array
            items:
              type: number
              format: double
          description: The strike grid (one vector per maturity)
          nullable: true
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.MarketData.EquityVolSurfaceSpline,
              Derivitec.Web.Core
      additionalProperties: false
      description: The equity vol surface.
    EquityVolSurfaceSvi:
      required:
        - $type
      type: object
      properties:
        provider_id:
          type: string
          description: >-
            Market-data provider code recorded as the source of the
            contribution. Defaults to Derivitec.
          nullable: true
        derivitec_created:
          type: string
          description: Timestamp at which the market-data record was created.
        derivitec_modified:
          type: string
          description: Optional timestamp of the record's latest modification.
          nullable: true
        uploaded_date_time:
          type: string
          description: >-
            Optional timestamp at which the contribution was uploaded.
            UploadRateAssets ignores the supplied value on each rate asset and
            stores the current UTC time.
          nullable: true
        derivitec_modified_by:
          type: string
          description: >-
            Principal recorded as the latest modifier. UploadRateAssets ignores
            the supplied value on each rate asset and stores the authenticated
            user identifier.
          nullable: true
        uploaded_by:
          type: string
          description: >-
            Principal recorded as the uploader. UploadRateAssets ignores the
            supplied value on each rate asset and stores the authenticated user
            identifier.
          nullable: true
        rolled:
          type: boolean
          description: Whether the contribution has been rolled.
          example: false
        asset_name:
          $ref: '#/components/schemas/InstrumentIdentifier'
        benchmark_fwd_factors:
          type: array
          items:
            type: number
            format: double
          description: >-
            Benchmark forward-factor values, one corresponding by position to
            each benchmark maturity.
          nullable: true
        benchmark_maturities:
          type: array
          items:
            type: integer
            format: int32
          description: >-
            Distinct benchmark maturity offsets from ReferenceDate, in calendar
            days.
          nullable: true
        reference_date:
          type: string
          description: Reference date of the equity volatility surface.
          format: date-time
        spot_ref:
          type: number
          description: Spot reference carried by the equity volatility surface.
          format: double
        call_wings:
          type: array
          items:
            type: number
            format: double
          description: >-
            Non-negative call-wing parameter values, one corresponding by
            position to each benchmark maturity.
          nullable: true
        put_wings:
          type: array
          items:
            type: number
            format: double
          description: >-
            Non-negative put-wing parameter values, one corresponding by
            position to each benchmark maturity.
          nullable: true
        skews:
          type: array
          items:
            type: number
            format: double
          description: >-
            Skew parameter values, one corresponding by position to each
            benchmark maturity.
          nullable: true
        smiles:
          type: array
          items:
            type: number
            format: double
          description: >-
            Smile parameter values, one corresponding by position to each
            benchmark maturity.
          nullable: true
        vols:
          type: array
          items:
            type: number
            format: double
          description: >-
            Volatility values expressed as decimals, where 0.20 means 20%, with
            one value corresponding by position to each benchmark maturity.
          nullable: true
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.MarketData.EquityVolSurfaceSvi,
              Derivitec.Web.Core
      additionalProperties: false
      description: >-
        Equity volatility surface carrying wing, skew, smile, and volatility
        parameter sequences.
    InstrumentIdentifier:
      description: >-
        Instrument code qualified by an identifier namespace and optional market
        code.
      discriminator:
        propertyName: $type
        mapping:
          Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core: '#/components/schemas/InstrumentIdentifierMintlifyShape'
          Derivitec.Web.Core.MarketData.InstrumentInfo, Derivitec.Web.Core: '#/components/schemas/InstrumentInfo'
      oneOf:
        - $ref: '#/components/schemas/InstrumentIdentifierMintlifyShape'
        - $ref: '#/components/schemas/InstrumentInfo'
    InstrumentIdentifierMintlifyShape:
      required:
        - $type
      type: object
      properties:
        code:
          type: string
          description: Instrument code interpreted in the selected identifier namespace.
          nullable: true
        identifier_type:
          enum:
            - Derivitec
            - Ric
            - Bloomberg
            - Isin
            - Figi
            - Sedol
            - RedCode
            - RedPairCode
            - BloombergYellow
            - XIgniteCode
            - CBondsId
            - EdiSecId
            - EdiSymbol
            - Cusip
            - NotSet
          type: string
          description: Namespace that determines how the instrument code is interpreted.
        market_identification_code:
          type: string
          description: >-
            Optional market identification code that further qualifies the
            instrument code.
          nullable: true
        $type:
          type: string
          enum:
            - >-
              Derivitec.Web.Core.MarketData.InstrumentIdentifier,
              Derivitec.Web.Core
      additionalProperties: false
      description: >-
        Instrument code qualified by an identifier namespace and optional market
        code.
    InstrumentInfo:
      required:
        - $type
      type: object
      properties:
        code:
          type: string
          description: Instrument code interpreted in the selected identifier namespace.
          nullable: true
        identifier_type:
          enum:
            - Derivitec
            - Ric
            - Bloomberg
            - Isin
            - Figi
            - Sedol
            - RedCode
            - RedPairCode
            - BloombergYellow
            - XIgniteCode
            - CBondsId
            - EdiSecId
            - EdiSymbol
            - Cusip
            - NotSet
          type: string
          description: Namespace that determines how the instrument code is interpreted.
        market_identification_code:
          type: string
          description: >-
            Optional market identification code that further qualifies the
            instrument code.
          nullable: true
        name:
          type: string
          description: Human-readable name of the identified instrument.
          nullable: true
        $type:
          type: string
          enum:
            - Derivitec.Web.Core.MarketData.InstrumentInfo, Derivitec.Web.Core
      additionalProperties: false
      description: Instrument identifier with a human-readable instrument name.
  securitySchemes:
    oauth2:
      type: oauth2
      description: >-
        OAuth2 access-token requested from AWS Cognito and provided as a Auth
        Bearer header
      flows:
        implicit:
          authorizationUrl: https://auth.riskportal.derivitec.com/oauth2/authorize
          scopes: {}
    apikey:
      type: apiKey
      description: API-Key requested via the site and provided as a header
      name: x-api-key
      in: header

````