Otimização da Curva de Gatilho de uma Opção Americana de

Transcrição

Otimização da Curva de Gatilho de uma Opção Americana de
> REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10
1
Otimização da Curva de Gatilho de uma
Opção Americana de Compra através de
Algoritmos Genéticos
Rafael de Sequeira Baptista Ferraz
Juan Guillermo Lazo Lazo
ICA: Laboratório de Inteligência Computacional Aplicada
Pontifícia Universidade Católica do Rio de Janeiro
R. Marques S. Vicente 225 – Gávea,
Prédio Cardeal Leme, 6o. andar, Sala 612 (Cobertura)
CEP 22451-041 - Rio de Janeiro - RJ – Brasil
Tel: 3527-1207, 3527-1221, 3527-1634
FAX: 3527-1232
Resumo — Este Artigo tem como objetivo determinar a curva
de gatilho de opções americanas através de um método
numérico conhecido como Algorítimo Genético (GA). A
comparação com outros métodos de otimização é feita ao longo
do trabalho, mais especificamente com o algorítimo conhecido
como Algorítimo de Grant, Vora e Weeks. Primeiramente
foram desenvolvidas as representações para que se pudesse usar
o cromossoma como curva de gatilho de opções americanas.
Posteriormente montou-se a função de avaliação que foi
constituída pelo valor da opção. O problema foi então de
maximizar o valor da opção. Houve uma etapa de testes na qual
se comparou os resultados obtidos com o GA e aqueles obtidos
por outros métodos de otimização. A fase seguinte foi aumentar
o número de genes do cromossoma de forma que fossem
aumentadas, portanto, o número de oportunidades de exercício
antecipado da opção. Todos os testes comprovaram que o GA é
capaz de otimizar a curva de gatilho tanto da opção americana
de compra quanto da de venda. A utilização de GA é uma
solução prática para ser adotada, principalmente quando o
tempo não é escasso.
Palavras Chaves — Curva de Gatilho, Algoritmo Genético,
Otimização.
I. INTRODUÇÃO
A
otimização de curvas de gatilhos para opções
americanas é realizada atualmente de diversas
maneiras. O método mais difundido no meio acadêmico
atualmente é o chamado Algoritmo de Grant, Vora e Weeks,
por outro lado também há o modelo binomial que apesar de
exigir grande esforço computacional apresenta bons
resultados. Esse trabalho tem como intuito a melhoria do
método de otimização de curvas de gatilho. Os Algoritmos
Genéticos são ferramentas de otimização numérica de fácil
implementação e que normalmente produzem bons
resultados. Desta forma o GA foi utilizado em busca de
métodos mais fáceis, que produzissem melhores resultados e
de preferência mais ágeis.
A opção americana é definida como aquela que pode ser
exercida em qualquer data entre a aquisição da opção e o
prazo final para exercício. No caso da opção de compra seu
valor quando exercida é definido pela seguinte função:
max(S − X ,0)
Onde S é o valor do ativo base e X o preço de exercício.
Para resolver esse problema em tempo contínuo utiliza-se
uma aproximação na qual o tempo para o exercício é
discretizado em quantos períodos desejar-se e a opção passa
a poder ser exercida apenas em um número finito de tempos.
O GA foi então estruturado de maneira a solucionar esse
problema de maximização do valor da opção e as seções a
seguir indicam a forma com que o problema foi abordado e
os resultados alcançados.
II. ESTRUTURA DO PROBLEMA
O problema de determinação da curva de gatilho de uma
opção americana é a resolução de um problema de
maximização do valor da opção. Para determinarmos a partir
de quais preços, dependendo da data, passa a ser vantajoso
exercer a opção antes do prazo é preciso que se descubra
qual é o ponto (preço) do ativo base em que a opção
exercida vale tanto quanto o valor esperado de mante-la
“viva”. Para uma opção americana de venda esse ponto é
definido como:
Em que S*T-t é exatamente o ponto ótimo que o valor do
ativo base tem que assumir para tornar a relação verdadeira,
X é o preço de exercício e E[PT] é o valor esperado do valor
da opção. Esse valor é então trazido a data em que se deseja
determinar o ponto de indiferença pela taxa livre de risco.
> REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10
A realização de uma simulação para o preço do ativo base
é executada de maneira que se determinam possíveis
caminhos para o preço do ativo ao longo do, a simulação
realizada é a Simulação de Monte Carlo (SMC). Neste artigo
o processo de difusão utilizado para o ativo básico foi o
Movimento Geométrico Browniano (MGB). Após a
discretização do tempo o valor do ativo básico em cada
período de cada iteração foi determinado através da seguinte
relação:
2
Dada a complexidade do algoritmo de GVW e a
necessidade de testá-lo esse artigo visa à implementação de
uma otimização de curva de gatilho através de GA.
III. DESENVOLVIMENTO DO ALGORITMO GENÉTICO
O GA foi desenvolvido de maneira que se pudesse
determinar qual é a combinação de pontos ao longo do
tempo que maximiza o valor da opção.
A. Representação
Onde sigma representou a volatilidade do ativo e z foi um
ruído aleatório com uma distribuição normal de média zero e
desvio padrão 1.
O Algoritmo de Grant, Vora e Weeks (GVW) realiza uma
otimização de trás para frente, na qual os pontos de
indiferença são descobertos a partir do ponto que já é
conhecido, ou seja, o prazo de expiração da opção. Na
expiração a curva de gatilho equivale ao preço de exercício,
pois para preços mais baixos que X a opção de venda passa
a ser exercida.
O Algoritmo de GVW pode ser resumido da seguinte
forma:
1)
2)
3)
4)
Discretizar o tempo em N = T/∆t
Adotar condição terminal ST* = X
Para T – ∆t adotar inicialmente ST-∆t = ST*
Realizar a SMC a partir de ST-∆t para obter ST e
conseqüentemente obter os valores de pT, que será a
média dos valores de pT
5) Verificar se a condição de otimalidade foi satisfeita
6) Repetir os passos 3 a 5 para os instantes anteriores
até chegar ao instante inicial
7) Após obtermos a Curva de Gatilho calcula-se o
valor da opção através de uma SMC, parte-se de S0
para calcular os valores da opção para cada
iteração. O valor final será a media
A figura a seguir ilustra o procedimento do algoritmo de
Grant, Vora e Week de maneira a facilitar o entendimento
do mesmo:
A representação utilizada foi a de números reais. O
cromossomo possui um tamanho deferente para cada número
de possibilidades de exercício antecipado permitido
deferente. Neste sentido os genes representaram os pontos
que se fica indiferente entre exercer ou não a opção, ou seja,
o ponto da curva de gatilho.
Desta forma o número de genes de cada cromossomo foi
determinado de acordo com o número de datas em que se
permitiu o exercício antecipado.
B. Função de Avaliação
A função de avaliação determina a qualidade de cada
individuo dando maior ou menor chance dele se reproduzir
na população seguinte. Neste GA a função de avaliação é
representada pelo valor presente da opção, a qual se deseja
maximizar.
Maximizar
Valor da Opção
∑
t =T
t =t
Pt ou
∑
t =T
t =t
Ct
O software utilizado para realizar as simulações foi o
RiskOptimizer que possui o Evolver acoplado que foi
responsável pela otimização do GA.
C. Seleção de Genitor
O operador de seleção seleciona os indivíduos
aleatoriamente, proporcionando maiores chances de
reprodução aos mais aptos. Para evitar super-seleção
(indivíduo com avaliação muito maior que os demais) e
competição próxima (indivíduos com aptidões próximas mas
não idênticas). Neste problema foram utilizados os métodos
disponíveis no Evolver para seleção.
D. Operador de Crossover
O operador de crossover permite que pares de genitores
escolhidos aleatoriamente da população gerem novos
> REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10
4.
individuas a partir da troca de material genético. A taxa
inicial de crossover utilizada foi de 50%.
5.
Os operadores de crossover disponíveis no Evolver são:
6.
1.
2.
3.
Crossover aritmético
Crossover heurístico
Crossover padrão
7.
8.
E. Operador de Mutação
A mutação é um processo que altera a estrutura do
cromossomo criando indivíduos com propriedades diferentes
daquelas encontradas na maior parte da população. A
mutação evita que o modelo fique preso a um ótimo local.
A taxa de mutação inicial foi de 10% a qual foi
aumentada quando o GA pareceu convergir para algum
ótimo.
No Evolver os tipos de mutação disponíveis são:
1.
2.
3.
4.
Mutação cauchy
Mutação boundary
Mutação não uniforme
Mutação padrão
F. Técnica de Reprodução
Essa técnica define o critério de substituição dos
indivíduos de uma população para a próxima geração. A
técnica utilizada foi a de Steady State que realiza a troca
parcial da população, isto é, substitui os piores individuas da
população corrente.
G.
Tamanho da População
O tamanho da população define qual vai ser a
variabilidade genética que a população vai dispor. Quanto
maior a população maior é a variabilidade.
Neste trabalho o tamanho da população foi de 50
indivíduos, mas o número de gerações não foi previamente
definido. O critério de parada foi portanto a convergência do
GA.
H.
I.
3
Se não, faz a mesma avaliação para as data
subsequentes
O valor da opção será o valor presente da soma dos
valores das opções ao longo do tempo
Esse procedimento é repetido para as n iterações de
uma simulação
O objetivo é maximizar o valor da opção que será
dado quando a curva de gatilho for ótima
A Curva de Gatilho é então evoluída através do GA
a fim de otimizar o gatilho
Fórmula de Black & Scholes
O cálculo do valor da opção do tipo europeu é feito
através da fórmula de Black & Scholes. O conhecimento do
valor da opção européia é essencial para que se possa avaliar
se o resultado encontrado para a opção bermuda (aquela que
permite o exercício antecipado em apenas algumas datas, é
na verdade uma discretização da opção americana, quanto
maior o número de datas em que se é permitido o exercício
antecipado, mais próximo se torna o valor da opção bermuda
do valor da opção americana) está coerente. Como a opção
do tipo bermuda possui todos os direitos de uma opção do
tipo europeu e ainda mais algumas vantagens, ela deve valer
mais.
Portanto, o cálculo do valor da opção européia serve de
referencia.
A fórmula de Black e Scholes é dada por:
[
]
c = e−r (T −t ) SN (d1 )er (T −t ) − XN(d2 )
p = Xe − r (T −t ) N (− d 2 ) − SN (− d1 )
Onde:
d1 =
S
ln
X
2
  σ 
(T − t )
 +  r +
2
 

σ T −t
Resumo da Metodologia Aplicada
A planilha em Excel na qual o GA foi rodado, assim como
as SMC seguiu os seguintes procedimentos:
1.
2.
3.
Realização de uma iteração da SMC para o ativo
base
Avalia se o preço do ativo para a data mais próxima
a zero é maior ou menor do que o gene que
representa aquela data
Se St < Genet e não tiver sido menor para as datas
anteriores,calcula o valor da opção exercida
(put=X-S)
d 2 = d1 − σ T − t
Neste mesmo raciocínio também é importante conhecer o
verdadeiro valor da opção americana. A solução
normalmente proposta para esse obstáculo é de aproximar o
valor verdadeiro da opção americana por uma árvore
binomial na qual o número de discretizações no tempo seja
muito grade.
No paper de Grant, Vora e Weeks [2] eles propõem uma
arvore binomial de 500 passos para o período de meio ano.
> REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10
Em uma árvore binomial, o preço do ativo em cada intervalo
de tempo só pode subir ou cair. É possível imaginar que o
esforço computacional se torna imenso quando se tem o
período grande entre a aquisição da opção e a expiração da
mesma. Desta forma, esse método se torna inviável quando
se deseja aliar um grande período de tempo a um período de
discretização razoavelmente pequeno.
Foram realizados primeiramente testes para a verificação
do funcionamento do GA. Para tanto, o GA foi aplicado a
problemas já solucionados por outros métodos, no caso o
algoritmo de GVW. Desta forma os resultados obtidos foram
comparados e posteriormente aplicou-se o GA a outros
problemas.
A. Teste 1
Para testar o algoritmo genético criado foi calculado o
valor de uma put com apenas uma data para exercício
antecipado. O GA teve portanto cromossomos com apenas
um gene.
Esse exemplo é exatamente igual a um exemplo do paper
do Grant, Vora e Weeks.
As variáveis inputadas foram:
0.5
0,1
0,4
0,25
100
100
Os valores de sigma, T, r e delta t são em relação ao ano.
O preço de exercício X e o valor inicial do ativo base S0
podem ser em qualquer unidade monetária.
No paper os valores encontrados pelo algoritmo de Grant,
Vora e Weeks foram:
Grant, Vora e Weeks
Gatilho em t = 0,25
Valor da Opção em t = 0
US$
84.24
8.95
Esses valores são coerentes com os valores das puts
européia e americana para os mesmos parâmetros, US$ 8.70
e US$ 9.22.
O GA nos forneceu:
US$
84.73
8.96
Os valores fornecidos pelo GA foram bem próximos aos
do algoritmo de Grant, Vora e Weeks
O tempo para a otimização foi de 11 min.
IV. TESTES
T
r
sigma
delta t
X
S0
GA
Gatilho em t = 0,25
Valor da Opção em t = 0
4
B.
Teste 2
Se admitirmos o exercício antecipado em duas datas t =
0.1667 e t = 0.3333 os valores ótimos obtidos pelo GA são:
GA
Gatilho em t = 0,1667
Gatilho em t = 0,3333
Valor da Opção em t = 0
US$
79.53
82.90
9.05
Os valores encontrados pelo algoritmo de Grant, Vora e
Weeks foram:
Grant, Vora e Weeks
Gatilho em t = 0,1667
Gatilho em t = 0,3333
Valor da Opção em t = 0
US$
81.08
85.65
9.05
Observa-se que o valor da opção cresce quando se
aumenta o número de oportunidades de exercício
antecipado.
O valor da opção de venda encontrado pelo GA ficou
entre os valores da opção de venda européia e o valor da
opção de venda americana.
C.
Teste 3
Desta vez foram permitidas quatro datas para o exercício
antecipado da put, t = 0.1, t = 0.2, t = 0.3 e t = 0.4
Os pontos da curva de gatilho e o valor da put
encontrados pelo GA foram:
GA
Gatilho em t = 0,1
Gatilho em t = 0,2
Gatilho em t = 0,3
Gatilho em t = 0,4
Valor da Opção em t = 0
US$
54,46
74,31
84,95
86,54
9,07
Os resultados obtidos são coerentes pois a put ficou mais
valiosa quando aumentamos as oportunidades de Exercício
antecipado.
> REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10
O valor encontrado de US$ 9.07 está entre o valor da put
européia com mesmos parâmetros e da put americana.
O gráfico abaixo representa a curva de gatilho para a
opção de venda do teste 3. Podemos observar que a curva se
assemelha bastante a aquela esperada pela teoria.
Curva de Gatilho
Cabe ressaltar que no início a curva de gatilho é mais
estável, ficando mais inclinada perto da expiração (conforme
teoria).
Podemos verificar que o gatilho no tempo t = 0.2 foi um
pouco menor do que em t = 3, o que provavelmente foi
ocasionado por conta do processo de simulação.
O gráfico a seguir representa os pontos da curva de
gatilho encontrados.
100
80
Gatilho Call
60
250
40
200
20
0
0.1
0.2
0.3
0.4
Tem po
Preço de Exercício
Gatilho
5
150
100
50
0
0.1
0.2
0.3
0.4
0.5
Tempo
D.
Teste 4
O teste 4 foi realizado para uma call americana. Desta
forma, foi necessário que alterássemos a função de avaliação
dos indivíduos.
A função de avaliação foi então alterada para:
A relação acima representa o valor da call, sabemos que
a curva de gatilho é exatamente o ponto de indiferença entre
exercer ou esperar. O primeiro termo da função de máximo
representa o valor da opção exercida e o segundo o valor
dela “viva”.
Neste exemplo foram permitidas quatro datas para exercício
antecipado, sendo os parâmetros exatamente os mesmos do
teste 3.
Os pontos do gatilho e o valor da call encontrados pelo GA
foram então:
GA
Gatilho em t = 0,1
Gatilho em t = 0,2
Gatilho em t = 0,3
Gatilho em t = 0,4
Valor da Opção em t = 0
US$
193.157177
181.941915
187.418405
157.152124
13.57
A forma da curva de gatilho da call ficou como esperada:
no início o gatilho é mais alto, pois há maior valor na espera,
conforme nos aproximamos da expiração esse valor cai e
conseqüentemente o valor da call também cai.
CONCLUSÃO
O tempo computacional exigido para a otimização foi
relativamente alto. O processo levou 11 minutos para achar
um ponto, cerca de uma hora para achar dois pontos e duas
horas para convergir para 4 pontos.
A representação parece ser a grande dificuldade para
otimização. Como o número de casas decimais admitido
pelo RiskOptimizer é grande, a evolução dos indivíduos é
lenta.
Como a forma da curva de gatilho já é conhecida
O GA encontrou valores bem próximos aos encontrados
pelo Algoritmo de Grant, Vora e Weeks.
Para avaliar curvas de gatilho para opções reais e
financeiras, o tempo não é importante por isso o GA pode
ser indicado.
O método de otimização através do GA é muito mais
simples do que o Algoritmo de Grant, Vora e Weeks.
REFERÊNCIAS
[1] “Monte Carlo Valuation of American Options through
Computation of the Optimal Exercise Frontier”, Alfredo
Ibáñez e Fernando Zapatero, 6 Novembro 2001
[2] “Simulation and the Early-Exercise Option Problem”,
Dwight Grant, Gautam Vora e David Weeks, The
Journal of Financial Engineering - Volume 5 - Number
3
[3] “Teaching Option Valuation: From Simple Discrete
Distributions to Black/Scholes Via Monte Carlo
Simulation”, Dwight Grant, Gautam Vora e David
Weeks, Financial Practice and Education, 5
(Fall/Winter 1995)
> REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10
[4] “Path-Dependent Options: Extending the Monte Carlo
Simulation Approach”, Dwight Grant, Gautam Vora e
David Weeks, Published in Management Science, Vol.
43, No. 11, November 1997
[5] “Determinação do Valor de Opções Reais por
Simulação Monte Carlo com Aproximação por Números
Fuzzy e Algoritmos Genéticos”, Juan Guillermo Lazo
Lazo, Tese de Doutorado
[6] “Avaliação de Investimentos em Tecnologia da
Informação: uma Perspectiva de Opções Reais”, André
Fichel Nascimento, Dissertação de Mestrado
6

Documentos relacionados

Uso da Simulação de Monte Carlo e da Curva de Gatilho na

Uso da Simulação de Monte Carlo e da Curva de Gatilho na da opção usando os conceitos da programação dinâmica, isto é, utilizando procedimentos recursivos de cálculo (de trás para frente) a partir de simulações dos valores do ativo subjacente ao longo do...

Leia mais