3 votos

Interpretación de Deriva

Considera el modelo común de precios de acciones dado por un movimiento Browniano geométrico (GBM), que sigue la EDS $$ dS(t) = \mu S(t) dt + \sigma S(t) dW(t). $$

A continuación se muestra un gráfico de una simulación de dicho GBM utilizando $N = 1000$ puntos comenzando en $S(0) = 100$ y volatilidad $\sigma = 0.2$. ¿Qué crees que se estableció como deriva $\mu$? drift0

Si hicieras una estimación MLE de $\mu$ y $\sigma$ en esta serie temporal, obtendrías $\mu = 0.5054$ y $\sigma = 0.1966$. De hecho, esta simulación se realizó con $\mu = 0$.

Está claro para mí que no tengo una buena intuición para $\mu$, ya que estaría tentado a estar de acuerdo con las estimaciones MLE. ¿Cómo debería pensar en $\mu$?

Creo que esto tiene importantes implicaciones para entender la calibración en la práctica. He realizado una estimación MLE para un GBM porque creo que el proceso que estoy intentando modelar sigue un GBM en cierta medida, en este caso, ES un GBM, por lo que no hay "error de modelado". Mi "mejor conjetura" de sus parámetros es $\mu = 0.5054$ y $\sigma = 0.1966$. Pero, de hecho, $\mu = 0$. Es decir, mi modelo GBM para un GBM con deriva $0$ tiene una deriva de $0.5054$. ¿Qué?


Algunos detalles solicitados: Establece $R_i = \log \left( \frac{S(t_i)}{S(t_{i-1})} \right)$, $i = 1,\ldots,N$. La función de verosimilitud $L$ para los datos $\{R_i\}$ es \begin{align*} L(\mu, \sigma) = \prod_{i=1}^N \phi(R_i; \left(\mu - \frac{\sigma^2}{2}\right)\Delta t, \sigma \sqrt{\Delta t}) \end{align*} donde $\phi(x; m,s)$ es la pdf de una variable aleatoria distribuida $\mathcal{N}(m, s^2)$.

El código de MATLAB que estoy utilizando:

% Simula un GBM(mu, sigma) y traza la ruta.
% Aquí, GBM(mu, sigma) ~ log N((mu - sigma^2/2)*t, sigma^2*t)

% ----------------- Simulación (Generación de Datos) ---------------------

%------------ configurar parámetros ----------------
N=1000; % número de puntos en la ruta
mu=0;  % deriva
sigma=0.2;  % vol
S0=100;  % valor inicial del proceso
T=1;  % tiempo final
dt=T/N;  % paso de tiempo

%------------ asignación e inicialización ----------------
t=linspace(0,T,N+1);  % valores del eje del tiempo
S=zeros(1,N+1);  % asigna vector de valores del proceso
S(1)=S0;  % asigna el valor inicial al primer valor del proceso
Z=normrnd(0,1,1,N);  % normales estándar

%------------ calcular las rutas ----------------
for i=2:N+1
    S(i)=S(i-1)*exp((mu - sigma^2/2)*dt + sigma*sqrt(dt)*Z(i-1));
end

% crea gráfico del proceso
plot(t,S);

% ----------------- Estimación de Parámetros ----------------------
% crear vector de log retornos
R=zeros(1,N);
for i=2:N+1
  R(i-1) = log(S(i)/S(i-1));  
end

%------------ Estimaciones MLE ----------------
mle_est = mle(R,'distribution','normal');
theta(2) = sqrt(mle_est(2)^2/dt);  % sigma
theta(1) = mle_est(1)/dt + 0.5*theta(2)^2;  % mu

disp('Estimaciones MLE:')
disp(sprintf('mu = %f, sigma = %g',theta(1), theta(2)));

1voto

Andrey Puntos 137

Generaste solo una realización de la GBM. La varianza de una GBM aumenta con el tiempo, por lo que debes generar más realizaciones para obtener estimaciones precisas.

Aquí puedes ver una muestra de simulaciones Brownianas: https://tex.stackexchange.com/questions/59926/how-to-draw-brownian-motions-in-tikz-pgf

1voto

Stefan Puntos 11

Esto está relacionado con un error común llamado la falacia de la Diversificación Temporal. Los rendimientos no se promedian a lo largo de períodos de tiempo más largos. Al contrario, como señala emcor, la varianza aumenta.

Quizás encuentres interesante este artículo llamado Riesgo y Tiempo de John Norstad.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X