CommencerCommencez gratuitement

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

<cours>Analyse des séries temporelles en Python</cours>
Voir le cours

Instructions de l’exercice

  • 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.
  • 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