%
% Desenha gráficos da fórmula de uma opção binária 
% cash-or-nothing call (Aula 15 de Matemática Financeira).
%
% Adaptado por L. Nunes Vicente, Abril de 2006, de
% An Introduction to Financial Option Valuation: Mathematics, 
% Stochastics and Computation, D. J. Higham,
% Cambridge University Press, 2004,
% http://www.maths.strath.ac.uk/~aas96106/option_book.html.
%
clf;
clear;
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
E     = 4;    % E (preço de exercício)
r     = 0.05; % r (taxa de juro)
sigma = 0.2;  % sigma (volatilidade)
t0    = 0;    % t0 (instante inicial)
T     = 4;    % T (instante final ou maturidade)
S0    = 2;    % S0 (valor do activo em t0)
ST    = 6;    % ST (valor do activo em T)
B     = 2;    % B (recompensa quando S >= E na maturidade)
L     = 50;   % L (número de subintervalos)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
Svals  = linspace(S0,ST,L);
tvals  = linspace(t0,T,L);
C      = zeros(L,L);
%
for i = 1:L
    S = Svals(i);
    for j = 1:L
        t = tvals(j);
        [Call] = binary(S,E,r,sigma,T-t,B);
        C(i,j) = Call;
    end
end
%
plot(Svals,C(:,25));
xlabel('S'); ylabel('C_{bin}(t,S)');
hold on; 
plot(Svals,C(:,30));
plot(Svals,C(:,35));
plot(Svals,C(:,40));
plot(Svals,C(:,45));
plot(Svals,C(:,47));
plot(Svals,C(:,49));
%
% Fim de binary_plots.
