---
title: "Multivariate Empirical Value At Risk"
method: POST
path: "/portfolios/analysis/value-at-risk/estimation/empirical/multivariate"
tags: ["Portfolio Analysis / Risk Measures / Value At Risk Estimation"]
---

# Multivariate Empirical Value At Risk

`POST /portfolios/analysis/value-at-risk/estimation/empirical/multivariate`

## Request

- Base URL: `https://api.portfoliooptimizer.io/v1`
- URL: `https://api.portfoliooptimizer.io/v1/portfolios/analysis/value-at-risk/estimation/empirical/multivariate`
- Auth: API key in header `X-API-Key`

Compute the multivariate empirical value at risk of a portfolio.

References
* [Wikipedia, Value at risk](https://en.wikipedia.org/wiki/Value_at_risk)
* [Acerbi, C. and Tasche, D. (2002), Expected Shortfall: A Natural Coherent Alternative to Value at Risk. Economic Notes, 31: 379-388](https://onlinelibrary.wiley.com/doi/abs/10.1111/1468-0300.00091)
* [Hutson, A.D. A Semi-Parametric Quantile Function Estimator for Use in Bootstrap Estimation Procedures. Statistics and Computing 12, 331–338 (2002)](https://link.springer.com/article/10.1023/A:1020783911574)
* [Mausser, H. (2003). Calculating quantile-based risk analytics with L-estimators. Journal of Risk Finance 4 (3), 61–74](https://www.emerald.com/jrf/article/4/3/61-74/250994)
* [Ballotta, Laura and Fusai, Gianluca, A Gentle Introduction to Value at Risk](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2942138)

## Request body

- union
  - object
    - `assets` object[], required
      - `assetReturns` number[], required: assetReturns[t] is the logarithmic return of the asset at the time t; all assetReturns arrays must have the same length
    - `confidenceLevel` number: The confidence level
    - `empiricalQuantileEstimationMethod` 'linearInterpolationQuantileEstimation' | 'hutsonQuantileEstimation' | 'harrellDavisQuantileEstimation': The empirical quantile estimation method to use
    - `portfolios` object[], required
      - `assetsWeights` number[], required: assetsWeights[i] is the weight of the asset i in the portfolio over the considered time period, in percentage
  - object
    - `assets` object[], required
      - `assetPrices` object[], required: assetPrices[t] contains price information for the asset at the date t; all assetPrices arrays must have the same length; all assetPrices arrays must be consistent
        - `date` string, required: The date corresponding to the date t in format YYYY-MM-DD; all dates must be distinct
        - `close` number, required: The close price of the asset at the date t
    - `confidenceLevel` number: The confidence level
    - `empiricalQuantileEstimationMethod` 'linearInterpolationQuantileEstimation' | 'hutsonQuantileEstimation' | 'harrellDavisQuantileEstimation': The empirical quantile estimation method to use
    - `portfolios` object[], required
      - `assetsWeights` number[], required: assetsWeights[i] is the weight of the asset i in the portfolio over the considered time period, in percentage

## Response `200`

OK

- object
  - `portfolios` object[], required
    - `portfolioValueAtRisk` number, required: The empirical value at risk of the portfolio, in (logarithmic return) percentage
    - `portfolioArithmeticValueAtRisk` number, required: The empirical value at risk of the portfolio, converted from logarithmic return percentage to arithmetic return percentage

## Changes

- **2026-06-08** `614076795988`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/portfoliooptimizer/apis/portfolio-optimizer/changes/portfolios/analysis/value-at-risk/estimation/empirical/multivariate/post.md)

---

[API](https://skmtc.dev/portfoliooptimizer/apis/portfolio-optimizer.md) - [All operations](https://skmtc.dev/portfoliooptimizer/apis/portfolio-optimizer/llms.txt) - [OpenAPI document](https://skmtc.dev/portfoliooptimizer/apis/portfolio-optimizer/revisions/9d075aa717bf?raw)
