Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Corrige le calcul des revenus bruts #1272

Merged
merged 4 commits into from
Feb 23, 2019
Merged

Corrige le calcul des revenus bruts #1272

merged 4 commits into from
Feb 23, 2019

Conversation

claireleroy
Copy link
Contributor

@claireleroy claireleroy commented Feb 13, 2019

Le calcul des revenus bruts dans le module mesures.py se fait en partant des revenus nets et en y ajoutant l'ensemble des prélèvements retranchés des revenus bruts. La contribution additionnelle de solidarité et d'autonomie (CASA) fait partie des prélèvements appliqués aux revenus bruts de remplacement (retraite). Elle doit donc être intégrée à ce calcul.

  • Changement mineur.
  • Périodes concernées : toutes.
  • Zones impactées : openfisca_france/model/mesures.py.
  • Détails :
    • Ajoute la CASA dans le calcul de revenus_remplacement_pensions_bruts_menage

Ces changements :

  • Corrigent ou améliorent un calcul déjà existant.

@claireleroy
Copy link
Contributor Author

claireleroy commented Feb 13, 2019

Réflexion plus générale sur le calcul des revenus bruts :

  • je trouve ça utile d'avoir un calcul des revenus bruts totaux et catégoriels dans mesures.py : c'est bien une mesure intéressante pour diverses analyses économiques. De même, on devrait avoir une mesure des revenus nets.
  • par contre la logique de partir des revenus nets pour recalculer les revenus bruts me semble bizarre dans une logique OpenFisca... A priori, ce sont les revenus nets qui sont calculés à partir des revenus bruts.

(NB : je pense que cette logique est "importée" de TAXIPP, cf. PR #1207. Historiquement, nous n'avions accès qu'aux revenus imposables et en déduisions les revenus bruts. Mais c'est une utilisation spécifique propre à TAXIPP que nous gérons par ailleurs. Je serais pour modifier le calcul des revenus bruts dans OpenFisca.)

@Morendil
Copy link
Contributor

Morendil commented Feb 13, 2019

Merci pour l'amélioration de la précision du calcul !

Effectivement on a déjà retraite_nette qui somme ainsi: retraite_imposable + csg_imposable_retraite + crds_retraite + casa. Algébriquement on aurait donc revenus_remplacement_pensions_bruts_menagequi serait égale à retraite_imposable - csg_imposable_chomage - csg_deductible_chomage - csg_deductible_retraite - crds_chomage.

J'ai l'impression qu'on ne fait pas le même traitement pour les CSG/CRDS chômage et retraite et ça me pose question. Sais-tu auprès de qui on pourrait valider cette formule ?

Comme il s'agit d'une mesure économique je n'ai pas trop d'idées sur ce qui pourrait nous servir "d'oracle" (i.e. une autre source de vérité avec laquelle on pourrait recouper notre raisonnement), et pas vraiment de base pour écrire un test. Pas d'objection donc à merger en l'état si c'est OK pour toi. Je te laisse me donner le feu vert.

@claireleroy
Copy link
Contributor Author

@Morendil Merci pour la review!

Où est-ce que tu as l'impression qu'on ne traite pas pareil le chômage et la retraite ? Ça ne devrait pas être le cas normalement. Sinon, il faut que je corrige.

Je n'ai pas de références pour ces mesures économiques désolée... Ce sont des grandeurs économiques (utiles pour les économistes lorsque nous analysons le système socio-fiscal) mais dont la définition est juste communément acceptée. Je ne crois pas que ce soit des concepts codifiés par la loi.
L'INSEE définit le revenu imposable, le revenu disponible, les revenus catégoriels etc. mais ce n'est pas la source de vérité absolue : cf. définitions de l'INSEE

Sinon je pense que mon message était plus une réflexion générale sur mesures.py. Je considère qu'OpenFisca essaye de "coller le plus possible à la réalité" : donc les calculs suivent le fil temporel du système socio-fiscal : revenus bruts => cotisations => revenus nets => revenus imposable => impôts et prestations => revenu disponible. Ex : on utilise les revenus imposables pour calculer l'impôt sur le revenu et non pas l'inverse. Donc utiliser les revenus nets pour calculer les revenus bruts, ça rompt cet ordre naturel de calcul. Mais on peut réserver cette discussion pour une prochaine fois!

Je pense qu'on est bon pour merger du coup oui!

@Morendil
Copy link
Contributor

Morendil commented Feb 14, 2019

Au temps pour moi, en fait ça colle. Une version plus rigoureuse de mon analyse initiale qui était un peu à la va-vite:

revenus_remplacement_pensions_bruts_menage
= (par expansion de la formule)
               pensions_nettes
            - csg_imposable_chomage
            - csg_deductible_chomage
            - csg_imposable_retraite
            - csg_deductible_retraite
            - crds_chomage
            - crds_retraite
= (par substitution de la formule de pensions_nettes, et avec quelques omissions sans conséquence)
               chomage_net
            + retraite_nette
            - csg_imposable_chomage
            - csg_deductible_chomage
            - csg_imposable_retraite
            - csg_deductible_retraite
            - crds_chomage
            - crds_retraite
= (par substitution des formules chomage_net et retraite_nette)
               chomage_imposable + csg_imposable_chomage + crds_chomage
            + retraite_imposable + csg_imposable_retraite + crds_retraite + casa
            - csg_imposable_chomage
            - csg_deductible_chomage
            - csg_imposable_retraite
            - csg_deductible_retraite
            - crds_chomage
            - crds_retraite
= (après simplification des termes qui s'annulent)
               chomage_imposable
            + retraite_imposable + casa
            - csg_deductible_chomage
            - csg_deductible_retraite

On voit qu'on a casa qui se promène. Et effectivement après ta modif on retombe bien sur

revenus_remplacement_pensions_bruts_menage =
               chomage_imposable - csg_deductible_chomage
            + retraite_imposable - csg_deductible_retraite

C'est symétrique, et une dernière substitution nous amène bien à

revenus_remplacement_pensions_bruts_menage
= (par substitution des formules de chomage_imposable et retraite_imposable)
               chomage_brut + retraite_brute

Effectivement je ne comprends pas bien pourquoi on ne fait pas ce dernier calcul nettement plus simple !

Cela remonte à #1207 qui est assez récente, @bfabre01 tu peux éclairer notre lanterne là-dessus ?

@Morendil Morendil force-pushed the corrige-revenus-bruts branch from 1150ef6 to e7fb722 Compare February 23, 2019 16:15
@Morendil Morendil merged commit 8570010 into master Feb 23, 2019
@Morendil Morendil deleted the corrige-revenus-bruts branch February 23, 2019 16:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants