Saturday 5 August 2017

Fx Opções Binomial Tree


Opções Preço: Cox-Rubenstein Modelo Binomial de Preços de Opção O modelo binário de preços de opções do Cox-Rubenstein (ou Cox-Ross-Rubenstein) é uma variação do modelo de precificação de opções Black-Scholes original. Foi proposto pela primeira vez em 1979 pelos engenheiros de economistas financeiros John Carrington Cox, Stephen Ross e Mark Edward Rubenstein. O modelo é popular porque considera o instrumento subjacente ao longo de um período de tempo, em vez de apenas em um ponto no tempo, usando um modelo baseado em retículo. Um modelo de rede leva em conta as mudanças esperadas em vários parâmetros ao longo de uma vida de opções, produzindo assim uma estimativa mais precisa dos preços das opções do que a criada por modelos que consideram apenas um ponto no tempo. Devido a isso, o modelo de Cox-Ross-Rubenstein é especialmente útil para analisar opções de estilo americano. Que pode ser exercida em qualquer momento até à expiração (opções de estilo europeu só pode ser exercido após a expiração). O modelo de Cox-Ross-Rubenstein utiliza um método de avaliação de risco neutro. Seu principal subjacente pretende que ao determinar os preços das opções, pode-se supor que o mundo é neutro ao risco e que todos os indivíduos (e investidores) são indiferentes ao risco. Num ambiente neutro em termos de risco, os retornos esperados são iguais à taxa de juro livre de risco. O modelo de Cox-Ross-Rubenstein faz certas suposições, incluindo: Nenhuma possibilidade de arbitragem de um mercado perfeitamente eficiente13 Em cada nó de tempo, o preço subjacente só pode ter um movimento para cima ou para baixo e nunca ambos simultaneamente 13 13The Cox-Ross-Rubenstein modelo Emprega e estrutura iterativa que permite a especificação de nós (pontos no tempo) entre a data atual ea data de expiração das opções. O modelo é capaz de fornecer uma avaliação matemática da opção em cada tempo especificado, criando assim uma árvore binomial - uma representação gráfica de possíveis valores em diferentes nós. O modelo Cox-Ross-Rubenstein é um modelo de dois estados ) Na medida em que assume que o preço subjacente só pode aumentar (para cima) ou diminuir (para baixo) com o tempo até à expiração. A avaliação começa em cada um dos nós finais (na expiração) e as iterações são executadas para trás através da árvore binomial até o primeiro nó (data de avaliação). Em termos muito básicos, o modelo envolve três etapas: A criação da árvore de preços binomial 13 O valor da opção calculada em cada nó final 13 O valor da opção calculada em cada nó precedente 13 13Mais a matemática por trás do modelo de Cox-Ross-Rubenstein é considerada menos complicada do que a Black-Scholes modelo (mas ainda fora do escopo deste tutorial), os comerciantes podem novamente fazer uso de calculadoras on-line e ferramentas de análise de negociação baseada em plataforma para determinar valores de preços opção. A Figura 6 mostra um exemplo do modelo Cox-Ross-Rubenstein aplicado a um contrato de opções em estilo americano. A calculadora produz valores de put e call baseados em variáveis ​​entradas pelo usuário.13 Figura 6: O modelo de Cox-Ross-Rubenstein aplicado a um contrato de opções em estilo americano, usando a calculadora de preços on-line do Options Industry Council. Figura 22-1 Aplicativo com uma barra de menus e três categorias de menu Descrição da Figura 22-1 Aplicativo com uma barra de menus e três categorias de menu Criando menus em aplicativos JavaFX Um menu é uma lista de itens processáveis ​​que podem ser exibidos em um Solicitação dos usuários. Quando um menu é visível, os usuários podem selecionar um item de menu no momento. Depois que um usuário clica em um item, o menu retorna ao modo oculto. Usando menus, você pode economizar espaço em sua interface de usuário de aplicativo (UI) colocando em menus a funcionalidade que nem sempre precisa ser visível. Os menus em uma barra de menus são normalmente agrupados em categorias. O padrão de codificação é declarar uma barra de menu, definir os menus de categoria e preencher os menus de categoria com itens de menu. Utilize as seguintes classes de itens de menu ao criar menus em seus aplicativos JavaFX: MenuItem ndash para criar uma opção acionável Menu ndash para criar um submenu RadioButtonItem ndash para criar uma seleção mutuamente exclusiva CheckdmenuItem ndash para criar uma opção que pode ser alternada entre estados selecionados e não selecionados Para separar itens de menu dentro de uma categoria, use a classe SeparatorMenuItem. Os menus organizados por categorias em uma barra de menus são normalmente localizados na parte superior da janela, deixando o resto da cena para elementos cruciais da interface do usuário. Se, por algumas razões, você não pode atribuir qualquer parte visual de sua interface do usuário para uma barra de menus, você pode usar menus de contexto que o usuário abre com um clique do mouse. Criando uma barra de menus Embora uma barra de menus possa ser colocada em outro lugar na interface do usuário, normalmente ela está localizada na parte superior da interface do usuário e contém um ou mais menus. A barra de menus redimensiona automaticamente para ajustar a largura da janela da aplicação. Por padrão, cada menu adicionado à barra de menus é representado por um botão com o valor de texto. Considere um aplicativo que processa informações de referência sobre plantas, como seu nome, nome binomial, imagem e uma breve descrição. Você pode criar três categorias de menu: Arquivo, Editar e Visualizar, e preenchê-los com os itens de menu. O Exemplo 22-1 mostra o código-fonte de uma aplicação deste tipo com a barra de menus adicionada. Exemplo 22-1 Exemplo de Aplicativo de Menu Ao contrário de outros Controles de UI, a classe de Menu e outras extensões da classe MenuItem não estendem a classe Node. Eles não podem ser adicionados diretamente à cena do aplicativo e permanecem invisíveis até serem adicionados à barra de menus pelo método getMenus. Figura 22-2 Barra de menus é adicionada à aplicação Descrição da Figura 22-2 Barra de menus é adicionada à aplicação Você pode navegar pelos menus usando as teclas de seta do teclado. No entanto, quando você seleciona um menu, nenhuma ação é executada, porque o comportamento para os menus ainda não está definido. Adicionando itens de menu Defina a funcionalidade para o menu Arquivo adicionando os seguintes itens: Shuffle ndash para carregar informações de referência sobre plantas Limpar ndash para remover as informações de referência e limpar a cena Separador ndash para separar itens de menu Sair ndash para sair do aplicativo Linhas negrito Exemplo 22-2 crie um menu Shuffle usando a classe MenuItem e adicione componentes gráficos à cena da aplicação. A classe MenuItem permite a criação de um item processável com texto e gráficos. A ação executada em um clique do usuário é definida pelo método setOnAction, semelhante à classe Button. Exemplo 22-2 Adicionando o item de menu Shuffle com gráficos Quando um usuário seleciona o item de menu Shuffle, o método shuffle chamado dentro de setOnAction especifica o título, o nome binomial, uma imagem da planta e sua descrição calculando o índice dos elementos Nas matrizes correspondentes. O item de menu Limpar é usado para apagar a cena da aplicação. Você pode implementar isso fazendo o recipiente VBox com os elementos GUI invisíveis como mostrado no exemplo 22-3. Exemplo 22-3 Criando o item de menu Clear com o Accelerator A implementação da classe MenuItem permite que os desenvolvedores definam um acelerador de menu, uma combinação de teclas que executa a mesma ação do item de menu. Com o menu Limpar, os usuários podem selecionar a ação na categoria do menu Arquivo ou pressionar a tecla Control e a tecla X simultaneamente. O menu Sair fecha a janela do aplicativo. Defina System. exit (0) como uma ação para este item de menu como mostrado no Exemplo 22-4. Exemplo 22-4 Criando o item de menu Exit Use o método getItems mostrado no Exemplo 22-5 para adicionar os itens de menu recém-criados ao menu Arquivo. Você pode criar um item de menu separador e adicioná-lo dentro do método getItems para desanexar visualmente o item de menu Sair. Exemplo 22-5 Adicionar Itens de Menu Adicionar Exemplo 22-2. Exemplo 22-3. Exemplo 22-4. E Exemplo 22-5 ao aplicativo de exemplo de menu e, em seguida, compilá-lo e executá-lo. Selecione o item de menu Shuffle para carregar informações de referência sobre diferentes plantas. Em seguida, limpe a cena (Limpar) e feche a aplicação (Sair). A Figura 22-3 mostra a seleção do item de menu Limpar. Figura 22-3 Menu Arquivo com Três Itens de Menu Descrição da Figura 22-3 Menu Arquivo com Três Itens de Menu Com o menu Exibir, você pode ocultar e mostrar elementos de informações de referência. Implemente o método createMenuItem e chamá-lo dentro do método start para criar quatro objetos CheckMenuItem. Em seguida, adicione itens de menu de seleção recém-criados ao menu Exibir para alternar a visibilidade do título, nome binomial, imagem da planta e sua descrição. O exemplo 22-6 mostra dois fragmentos de código que implementam estas tarefas. Exemplo 22-6 Aplicando a classe CheckMenuItem para criar opções de alternância A classe CheckMenuItem é uma extensão da classe MenuItem. Ele pode ser alternado entre estados selecionados e não selecionados. Quando selecionado, um item de menu de seleção exibe uma marca de seleção. O exemplo 22-6 cria quatro objetos CheckMenuItem e processa a alteração de sua propriedade selectedProperty. Quando, por exemplo, um usuário desmarca o item picView, o método setVisible recebe o valor falso, a imagem da planta fica invisível. Quando você adiciona esse fragmento de código ao aplicativo, compila e executa o aplicativo, experimente selecionar e desmarcar os itens do menu. A Figura 22-4 mostra a aplicação no momento em que o título ea imagem da planta são mostrados, mas seu nome binomial e descrição estão ocultos. Figura 22-4 Usando Itens de Menu de Verificação Descrição da Figura 22-4 Usando Itens de Menu de Verificação Criando Submenus Para o menu Editar, defina dois itens de menu: Efeito de Imagem e Sem Efeitos. O item de menu Efeito de Imagem é projetado como um submenu com três itens para definir um dos três efeitos visuais disponíveis. O item de menu No Effects remove o efeito selecionado e restaura o estado inicial da imagem. Use a classe RadioMenuItem para criar os itens do submenu. Adicione os botões do menu de rádio a um grupo de alternância para tornar a seleção mutuamente exclusiva. O exemplo 22-7 implementa essas tarefas. Exemplo 22-7 Criando um submenu com itens de menu de rádio O método setUserData define um efeito visual para um item de menu de rádio específico. Quando um dos itens do grupo de alternância é selecionado, o efeito correspondente é aplicado à imagem. Quando o item de menu Efeitos não é selecionado, o método setEffect especifica o valor nulo e nenhum efeito é aplicado à imagem. A Figura 22-5 captura um momento em que um usuário está selecionando um item de menu Sombra. Figura 22-5 Submenu com três itens de menu de rádio Descrição da Figura 22-5 Submenu com três itens de menu de rádio Quando o efeito DropShadow é aplicado à imagem, ele aparece como mostrado na Figura 22-6. Figura 22-6 Imagem de Quince com efeito DropShadow Aplicada Descrição da Figura 22-6 Imagem de Quince com efeito DropShadow Aplicada Você pode usar o método setDisable da classe MenuItem para desativar o menu Sem Efeitos quando nenhum dos efeitos for selecionado em O submenu Efeito de imagem. Modificar o Exemplo 22-7 como mostrado no Exemplo 22-8. Exemplo 22-8 Desativação de um item de menu Quando nenhuma das opções do RadioMenuItem é selecionada, o item de menu Sem Efeito é desativado, como mostrado na Figura 22-7. Quando um usuário seleciona um dos efeitos visuais, o item de menu Sem Efeitos é habilitado. Figura 22-7 Item de menu de efeito está desativado Descrição da Figura 22-7 Item de menu de efeito está desativado Adicionando menus de contexto Quando você não pode alocar qualquer espaço da interface do usuário para uma funcionalidade necessária, você pode usar um menu de contexto. Um menu de contexto é uma janela pop-up que aparece em resposta a um clique do mouse. Um menu de contexto pode conter um ou mais itens de menu. No aplicativo de exemplo de menu, defina um menu de contexto para a imagem da planta, para que os usuários possam copiar a imagem. Use a classe ContextMenu para definir o menu de contexto como mostrado no Exemplo 22-9. Exemplo 22-9 Definindo um Menu de Contexto Quando um usuário clica com o botão direito do mouse no objeto ImageView, o método show é chamado para o menu de contexto para habilitar sua exibição. O método setOnAction definido para o item Copiar Imagem do menu de contexto cria um objeto Clipboard e adiciona a imagem como seu conteúdo. A Figura 22-8 captura um momento em que um usuário está selecionando o item de menu de contexto Copiar Imagem. Figura 22-8 Usando o Menu de Contexto Descrição da Figura 22-8 Usando o Menu de Contexto Você pode tentar copiar a imagem e colá-la em um editor gráfico. Para obter mais aprimoramentos, você pode adicionar mais itens de menu ao menu de contexto e especificar ações diferentes. Você também pode criar um menu personalizado usando a classe CustomMenuItem. Com esta classe você pode incorporar um nó arbitrário dentro de um menu e especificar, por exemplo, um botão ou um controle deslizante como um item de menu. O modelo binomial de precificação de opções é um método de avaliação de opções desenvolvido em 1979. O modelo binomial de precificação de opções usa um procedimento iterativo, permitindo a especificação de nós, ou pontos no tempo, durante O intervalo de tempo entre a data de avaliação ea data de vencimento das opções. O modelo reduz as possibilidades de mudanças de preços e elimina a possibilidade de arbitragem. Um exemplo simplificado de uma árvore binomial pode parecer algo assim: BREAKING DOWN Binomial Option Pricing Model O modelo binomial de precificação de opções assume um mercado perfeitamente eficiente. Sob este pressuposto, ele é capaz de fornecer uma avaliação matemática de uma opção em cada ponto no período especificado. O modelo binomial adota uma abordagem de avaliação neutra do risco e assume que os preços de títulos subjacentes só podem aumentar ou diminuir com o tempo até que a opção expire sem valor. Binomial Pricing Exemplo Um exemplo simplificado de uma árvore binomial tem apenas um passo de tempo. Suponha que haja um estoque com um preço de 100 por ação. Em um mês, o preço desta ação irá subir 10 ou diminuir em 10, criando esta situação: Preço da ação 100 Preço da ação (até estado) 110 Preço da ação (baixo estado) 90 Em seguida, suponha que há uma opção de chamada disponível Sobre este estoque que expira em um mês e tem um preço de exercício de 100. No estado up, esta opção de chamada vale 10 e no estado down, vale 0. O modelo binomial pode calcular o que o preço da chamada Opção deve ser hoje. Para fins de simplificação, suponha que um investidor compra metade da ação e escreve, ou vende, uma opção de compra. O investimento total de hoje é o preço de metade de uma ação menos o preço da opção e os possíveis ganhos no final do mês são: Custo hoje 50 - preço da opção Valor da carteira (até estado) 55 - máximo (110 - 100, 0) 45 Valor da carteira (down state) 45 - max (90 - 100, 0) 45 O retorno da carteira é igual, não importa como o preço da ação se move. Dado este resultado, supondo que não há oportunidades de arbitragem, um investidor deve ganhar a taxa livre de risco ao longo do mês. O custo hoje deve ser igual ao payoff descontado à taxa sem risco por um mês. A equação a ser resolvida é a seguinte: Preço de opção 50 - 45 xe (taxa livre de risco x T), onde e é a constante matemática 2.7183 Supondo que a taxa livre de risco é 3 por ano e T igual a 0,0833 (um dividido por 12 ), Então o preço da opção de compra hoje é 5.11. Devido à sua estrutura simples e iterativa, o modelo binomial de precificação de opções apresenta certas vantagens únicas. Por exemplo, uma vez que fornece um fluxo de avaliações de um derivado para cada nó em um período de tempo, é útil para a valorização de derivativos, como opções americanas. É também muito mais simples do que outros modelos de preços, como o modelo Black-Scholes.

No comments:

Post a Comment