---
title: "Perturbed Correlation Matrix"
method: POST
path: "/assets/correlation/matrix/perturbed"
tags: ["Assets / Correlation Matrix"]
---

# Perturbed Correlation Matrix

`POST /assets/correlation/matrix/perturbed`

Generate a randomly perturbed version of an asset correlation matrix.

References
* [Opdyke, JD, Full Probabilistic Control for Direct and Robust, Generalized and Targeted Stressing of the Correlation Matrix (Even When Eigenvalues are Empirically Challenging) (May 30, 2020)](https://ssrn.com/abstract=3673362)

## Request body

- object
  - `assets` integer, required — The number of assets
  - `assetsCorrelationMatrix` array[] — assetsCorrelationMatrix[i][j] is the correlation between the asset i and the asset j
    - number[]
  - `noiseLevel` number — The exact level of noise that the coefficients of the asset correlation matrix assetsCorrelationMatrix must be perturbed with; exclusive with maximumNoiseLevel
  - `maximumNoiseLevel` number — The maximum level of noise that the coefficients of the asset correlation matrix assetsCorrelationMatrix must be perturbed with; exclusive with noiseLevel
  - `simulations` integer — The number of simulations to perform

## Response `200`

OK

- object
  - `simulations` object[], required
    - `assetsCorrelationMatrix` array[], required — assetsCorrelationMatrix[i][j] is the correlation between the asset i and the asset j
      - number[]

---

[API](https://skmtc.dev/portfoliooptimizer/apis/portfolio-optimizer.md) · [All operations](https://skmtc.dev/portfoliooptimizer/apis/portfolio-optimizer/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/portfoliooptimizer/portfolio-optimizer/revisions/d047148d28bd/schema)
