Ajouter une dérive
Dans le dernier exercice, vous avez simulé des cours boursiers qui suivent une marche aléatoire. Vous allez l’étendre de deux façons dans cet exercice.
- Vous allez examiner une marche aléatoire avec dérive. De nombreuses séries temporelles, comme les cours boursiers, sont des marches aléatoires mais ont tendance à dériver à la hausse au fil du temps.
- Dans le dernier exercice, le bruit de la marche aléatoire était additif : des variations aléatoires normales du prix étaient ajoutées au dernier prix. Cependant, en ajoutant du bruit, vous pourriez théoriquement obtenir des prix négatifs. Vous allez maintenant rendre le bruit multiplicatif : vous ajouterez un à ces variations normales aléatoires pour obtenir un rendement total, puis vous multiplierez cela par le dernier prix.
Cet exercice fait partie du cours
Analyse des séries temporelles en Python
Instructions
- Générez 500 « pas » multiplicatifs aléatoires selon une loi normale, avec une moyenne de 0,1 % et un écart-type de 1 % à l’aide de
np.random.normal(). Il s’agit ici de rendements, auxquels vous ajoutez un pour obtenir le rendement total. - Simulez les cours
P:- Cumulez le produit des pas avec la méthode numpy
.cumprod(). - Multipliez le produit cumulatif des rendements totaux par 100 pour obtenir une valeur de départ de 100.
- Cumulez le produit des pas avec la méthode numpy
- Tracez la marche aléatoire simulée avec dérive.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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()