Logo do repositório
 
A carregar...
Miniatura
Publicação

Options pricing : methods and implementations in NPT

Utilize este identificador para referenciar este registo.
Nome:Descrição:Tamanho:Formato: 
204028639.pdf1.86 MBAdobe PDF Ver/Abrir

Orientador(es)

Resumo(s)

This report documents the design and implementation of an option pricer inside NPT (No Problem Today), a low-code editor developed by NP Solutions. The pricer combines two complementary engines: (i) Black–Scholes–Merton for European options (with continuous dividend), providing closed-form prices and Greeks; and (ii) a Cox–Ross–Rubinstein binomial tree that handles early exercise for American options and serves as a numerical cross-check. An implied-volatility solver was built as a hybrid procedure—Newton–Raphson with damping and bounds, with a bisection fallback when Vega is small or iterations overshoot. Market data (Tesla OHLCV and SPY option chains) are ingested from Python, cleaned, and harmonized. Validation relies on put–call parity, no-arbitrage bounds, convergence of the tree when doubling time steps, analytical vs. numerical Greeks, and a re-pricing test after IV inversion. Particular care is given to unit hygiene (maturities in years, continuous rates/dividends, annualized volatilities) and to a normal CDF implementation based on the error function for numerical stability. Beyond the core pricer, I contributed UI/UX patterns for NPT, a small data pipeline, and “NPT GPT”, a prompt-and-validator framework to generate valid Raw JSON. The tool is operational, explainable, and extensible toward IV surfaces and alternative dynamics.
Este relatório descreve a conceção e a implementação de um avaliador de opções no NPT (No Problem Today), um editor low-code da NP Solutions. O avaliador combina dois motores complementares: (i) Black–Scholes–Merton para opções europeias (com dividendo contínuo), fornecendo preços e Greeks em forma fechada; e (ii) uma árvore binomial de Cox–Ross–Rubinstein que capta o exercício antecipado de opções americanas e funciona como verificação numérica. A volatilidade implícita é obtida por um algoritmo híbrido-Newton-Raphson com amortecimento e limites, com recurso à bisseção quando a Vega é pequena ou as iterações ultrapassam o intervalo. Os dados de mercado (OHLCV da Tesla e cadeias de opções do SPY) são recolhidos em Python, limpos e harmonizados. A validação baseia-se na paridade call–put, em limites de não-arbitragem, na convergência da árvore quando o número de passos duplica, na comparação Greeks analíticos vs. numéricos e num teste de re-precificação após a inversão da VI. É dada especial atenção à coerência de unidades (maturidades em anos, taxas/dividendos em contínuo, volatilidades anualizadas) e à implementação estável da CDF normal via função erro. Para além do núcleo do pricer, contribuí com padrões de UI/UX no NPT, um pequeno pipeline de dados e o “NPT GPT”, um enquadramento de prompts e validação para gerar Raw JSON válido. A ferramenta é operacional, explicável e extensível para superfícies de VI e dinâmicas alternativas.

Descrição

Palavras-chave

Árvore binomial Avaliação de opções Binomial tree Black-Scholes-Merton Greeks Implied volatility Low-code NPT Option pricing Validação Validation Volatilidade implícita

Contexto Educativo

Citação

Projetos de investigação

Unidades organizacionais

Fascículo