CommencezCommencez gratuitement

Estimer la dérive

Dans le dernier exercice, vous avez simulé des prix boursiers qui suivent une marche aléatoire. Vous allez l'étendre de deux façons dans cet exercice.

  • Vous examinerez une marche aléatoire avec une dérive. Plusieurs séries chronologiques, comme les prix boursiers, sont des marches aléatoires mais ont tendance à dériver à la hausse au fil du temps.
  • Dans l'exercice précédent, le bruit de la marche aléatoire était additif : des variations normales aléatoires du prix étaient ajoutées au dernier prix. Toutefois, en ajoutant du bruit, vous pourriez théoriquement obtenir des prix négatifs. Maintenant, vous rendrez le bruit multiplicatif : vous ajouterez un à la variation normale aléatoire pour obtenir un rendement total, puis vous multiplierez cela par le dernier prix.

Cette activité fait partie du cours

Analyse des séries chronologiques en Python

Voir le cours

Instructions de l’exercice

  • Générez 500 « pas » multiplicatifs aléatoires suivant une loi normale avec une moyenne de 0,1 % et un écart-type de 1 % à l'aide de np.random.normal(), qui sont maintenant des rendements, puis ajoutez un pour obtenir le rendement total.
  • Simulez les prix boursiers P :
    • Calculez le produit cumulatif des pas à l'aide de la méthode numpy .cumprod().
    • Multipliez le produit cumulatif des rendements totaux par 100 pour obtenir une valeur de départ de 100.
  • Tracez la marche aléatoire simulée avec dérive.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Generate 500 random steps
steps = np.random.normal(loc=___, scale=___, size=___) + ___

# Set first element to 1
steps[0]=1

# Simulate the stock price, P, by taking the cumulative product
P = ___ * np.cumprod(___)

# Plot the simulated stock prices
plt.plot(___)
plt.title("Simulated Random Walk with Drift")
plt.show()
Modifier et exécuter le code