{"id":3898,"date":"2025-02-22T15:08:05","date_gmt":"2025-02-22T15:08:05","guid":{"rendered":"https:\/\/www.safavifinancial.com\/outils\/"},"modified":"2025-04-29T15:24:03","modified_gmt":"2025-04-29T15:24:03","slug":"outils","status":"publish","type":"page","link":"https:\/\/www.safavifinancial.com\/fr\/outils\/","title":{"rendered":"Outils"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3898\" class=\"elementor elementor-3898 elementor-3389\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1573483 e-flex e-con-boxed e-con e-parent\" data-id=\"1573483\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-652fed2 e-flex e-con-boxed e-con e-child\" data-id=\"652fed2\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f82e3f1 elementor-widget elementor-widget-heading\" data-id=\"f82e3f1\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Outils<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c00048b elementor-widget elementor-widget-heading\" data-id=\"c00048b\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4 class=\"elementor-heading-title elementor-size-default\">Restez \u00e0 l'\u00e9coute de nos prochains \u00e9v\u00e9nements passionnants<\/h4>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f7d9300 e-flex e-con-boxed e-con e-parent\" data-id=\"f7d9300\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-69118e2 e-flex e-con-boxed e-con e-parent\" data-id=\"69118e2\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-17e4156 elementor-widget elementor-widget-html\" data-id=\"17e4156\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"cl-rrsp-calculator\">\r\n  <h2>Calculateur d'\u00e9pargne-retraite pour les REER (Hypoth\u00e8ses Canada-Vie)<\/h2>\r\n\r\n  <div class=\"cl-rrsp-calc-wrapper\">\r\n    <!-- Left column: Form inputs -->\r\n    <div class=\"cl-rrsp-form\">\r\n      <form id=\"clRrspForm\">\r\n        <!-- Current Age -->\r\n        <div class=\"form-group\">\r\n          <label for=\"currentAge\">Quel \u00e2ge avez-vous ?<\/label>\r\n          <input type=\"number\" id=\"currentAge\" placeholder=\"par exemple, 32\" required=\"\">\r\n        <\/div>\r\n\r\n        <!-- Retirement Age -->\r\n        <div class=\"form-group\">\r\n          <label for=\"retirementAge\">\u00c0 quel \u00e2ge souhaitez-vous prendre votre retraite ?<\/label>\r\n          <input type=\"number\" id=\"retirementAge\" placeholder=\"par exemple, 64\" required=\"\">\r\n        <\/div>\r\n\r\n        <!-- Contribution Type (percentage vs. dollar) -->\r\n        <div class=\"form-group\">\r\n          <label>Comment contribuez-vous \u00e0 votre retraite aujourd'hui ?<\/label>\r\n          <label class=\"radio-label\">\r\n            <input type=\"radio\" name=\"contributionType\" value=\"pourcentage\" checked>\r\n Un pourcentage de votre revenu annuel\r\n <\/label>\r\n          <label class=\"radio-label\">\r\n            <input type=\"radio\" name=\"contributionType\" value=\"dollar\">\r\n Un montant en dollars\r\n <\/label> \r\n        <\/div>\r\n\r\n        <!-- Annual Income (only relevant for \"percentage\") -->\r\n        <div class=\"form-group percentage-only\">\r\n          <label for=\"annualIncome\">Quel est votre revenu annuel avant imp\u00f4ts ?<\/label>\r\n          <input type=\"number\" id=\"annualIncome\" placeholder=\"par exemple, 200000\">\r\n        <\/div>\r\n\r\n        <!-- Contribution percentage (shown if user chooses \"percentage\") -->\r\n        <div class=\"form-group percentage-only\">\r\n          <label for=\"contributionPercent\">Quel est le pourcentage de votre revenu annuel que vous versez ?<\/label>\r\n          <input type=\"number\" id=\"contributionPercent\" placeholder=\"par exemple, 2\" step=\"0.1\">\r\n        <\/div>\r\n\r\n        <!-- Contribution dollar (shown if user chooses \"dollar\") -->\r\n        <div class=\"form-group dollar-only\" style=\"display: none;\">\r\n          <label for=\"contributionDollar\">Quel est le montant de votre contribution annuelle ?<\/label>\r\n          <input type=\"number\" id=\"contributionDollar\" placeholder=\"par exemple, 5000\">\r\n        <\/div>\r\n\r\n        <!-- Pre-retirement rate of return -->\r\n        <div class=\"form-group\">\r\n          <label for=\"interestRate\">Taux de rendement avant la retraite (%)<\/label>\r\n          <input type=\"number\" id=\"interestRate\" placeholder=\"par exemple, 4\" step=\"0.1\" required=\"\">\r\n        <\/div>\r\n\r\n        <button type=\"submit\" class=\"cl-rrsp-calc-button\">Calculer<\/button>\r\n      <\/form>\r\n    <\/div>\r\n\r\n    <!-- Right column: Results -->\r\n    <div class=\"cl-rrsp-results\" id=\"clRrspResults\">\r\n      <h3>Voici vos r\u00e9sultats<\/h3>\r\n      <p>\r\n  Selon les hypoth\u00e8ses de la Canada-Vie, voici une estimation de la valeur de vos cotisations \u00e0\r\n au moment de la retraite et du revenu annuel\r\n qu'elles pourraient vous procurer pendant 25 ans.\r\n      <\/p>\r\n      <div class=\"results-breakdown\" id=\"resultsBreakdown\" style=\"display: none;\">\r\n        <p class=\"future-value\" id=\"futureValue\"><\/p>\r\n        <p class=\"annual-income\" id=\"annualIncomeRetirement\"><\/p>\r\n        <small class=\"disclaimer\">\r\n  *Hypoth\u00e8ses : Croissance annuelle du salaire de 2,5 % si vous choisissez le \"pourcentage\", cotisation fixe de\r\n dollars dans le cas contraire, d\u00e9p\u00f4ts annuels au d\u00e9but de chaque ann\u00e9e,\r\n 25 ans de retraite au taux de 5 % apr\u00e8s la retraite, et pas d'\u00e9pargne existante.\r\n Vos r\u00e9sultats r\u00e9els peuvent varier.\r\n        <\/small>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n  .cl-rrsp-calculator {\r\n    font-family: Arial, sans-serif;\r\n    max-width: 1000px;\r\n    margin: 20px auto;\r\n    padding: 20px;\r\n  }\r\n\r\n  .cl-rrsp-calc-wrapper {\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    gap: 40px;\r\n  }\r\n\r\n  .cl-rrsp-form,\r\n  .cl-rrsp-results {\r\n    flex: 1;\r\n    min-width: 300px;\r\n  }\r\n\r\n  .cl-rrsp-form form {\r\n    background: #f9f9f9;\r\n    padding: 20px;\r\n    border-radius: 8px;\r\n  }\r\n\r\n  .form-group {\r\n    margin-bottom: 20px;\r\n  }\r\n\r\n  .form-group label {\r\n    display: block;\r\n    font-weight: bold;\r\n    margin-bottom: 8px;\r\n  }\r\n\r\n  .form-group input[type=\"number\"] {\r\n    width: 100%;\r\n    padding: 8px;\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .radio-label {\r\n    display: block;\r\n    margin: 5px 0;\r\n    font-weight: normal;\r\n  }\r\n\r\n  .cl-rrsp-calc-button {\r\n    background-color: #8d0f13; \/* Red button like Canada Life's example *\/\r\n    color: #fff;\r\n    padding: 12px;\r\n    border: none;\r\n    border-radius: 4px;\r\n    cursor: pointer;\r\n    font-size: 16px;\r\n    width: 100%;\r\n  }\r\n\r\n  .cl-rrsp-calc-button:hover {\r\n    background-color: #b10d11;\r\n  }\r\n\r\n  .cl-rrsp-results {\r\n    background: #ffffff;\r\n    border: 1px solid #ececec;\r\n    border-radius: 8px;\r\n    padding: 20px;\r\n  }\r\n\r\n  .cl-rrsp-results h3 {\r\n    margin-top: 0;\r\n  }\r\n\r\n  .results-breakdown p {\r\n    font-size: 1.1em;\r\n    margin: 12px 0;\r\n  }\r\n\r\n  .future-value,\r\n  .annual-income {\r\n    font-weight: bold;\r\n  }\r\n\r\n  .disclaimer {\r\n    display: block;\r\n    margin-top: 10px;\r\n    font-size: 0.9em;\r\n    color: #555;\r\n  }\r\n<\/style>\r\n\r\n<script>\r\n  \/\/ Radio buttons for contribution type\r\n  const radioInputs = document.getElementsByName(\"contributionType\");\r\n\r\n  \/\/ Elements to show\/hide depending on selection\r\n  const percentElements = document.querySelectorAll(\".percentage-only\");\r\n  const dollarElements = document.querySelectorAll(\".dollar-only\");\r\n\r\n  \/\/ Toggle fields based on radio selection\r\n  radioInputs.forEach((radio) => {\r\n    radio.addEventListener(\"change\", () => {\r\n      if (radio.value === \"percentage\" && radio.checked) {\r\n        percentElements.forEach(el => el.style.display = \"block\");\r\n        dollarElements.forEach(el => el.style.display = \"none\");\r\n      } else if (radio.value === \"dollar\" && radio.checked) {\r\n        percentElements.forEach(el => el.style.display = \"none\");\r\n        dollarElements.forEach(el => el.style.display = \"block\");\r\n      }\r\n    });\r\n  });\r\n\r\n  \/\/ Main calculation\r\n  document.getElementById(\"clRrspForm\").addEventListener(\"submit\", function(e) {\r\n    e.preventDefault();\r\n\r\n    \/\/ Gather inputs\r\n    const currentAge = parseFloat(document.getElementById(\"currentAge\").value);\r\n    const retirementAge = parseFloat(document.getElementById(\"retirementAge\").value);\r\n    const preRetRate = parseFloat(document.getElementById(\"interestRate\").value) \/ 100;\r\n\r\n    if (retirementAge <= currentAge) { alert(\"Retirement age must be greater than current age.\"); return; } if (preRetRate <0) { alert(\"Please enter a valid (non-negative) pre-retirement rate of return.\"); return; } \/\/ Determine contribution type let contributionType = \"percentage\"; radioInputs.forEach((radio) => {\r\n      if (radio.checked) {\r\n        contributionType = radio.value;\r\n      }\r\n    });\r\n\r\n    \/\/ Prepare variables\r\n    const yearsToRetirement = retirementAge - currentAge;\r\n    let lumpsum = 0;\r\n    let annualContribution = 0;\r\n    let salary = 0;\r\n    let salaryGrowth = 0.0;\r\n\r\n    if (contributionType === \"percentage\") {\r\n      \/\/ If user picks \"A percentage of your annual income\"\r\n      salary = parseFloat(document.getElementById(\"annualIncome\").value) || 0;\r\n      const contributionPercent = parseFloat(document.getElementById(\"contributionPercent\").value) \/ 100 || 0;\r\n\r\n      \/\/ Canada Life assumption: 2.5% salary growth each year\r\n      salaryGrowth = 0.025;\r\n\r\n      \/\/ Loop over each year\r\n      for (let i = 1; i <= yearsToRetirement; i++) { \/\/ Calculate this year's contribution (percentage of salary) annualContribution = salary * contributionPercent; \/\/ Contribution at the BEGINNING of the year lumpsum += annualContribution; \/\/ Grow lumpsum for one year lumpsum *= (1 + preRetRate); \/\/ Increase salary by 2.5% for next year salary *= (1 + salaryGrowth); } } else { \/\/ If user picks \"A dollar amount\" annualContribution = parseFloat(document.getElementById(\"contributionDollar\").value) || 0; \/\/ The same dollar amount each year, no growth salaryGrowth = 0.0; \/\/ Loop over each year for (let i = 1; i <= yearsToRetirement; i++) { \/\/ Add the same annual contribution lumpsum += annualContribution; \/\/ Grow lumpsum for one year lumpsum *= (1 + preRetRate); } } \/\/ Now compute retirement income for 25 years at 5% const postRetRate = 0.05; const retirementYears = 25; let annualRetirementIncome = 0; \/\/ Payment formula: P = PV * [ r \/ (1 - (1+r)^(-n)) ] if (postRetRate> 0) {\r\n      annualRetirementIncome =\r\n        lumpsum *\r\n        (postRetRate \/ (1 - Math.pow(1 + postRetRate, -retirementYears)));\r\n    } else {\r\n      \/\/ If postRetRate = 0, just lumpsum \/ 25\r\n      annualRetirementIncome = lumpsum \/ retirementYears;\r\n    }\r\n\r\n    \/\/ Show results\r\n    document.getElementById(\"resultsBreakdown\").style.display = \"block\";\r\n    document.getElementById(\"futureValue\").innerHTML =\r\n      \"Your contributions in \" + yearsToRetirement + \" years could be: <strong>$\" +\r\n      lumpsum.toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 }) + \"<\/strong>\";\r\n\r\n    document.getElementById(\"annualIncomeRetirement\").innerHTML =\r\n      \"You could get an annual income for \" + retirementYears + \" years after retirement of: <strong>$\" +\r\n      annualRetirementIncome.toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 }) + \"<\/strong>\";\r\n  });\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Restez \u00e0 l&rsquo;\u00e9coute de nos prochains \u00e9v\u00e9nements passionnants Calculateur d&rsquo;\u00e9pargne-retraite pour les REER (Hypoth\u00e8ses Canada-Vie) Quel \u00e2ge avez-vous ? \u00c0 quel \u00e2ge souhaitez-vous prendre votre retraite ? Comment contribuez-vous \u00e0 votre retraite aujourd&rsquo;hui ? Un pourcentage de votre revenu annuel Un montant en dollars Quel est votre revenu annuel avant imp\u00f4ts ? Quel est le [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-3898","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/pages\/3898","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/comments?post=3898"}],"version-history":[{"count":2,"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/pages\/3898\/revisions"}],"predecessor-version":[{"id":3970,"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/pages\/3898\/revisions\/3970"}],"wp:attachment":[{"href":"https:\/\/www.safavifinancial.com\/fr\/wp-json\/wp\/v2\/media?parent=3898"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}