Deux tâches : trouver le point le plus bas, trouver où une courbe croise zéro
scipy.optimize résout deux sortes de problèmes. Le premier est la minimisation d'une fonction , c'est-à-dire trouver l'entrée dont la sortie est la plus petite. On appelle minimize(f, x0) où x0 est votre première estimation. La méthode BFGS descend en suivant la pente de . Nelder-Mead n'a pas besoin de pente et compare simplement des valeurs. SLSQP accepte aussi des bornes et des contraintes, comme des poids dont la somme vaut 1. Le résultat n'est qu'un minimum local, le fond de la vallée où vous avez commencé, et un autre x0 peut donner une autre réponse. Vérifiez toujours res.success.
Le second problème est la recherche de racines : résoudre . brentq(g, a, b) demande un encadrement, deux points où a des signes opposés, et il est alors sûr de trouver une racine en divisant l'intervalle par deux à répétition. Après divisions l'intervalle a pour largeur . newton(g, x0, fprime) utilise la pente de et est bien plus rapide, mais il lui faut un bon point de départ et il peut sauter très loin quand la pente est presque plate. En finance, le rendement à l'échéance d'une obligation est une racine : c'est le taux qui rend la formule de prix de l'obligation égale à son prix de marché. Un pas de Newton est .
brentq sur l'encadrement confirme la racine . Pour que la dichotomie sur soit à moins de , il faut , donc divisions. Pour un minimum, deux actifs de volatilités et et de corrélation ont une covariance de , donc le poids de variance minimale du premier est . Sur données réelles, SPY et TLT sur jours depuis février 2005 ont des volatilités de et par an et une corrélation de . Le poids de variance minimale en SPY est de , pour une volatilité de . Pour une fonction à deux vallées, comme , minimize depuis s'arrête à et depuis à , qui est le plus bas.- Minimiser ou résoudre :
minimizetrouve un point bas,brentqetnewtontrouvent où une fonction vaut zéro. - Un encadrement est une garantie :
brentqconverge toujours quand les signes diffèrent, alors quenewtonest plus rapide mais exige un bon départ. - Un minimum peut être local : essayez plusieurs points de départ et lisez
res.successavant de croireres.x.
Lab : ce qui est noté
- Un pas de Newton15 pts
- Divisions de la dichotomie10 pts
- Un poids de variance minimale15 pts
- Le bon outil pour chaque tâche15 pts
- Un flux de volatilité implicite10 pts
- Un minimum peut-être local10 pts
- Pourquoi un encadrement, et pourquoi Newton peut échouer25 pts