Acabo de empezar a aplicar el Binomio-Lattice, sin embargo, todavía no entiendo bien algunas cosas. Mis preguntas son:
-
¿Cuál es el concepto de trabajar hacia atrás (lado izquierdo) a partir de los valores en los nodos terminales (más lejanos) en el lado derecho. ¿Por qué tenemos que hacer la inducción hacia atrás? Empecé mi primer nodo con algún valor
S
, a la hora de decirt=1
Entonces todo lo que necesito saber son los valores de la opción en cualquier momento por delante de este tiempo hasta que la opción expire. ¿Cuál es la necesidad y el significado de los valores obtenidos por inducción hacia atrás y en qué se diferencian de la inducción hacia adelante? -
Ahora bien, si aplico la inducción hacia atrás, entonces los valores que obtengo en el nodo inicial (el nodo más a la izquierda) son mucho mayores que los valores en cualquier otro nodo. ¿Qué significa esto?
Tomemos esto como ejemplo: Empiezo con
S=1.5295e+009
en el nodo de partida, y después de usar Binomial-Lattice y hacer inducción hacia atrás, obtengo9.9708e+10
en el nodo inicial. ¿Por qué ha aumentado tanto y qué implica esto? Si disminuyo mi paso de tiempo dos veces, entonces obtengo además valores muy altos como-1.235e+25
-
Los valores que obtenemos en cada nodo a medida que avanzamos en el nodo de partida (es decir, los valores del nodo de la derecha al nodo de la izquierda) son los valores análogos al Valor Actual (PV) en ese momento o al Valor Actual Neto (NPV)?
EDITAR: Este es mi código Matlab para la red binomial:
function [price,BLOV_lattice]=BLOV_general(S0,K,sigma,r,T,nColumn)
% BLOV stands for Binomial Lattice Option Valuation
%% Constant parameters
del_T=T./nColumn; % where n is the number of columns in binomial lattice
u=exp(sigma.*sqrt(del_T));
d=1./u;
p=(exp(r.*del_T)-d)./(u-d);
a=exp(-r.*del_T);
%% Initializing the lattice
Stree=zeros(nColumn+1,nColumn+1);
BLOV_lattice=zeros(nColumn+1,nColumn+1);
%% Developing the lattice
for i=0:nColumn
for j=0:i
Stree(j+1,i+1)=S0.*(u.^j)*(d.^(i-j));
end
end
for i=0:nColumn
BLOV_lattice(i+1,nColumn+1)=max(Stree(i+1,nColumn+1)-K,0);
end
for i=nColumn:-1:1
for j=0:i-1
BLOV_lattice(j+1,i)=a.*(((1-p).*BLOV_lattice(j+1,i+1))+(p.*BLOV_lattice(j+2,i+1)));
end
end
price=BLOV_lattice(1,1);
EDIT 2 (una pregunta adicional): Si el entramado binomial me está dando PV's de opción, y mis PV's se supone que disminuyen con el tiempo, entonces por qué más de la mitad de los valores en mis nodos terminales muestran un incremento en los valores que con los que comienzo ( =S0
). Vea la imagen adjunta para ver los valores.