Valor em Risco (VaR) para a Gestão de Risco de Negociação Algoritmica
A estimativa do risco de perda para uma estratégia de negociação algorítmica, ou carteira de estratégias, é de extrema importância para o crescimento de capital a longo prazo.
Aplicaremos o conceito de VaR a uma única estratégia ou a um conjunto de estratégias, a fim de nos ajudar a quantificar o risco na nossa carteira de negociação.
O VaR fornece uma estimativa, com um determinado grau de confiança, do tamanho da perda de uma carteira durante um determinado período de tempo.
Neste caso,
Por exemplo, um VaR igual a 500.000 USD a um nível de confiança de 95% para um período de tempo de um dia simplesmente indicaria que há uma probabilidade de 95% de perder não mais de 500.000 USD no dia seguinte.
P ((L≤−5,0 × 10^5) = 0,05 Ou, de forma mais geral, para uma perda L que exceda um valor VaR com um nível de confiança c temos:
P ((L≤−VaR) = 1−c
O cálculo
O VaR é generalizado no setor financeiro, portanto, você deve estar familiarizado com os benefícios e desvantagens da técnica.
No entanto, a VaR não está isenta de desvantagens:
O VaR não deve ser utilizado isoladamente, devendo ser sempre utilizado em conjunto com um conjunto de técnicas de gestão de risco, tais como a diversificação, a alocação óptima de carteiras e o uso prudente da alavancagem.
Até agora, não discutimos o cálculo real do VaR, nem no caso geral nem em um exemplo de negociação concreto. Existem três técnicas que serão de interesse para nós. A primeira é o método de variação-covariância (usando suposições de normalidade), a segunda é um método de Monte Carlo (baseado em uma distribuição subjacente, potencialmente não normal) e a terceira é conhecida como bootstrapping histórico, que faz uso de informações de retornos históricos para os ativos em consideração.
Neste artigo, vamos nos concentrar no Método de Variância-Covariância e em artigos posteriores consideraremos os métodos de Monte Carlo e Historical Bootstrap.
Considere uma carteira de dólares P, com um nível de confiança c. Estamos considerando retornos diários, com ativo (ou estratégia) desvio padrão histórico σ e média μ. Em seguida, o VaR diário, sob o método de covariância de variância para um único ativo (ou estratégia) é calculado como:
P−(P(α(1−c) +1)) onde α é o inverso da função de distribuição cumulativa de uma distribuição normal com média μ e desvio padrão σ.
Podemos usar as bibliotecas SciPy e pandas do Python para calcular esses valores. Se definirmos P=106 e c=0.99, podemos usar o método SciPy ppf para gerar os valores para a função de distribuição cumulativa inversa para uma distribuição normal com μ e σ obtidos a partir de alguns dados financeiros reais, neste caso os retornos diários históricos do CitiGroup (podemos facilmente substituir os retornos de uma estratégia algorítmica aqui):
# var.py
import datetime
import numpy as np
import pandas.io.data as web
from scipy.stats import norm
def var_cov_var(P, c, mu, sigma):
"""
Variance-Covariance calculation of daily Value-at-Risk
using confidence level c, with mean of returns mu
and standard deviation of returns sigma, on a portfolio
of value P.
"""
alpha = norm.ppf(1-c, mu, sigma)
return P - P*(alpha + 1)
if __name__ == "__main__":
start = datetime.datetime(2010, 1, 1)
end = datetime.datetime(2014, 1, 1)
citi = web.DataReader("C", 'yahoo', start, end)
citi["rets"] = citi["Adj Close"].pct_change()
P = 1e6 # 1,000,000 USD
c = 0.99 # 99% confidence interval
mu = np.mean(citi["rets"])
sigma = np.std(citi["rets"])
var = var_cov_var(P, c, mu, sigma)
print "Value-at-Risk: $%0.2f" % var
O valor calculado de VaR é dado por:
Valor-a-Risco: $56510.29 O VaR é uma técnica extremamente útil e generalizada em todas as áreas da gestão financeira, mas não está isenta de falhas.
Nos artigos seguintes, não só discutiremos cálculos alternativos para VaR, mas também delinearemos o conceito de Défice Esperado (também conhecido como Valor Condicional em Risco), que fornece uma resposta sobre quanto é provável que se perca.