Calculadora VaR
Una cartera de 1.000.000 con un 20 % de volatilidad anual tiene un valor en riesgo a 10 días de 65.532,54 con un 95 % de confianza: la pérdida que debe tratarse como el peor caso en ese plazo. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Valor de la cartera
- 1 000 000
- Volatilidad
- 20
- Horizonte temporal
- 10
- Nivel de confianza
- 95
- Días de negociación
- 252
- Puntuación Z
- 1,644854
- Horizonte en años
- 0,039683
- Volatilidad escalada
- 0,039841
El valor en riesgo, o VaR, es la cifra de riesgo de mercado que responde a una sola pregunta de planificación: en un plazo de tenencia declarado, ¿qué pérdida debe tratar usted como el peor caso a un nivel de confianza elegido? Las mesas de riesgo, tesorerías, candidatos a examen y lectores de páginas de aterrizaje ya tienen cuatro números — el valor actual de la cartera, la volatilidad anual, un horizonte en días y una confianza del noventa y cinco o del noventa y nueve por ciento — y necesitan la pérdida paramétrica de varianza-covarianza, no una simulación histórica ni un recorrido Monte Carlo. Esta calculadora de valor en riesgo escala la volatilidad anual al plazo de tenencia con la regla de la raíz cuadrada del tiempo, multiplica por la puntuación z de la normal estándar según la confianza y devuelve la pérdida máxima esperada en las mismas unidades que el libro.
Qué significa el valor en riesgo paramétrico y cómo se calcula la pérdida
El valor en riesgo paramétrico, también llamado VaR de varianza-covarianza, es la pérdida de forma cerrada que un modelo gaussiano de rentabilidades de media nula asigna a un nivel de confianza elegido. El cuantil de pérdida es esa volatilidad escalada por la puntuación z de la normal estándar z_α igual a la CDF inversa Φ⁻¹(α) para la confianza α, de modo que el VaR vale V × σ × z_α × √(t/T).
Un libro de un millón con volatilidad anual del veinte por ciento, horizonte de diez días y confianza del noventa y cinco por ciento usa por tanto una z de unos 1.64485 y √(10/252) de unos 0.1992, y la pérdida paramétrica ronda 65535 en la misma divisa que V. Cuando el horizonte es un día de negociación, el factor de raíz se reduce a 1/√252.
Si la confianza sube del noventa y cinco al noventa y nueve por ciento, z pasa de unos 1.64 a unos 2.33 y el VaR escala en esa razón; el tiempo sigue la regla de la raíz cuadrada del tiempo, no un recuento lineal de días. Esta identidad no es un VaR de simulación histórica ni un VaR Monte Carlo: no consume una senda de rentabilidades, una cópula ni una semilla aleatoria.
Tampoco añade un arrastre de rentabilidad esperada, así que la cifra es la pérdida paramétrica de media nula de los manuales, usada en calculadoras de mesa, hojas FRM y escalados a diez días al estilo Basel. Una volatilidad negativa no es una desviación estándar, de modo que el solver rechaza esa entrada en lugar de tomar un valor absoluto en silencio. Una volatilidad cero está bien definida y devuelve una pérdida nula.
Qué puede hacer con ella
Límites de mesa y escalados regulatorios a diez días
Convierta una marca actual, la volatilidad anual y un horizonte de un día o de diez días en VaR paramétrico al noventa y cinco o al noventa y nueve por ciento para memorandos de límite y comprobaciones de raíz cuadrada del tiempo al estilo Basel.
Hojas de examen y ejercicios FRM / CFA
Compruebe un ítem de valor en riesgo paramétrico ya resuelto: puntuación z, volatilidad de periodo escalada y la pérdida máxima esperada a partir de las cuatro entradas que el enunciado ya indica.
Preguntas frecuentes
¿Cómo se calcula el valor en riesgo paramétrico?
VaR = V × σ × z × √(t/T). La respuesta es la pérdida máxima esperada en las mismas unidades que V.
¿Qué ocurre si la volatilidad es negativa?
Una desviación estándar de rentabilidades no puede ser negativa, de modo que la calculadora no toma un valor absoluto ni inventa una pérdida, y la llamada no se factura.
¿Qué niveles de confianza puedo usar?
Cualquier porcentaje estrictamente entre 50 y 100 (95, 99) o un decimal en (0.5, 1) como 0.95. Las elecciones habituales de riesgo de mercado son 90, 95 y 99 por ciento; cada una fija z = Φ⁻¹(α).
¿Por qué el VaR a 10 días no es diez veces el de un día?
Porque la volatilidad crece con la raíz cuadrada del tiempo, no con el número de días. La calculadora escala la volatilidad anual por la raíz del plazo dividido entre 252 días de negociación.
¿Es un VaR histórico o de Monte Carlo?
Ninguno de los dos. Es la fórmula paramétrica de media cero: valor por volatilidad por el valor z de su confianza, escalado al plazo. No usa historial de rentabilidades, trayectorias aleatorias ni rentabilidad esperada.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/fin/var \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"portfolio_value":1000000,"volatility":20,"time_horizon":10,"confidence_level":95}'const res = await fetch("https://api.kit.forhosting.com/fin/var", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"portfolio_value": 1000000,
"volatility": 20,
"time_horizon": 10,
"confidence_level": 95
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/var",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"portfolio_value": 1000000,
"volatility": 20,
"time_horizon": 10,
"confidence_level": 95
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/var", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"portfolio_value":1000000,"volatility":20,"time_horizon":10,"confidence_level":95}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"portfolio_value":1000000,"volatility":20,"time_horizon":10,"confidence_level":95}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/var", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"portfolio_value": 1000000,
"volatility": 20,
"time_horizon": 10,
"confidence_level": 95
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.var",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Cuando la volatilidad es negativa, la tarea falla con invalid_input en lugar de inventar una pérdida.
Qué significa el valor en riesgo paramétrico y cómo se calcula la pérdida
Si la marca actual del libro es V, la volatilidad anual en decimal es σ, el plazo de tenencia es t días y un año contiene T días de negociación — doscientos cincuenta y dos en este endpoint salvo que usted sustituya trading_days —, entonces la desviación estándar del periodo es σ por la raíz cuadrada de t entre T.
Contrato de entrada, forma de la respuesta y comportamiento ante errores
Una confianza que no quede estrictamente por encima del cincuenta por ciento y estrictamente por debajo del cien por ciento se rechaza para que la puntuación z siga siendo un cuantil finito positivo. Combine el resultado con su propia serie de rentabilidades si necesita VaR histórico o Monte Carlo; empiece aquí cuando la pregunta de producto sea una pérdida paramétrica transparente de cuatro entradas para una página, una hoja o un lote de escenarios que ya comparten una volatilidad anual. Envíe por POST un cuerpo JSON con cuatro números finitos obligatorios: portfolio_value, la marca actual en unidades de divisa, cero o mayor (alias value, amount, portfolio, principal, pv); volatility, la desviación estándar anual de las rentabilidades como porcentaje, por ejemplo veinte para el veinte por ciento (alias sigma, vol, annual_volatility, stdev); time_horizon, el plazo de tenencia en días, por ejemplo uno o diez (alias horizon, days, holding_period, t); y confidence_level, un porcentaje entre cincuenta y cien exclusive como noventa y cinco, o un decimal en (0.5, 1) exclusive como 0.95 (alias confidence, alpha, level, cl). El opcional trading_days vale por defecto doscientos cincuenta y dos, el año de riesgo de mercado usado como T en el factor de raíz; el opcional decimals es un entero de cero a doce que controla el redondeo half-up (por defecto seis). Cada campo obligatorio puede llegar como número JSON o como cadena numérica; campos ausentes, cadenas vacías, booleanos y valores no finitos fallan con invalid_input nombrando el campo y no se facturan. Un portfolio_value negativo se rechaza por la misma razón: una marca actual no es un resto de venta en corto en esta identidad. Un time_horizon no positivo se rechaza porque el plazo de tenencia debe ser un número positivo de días. Si acierta, el cuerpo ecoa portfolio_value, volatility, time_horizon, confidence_level como porcentaje y trading_days; añade z_score, horizon_years (t/T), scaled_volatility (la desviación estándar del periodo en decimal), value_at_risk como la pérdida en las mismas unidades que el libro, value_at_risk_percent como esa pérdida sobre V por cien, y una cadena formula que reescribe VaR = V × σ × z × √(t/T).
Dónde una calculadora de valor en riesgo aporta valor
Los educadores que enseñan por qué el VaR al noventa y nueve por ciento es mayor que el VaR al noventa y cinco — y por qué una volatilidad negativa no es una desviación estándar definida — pueden sembrar ejemplos de aula que fallan con honestidad en lugar de tomar un valor absoluto. La validación fallida, incluida una volatilidad negativa, no consume saldo. Los equipos de tesorería que comparan un límite de mesa a un día con un escalado regulatorio a diez días pueden publicar el mismo libro y la misma volatilidad dos veces, cambiar solo time_horizon y citar un value_at_risk estable bajo la regla de la raíz cuadrada del tiempo. Los candidatos FRM y CFA que comprueban un ítem de VaR paramétrico resuelto pueden fijar z_score y la volatilidad escalada junto a la pérdida para que una base de anualización errónea quede a la vista y no oculta en un solo número. Como la implementación es parse de tier A, cada llamada exitosa cuesta el precio base publicado $0.002 sin tokens de modelo ni red saliente. Mantenga finitos los cuatro campos obligatorios, la volatilidad en cero o por encima, fije el value_at_risk redondeado en las pruebas y obtendrá pérdidas paramétricas reproducibles para widgets, incrustaciones CMS y workers en el borde, sin montar un motor de riesgo propio.
Casos de integración
Widgets de aterrizaje y lotes de escenarios
Incruste una calculadora VaR gratuita en el navegador en una explicación de riesgo, o envíe muchos tuples (valor, vol, horizonte, confianza) desde un script y fije value_at_risk en las pruebas.
Preguntas técnicas
¿El horizonte temporal va en días o en años?
En días. El VaR a un día usa time_horizon 1; una cifra a diez días al estilo Basel usa 10. La volatilidad anual se escala por √(t/trading_days), con trading_days igual a 252 por defecto.
¿Cuánto cuesta la calculadora de valor en riesgo?
La herramienta del navegador es gratuita. Las solicitudes API usan saldo KIT prepago a $0.002 por llamada exitosa; una entrada inválida, incluida la volatilidad negativa, no se factura.