Code d'un barème complexe

bonjour,

j'essaie de résoudre un pb de barème financier.

Les résultats de positions boursieres sont disposés dans une colonne excel, puis cumulés dans une colonne adjacente. Le but de ce classeur est de comparer le total cumulé après chaque cloture de position

(chaque rang excel) à une grille de progression divisée en 10 niveaux de 10% chacun.

La taille des positions est définie comme le capital disponible dans le compte multiplié

par un facteur appelé "levier". Si les résultats sont encourageants et augmentent, on augmente le levier

tous les 10%, mais dans le cas contraire, on le diminue plus rapidement dès 5% en dessous du seuil:

Exemple: Pour un capital de 1000, et un levier de départ de 1, le résultat part de zéro en début de période.

Dès qu'il atteint 100, soit 10%, on passe le levier à 1.2 par exemple (ces chiffres sont fixes et choisis à l'avance)

tant que le résultat reste entre 5% et 20%, le levier reste à 1.2, mais s'il retombe en dessous de 5%,

on réduit le levier au niveau inferieur soit 1. Idem dès 20%, le nouvel intervalle est entre 15% et 30% (le seuil de 20% - 5%) etc..

J'ai fait une fonction VBA (avec la variable case) qui donne un levier en fonction de la valeur d'une case.

le pb est qu'à la montée, les intervalles sont espacés de 10%, mais à la descente ils sont de 15%, et on ne sait pas

si le résultat va augmenter de manière régulière, ou au contraire subir des baisses de temps en temps.

et la, je bloque..... un tout petit peu

MERCI de votre aide bien appréciée.

dani 77

NB: si c'est plus facile, je peux joindre un fichier excel 2007, mais j'espère que c'est assez clair.

Salut dani77,

Tu peux joindre un bout de fichier? Au cas où ce serait plus clair encore?

Oui, bien sur,

dans le fichier joint, la fonction vba bareme compare une case excel à un bareme fixe et renvoie une valeur

qui est le levier.

donc on peut afficher à chaque rang excel le resultat dune position de bourse et dans la colonne adjacente fairele total cumulé. dans une troisieme colonne on calcule pour chaque rang le levier grace à la fonction bareme

jusqu'ici c'est clair.

mais dans ma question, une fois un seuil atteint (par exemple 30%), le levier peut soit passer au levier superieur si les resultats depassent 40%, soit redescendre au levier inferieur, si les resultats passent en dessous de 25%.

donc + 10%, ou -15%.

voila

merci davance pour tes suggestions VBA new

25bareme.xlsm (21.76 Ko)

re,

dani77 a écrit :

la fonction vba bareme

Où est-elle ??! Est-ce la fonction "levier" dont tu veux parler ?

-- 15 Jan 2010 10:02 --

Bon, apparemment, fonction bareme=fonction levier.

Dans ton fichier, lorsque le bénéfice est de 8655, levier = 1.4

Par contre, lorsque le bénéf est de 8000 par exemple, levier = 1.35 ??! Ce n'est pas 1.4 ?

-- 16 Jan 2010 00:38 --

Re,

Pas facile ton histoire !

Regarde voir si ça correspond à peu près à ce que tu veux ; fais également des tests parce que je suis pas sûr d'avoir tout compris les règles du levier.

Version 2007 :

24bareme-v1.xlsm (25.19 Ko)

Version 2003 pour ceux que ça intéresse :

18bareme-v1.zip (16.86 Ko)
capture
Rechercher des sujets similaires à "code bareme complexe"