Calcul strike option quartile
Bonsoir,
Je dois élaborer un pricer d'options selon le modèle de Black&Scholes. La base de données contient 1285 dates et donc 1285 prix pour 50 sous-jacent. Pour calculer le strike, il m'est demandé de choisir le quartile du prix du sous-jacent sur l'année glissante antérieure à la date de début de détention de l'option (donc entre date début-365 et date début), tout ceci en fonction du sous-jacent choisi (choix de 10 dans un ListBox) et de la date de début de détention (choix dans un ComboBox). J'ai essayé une boucle for et if combinée qui parcourt toutes les lignes de la colonne des dates qui est censé s'arrêter quand la valeur de la date dans mon tableau de sortie est égale à la date dans la base de données, qui parcourt aussi les colonnes avec le nom des sous-jacents qui devrait s'arrêter quand la valeur de la désignation du sous-jacent dans mon tableau de sortie est égale à la désignation dans la base de données. En résultat de la condition j'ai demandé à compléter la colonne des strike dans mon tableau de sortie à l'aide de la fonction quartile. Cette procédure se trouve dans le code de l'UserForm1, en dernière partie du code du bouton OK. Mais cela ne fonctionne pas du tout, c'est pour cette raison que je viens solliciter votre aide. Je vous envoie mon travail en pièce jointe de ce message.
En vous remerciant par avance et vous souhaite une bonne soirée.
Cordialement,
Houssen.
Bonjour Houssen,
je vous ai créé une fonction personnalisée "F_Quartile" dans le module3. Vous donnez un nom et une date.Le resultat est une matrice à 5 éléments que vous pouvez consulter, mais la 3ième (avec index 2) est le résultat voulu.
Vous pouvez faire un essai avec la macro "Test_Quartile" et j'ai regarde à l'UF mais je ne sais pas exactement, ce que je dois faire là.
re,
vous devez remplacer "quel nom" et "quelle date" par 2 de vos variables, mais je ne sais pas lesquels, le nom sera par exemple "Deutsche Telekom" et la date une date ..., je suppose
Réponse = F_Quartile(Worksheets("Feuil4").Range("G" & a).Value, Worksheets("Feuil4").Range("K" & a).Value2)
Bonsoir Monsieur,
Je vous remercie beaucoup pour votre réponse. J'ai juste une dernière question et après je ne vous dérangerai plus. Je voulais savoir si cela était normal que j'ai l'erreur suivante au moment d'exécuter. En effet, à l'aide de votre code j'ai refait la même chose pour le premier et troisième quartile afin de donner le choix à l'utilisateur entre les trois quartile (optionbutton). Mais j'ai l'erreur suivante:
re,
je pense qu'il y a un problème avec la date, parce que la ligne jaune calcule le même jours moins 12 mois. Votre date, c'est une vrai date ou un text qui ressemble à une date ???
J'ai modifié la macro, elle s'appèle maintenant "F_ALL_IN_ONE" et elle calcule tout comme elle connait déjà la plage et si nécessaire, la matrice aCotations vous donne toutes les dates et les valeurs, pour créer un graphique ou faire d'autres calculations avec. (les autres cellules de J à V ???)

