{"id":586,"date":"2025-03-19T13:32:25","date_gmt":"2025-03-19T13:32:25","guid":{"rendered":"https:\/\/imbeaultprets.ca\/?page_id=586"},"modified":"2025-05-02T13:31:07","modified_gmt":"2025-05-02T13:31:07","slug":"calculatrice","status":"publish","type":"page","link":"https:\/\/imbeaultprets.ca\/en\/calculatrice\/","title":{"rendered":"Calculator"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"586\" class=\"elementor elementor-586\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d5e4e1f e-flex e-con-boxed e-con e-parent\" data-id=\"d5e4e1f\" 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-532b8da e-con-full e-flex e-con e-child\" data-id=\"532b8da\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-018974c elementor-widget elementor-widget-heading\" data-id=\"018974c\" 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<h2 class=\"elementor-heading-title elementor-size-default\">Our calculator<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-afa7a96 elementor-widget elementor-widget-text-editor\" data-id=\"afa7a96\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"89\" data-end=\"389\">Plan your real estate project with ease using our <strong data-start=\"154\" data-end=\"183\">mortgage calculator<\/strong>. Whether you want to <strong data-start=\"202\" data-end=\"311\">evaluate your monthly payments, estimate your borrowing capacity or compare different financing scenarios<\/strong>, this tool gives you a clear and rapid overview of your loan.<\/p><p data-start=\"391\" data-end=\"494\">\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8c2f918 elementor-view-default elementor-widget elementor-widget-icon\" data-id=\"8c2f918\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;none&quot;,&quot;_animation_delay&quot;:0}\" data-widget_type=\"icon.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-wrapper\">\n\t\t\t<div class=\"elementor-icon\">\n\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-arrow-right\" viewbox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\"><\/path><\/svg>\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a2b8fa4 elementor-widget__width-inherit elementor-invisible elementor-widget elementor-widget-html\" data-id=\"a2b8fa4\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"mortgage-calculator\" class=\"elementor-widget elementor-widget-container\">\r\n  <div id=\"calc-container\">\r\n    <form id=\"calc-form\" class=\"elementor-form\" action=\"\">\r\n      <h2 class=\"elementor-heading-title elementor-size-default\">Your settings<\/h2>\r\n      <!-- Revenu Annuel -->\r\n      <div class=\"elementor-field-group form-group\">\r\n        <label for=\"income\" class=\"elementor-field-label\">Annual income<\/label>\r\n        <input type=\"number\" id=\"income\" min=\"0\" placeholder=\"0\" class=\"elementor-field elementor-size-md\" value=\"10000\">\r\n      <\/div>\r\n      <!-- Mise de Fonds en montant uniquement -->\r\n      <div class=\"elementor-field-group form-group\">\r\n        <label class=\"elementor-field-label\">Capital outlay<\/label>\r\n        <div class=\"input-wrapper amount-wrapper\">\r\n          <span class=\"currency-symbol\">$<\/span>\r\n          <input type=\"number\" id=\"down-payment-amount\" min=\"0\" placeholder=\"Amount\" class=\"elementor-field elementor-size-md\" value=\"2000\">\r\n        <\/div>\r\n      <\/div>\r\n      <!-- Taux d'int\u00e9r\u00eat avec slider -->\r\n      <div class=\"elementor-field-group form-group\">\r\n        <label for=\"interest-rate\" class=\"elementor-field-label\">Interest rate (%)<\/label>\r\n        <div class=\"slider-input-container\">\r\n          <div class=\"input-wrapper interest-wrapper\">\r\n            <input type=\"number\" id=\"interest-rate\" min=\"0\" max=\"20\" step=\"0.01\" placeholder=\"0.00\" class=\"elementor-field elementor-size-md\" value=\"5.5\">\r\n            <span class=\"percent-symbol\">%<\/span>\r\n          <\/div>\r\n          <div class=\"input-wrapper\">\r\n            <input type=\"range\" id=\"interest-rate-range\" min=\"0\" max=\"20\" step=\"0.1\" class=\"elementor-field-slider\" value=\"5.5\">\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n      <!-- Amortissement -->\r\n      <div class=\"elementor-field-group form-group\">\r\n        <label for=\"amortization\" class=\"elementor-field-label\">Amortization<\/label>\r\n        <select id=\"amortization\" class=\"elementor-field elementor-size-md\">\r\n          <option value=\"1\">1 year<\/option>\r\n          <option value=\"2\">2 years<\/option>\r\n          <option value=\"3\">3 years<\/option>\r\n          <option value=\"4\">4 years<\/option>\r\n          <option value=\"5\">5 years<\/option>\r\n          <option value=\"6\">6 years<\/option>\r\n          <option value=\"7\">7 years<\/option>\r\n          <option value=\"8\">8 years<\/option>\r\n          <option value=\"9\">9 years<\/option>\r\n          <option value=\"10\">10 years<\/option>\r\n          <option value=\"11\">11 years<\/option>\r\n          <option value=\"12\">12 years<\/option>\r\n          <option value=\"13\">13 years<\/option>\r\n          <option value=\"14\">14 years<\/option>\r\n          <option value=\"15\">15 years<\/option>\r\n          <option value=\"16\">16 years<\/option>\r\n          <option value=\"17\">17 years<\/option>\r\n          <option value=\"18\">18 years<\/option>\r\n          <option value=\"19\">19 years<\/option>\r\n          <option value=\"20\">20 years<\/option>\r\n          <option value=\"21\">21 years<\/option>\r\n          <option value=\"22\">22 years<\/option>\r\n          <option value=\"23\">23 years<\/option>\r\n          <option value=\"24\">24 years<\/option>\r\n          <option value=\"25\" selected>25 years<\/option>\r\n          <option value=\"26\">26 years<\/option>\r\n          <option value=\"27\">27 years<\/option>\r\n          <option value=\"28\">28 years<\/option>\r\n          <option value=\"29\">29 years<\/option>\r\n          <option value=\"30\">30 years<\/option>\r\n        <\/select>\r\n      <\/div>\r\n      <button type=\"button\" id=\"calculate\" class=\"elementor-button elementor-button-link elementor-size-lg\">Calculate<\/button>\r\n    <input type=\"hidden\" name=\"trp-form-language\" value=\"en\"\/><\/form>\r\n  <\/div>\r\n\r\n  <div id=\"result-panel\" class=\"result-panel elementor-widget-container\">\r\n    <h3 class=\"result-title\">Your results<\/h3>\r\n    <div class=\"results-card\">\r\n      <div class=\"result-item\">\r\n        <label>Gross monthly income :<\/label>\r\n        <span id=\"monthlyIncome\">0$<\/span>\r\n      <\/div>\r\n      <div class=\"result-item\">\r\n        <label>Maximum monthly payment :<\/label>\r\n        <span id=\"maxMonthlyPayment\">0$<\/span>\r\n      <\/div>\r\n      <div class=\"result-item\">\r\n        <label>Maximum mortgage loan :<\/label>\r\n        <span id=\"maxLoanAmount\">0$<\/span>\r\n      <\/div>\r\n      <div class=\"result-item\">\r\n        <label>Maximum purchase price :<\/label>\r\n        <span id=\"eligiblePrice\">0$<\/span>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"contact-result\">\r\n      <button id=\"contact-broker\" class=\"elementor-button\">Contact a broker<\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n  \/* Styles g\u00e9n\u00e9raux *\/\r\n  #mortgage-calculator {\r\n    font-family: \"Montserrat\", sans-serif;\r\n    width: 100%;\r\n    margin: 0;\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    gap: 20px;\r\n    padding: 20px;\r\n    justify-content: center;\r\n    overflow-x: hidden;\r\n  }\r\n\r\n  #result-panel, #calc-container {\r\n    width: 100%;\r\n    padding: 20px;\r\n    box-sizing: border-box;\r\n    background-color: #fff;\r\n    color: var(--e-global-color-text, #000);\r\n    border-radius: 0;\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: 100%;\r\n  }\r\n\r\n  \/* Positionnement du bouton Contacter un courtier et Calculer en bas de leur conteneur *\/\r\n  #calc-form {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: 100%;\r\n  }\r\n  #calculate {\r\n    margin-top: auto;\r\n  }\r\n  .contact-result {\r\n    flex: 2;\r\n    display: flex;\r\n    flex-direction: column;\r\n    justify-content: flex-end;\r\n  }\r\n\r\n  @media (min-width: 768px) {\r\n    #result-panel, #calc-container {\r\n      width: 48%;\r\n      height: 85vh;\r\n    }\r\n  }\r\n\r\n  @media (max-width: 767px) {\r\n    #result-panel, #calc-container {\r\n      height: auto;\r\n    }\r\n  }\r\n\r\n  #calc-form h2, .result-title {\r\n    margin: 0 0 20px 0;\r\n    padding: 15px;\r\n    background-color: var(--e-global-color-primary, #0D2240);\r\n    color: #fff;\r\n    text-align: center;\r\n    border-radius: 0;\r\n  }\r\n\r\n  .elementor-field-label {\r\n    display: block;\r\n    margin-bottom: 8px;\r\n    font-weight: bold;\r\n    color: var(--e-global-color-primary, #0D2240);\r\n  }\r\n  .elementor-field {\r\n    width: 100%;\r\n    padding: 12px;\r\n    font-size: 16px;\r\n    border: 1px solid #ddd;\r\n    border-radius: 0;\r\n    margin-bottom: 15px;\r\n  }\r\n  .slider-input-container {\r\n    display: flex;\r\n    gap: 10px;\r\n  }\r\n  .amount-wrapper {\r\n    flex: 2;\r\n    position: relative;\r\n  }\r\n  .amount-wrapper .currency-symbol {\r\n    position: absolute;\r\n    left: 10px;\r\n    top: 21px;\r\n    transform: translateY(-50%);\r\n    color: var(--e-global-color-text, #000);\r\n    font-size: 16px;\r\n    text-align: center;\r\n    width: 20px;\r\n  }\r\n  .amount-wrapper input {\r\n    padding-left: 30px;\r\n  }\r\n  .percent-wrapper {\r\n    flex: 1;\r\n    position: relative;\r\n  }\r\n  .percent-wrapper .percent-symbol {\r\n    position: absolute;\r\n    right: 10px;\r\n    top: 21px;\r\n    transform: translateY(-50%);\r\n    color: var(--e-global-color-text, #000);\r\n    font-size: 16px;\r\n    text-align: center;\r\n    width: 20px;\r\n  }\r\n  .percent-wrapper input {\r\n    padding-right: 30px;\r\n  }\r\n  .interest-wrapper {\r\n    flex: 1;\r\n    position: relative;\r\n  }\r\n  .interest-wrapper .percent-symbol {\r\n    position: absolute;\r\n    left: 10px;\r\n    top: 21px;\r\n    transform: translateY(-50%);\r\n    color: var(--e-global-color-text, #000);\r\n    font-size: 16px;\r\n    text-align: center;\r\n    width: 20px;\r\n  }\r\n  .interest-wrapper input {\r\n    padding-left: 30px;\r\n  }\r\n  .input-wrapper {\r\n    flex: 3;\r\n  }\r\n  input[type=range].elementor-field-slider {\r\n    -webkit-appearance: none;\r\n    width: 100%;\r\n    height: 8px;\r\n    background: var(--e-global-color-primary, #0D2240);\r\n    outline: none;\r\n    margin: 15px 0;\r\n  }\r\n  input[type=range].elementor-field-slider::-webkit-slider-thumb {\r\n    -webkit-appearance: none;\r\n    width: 22px;\r\n    height: 22px;\r\n    background: var(--e-global-color-accent, #D6BE75);\r\n    cursor: pointer;\r\n    border-radius: 0;\r\n  }\r\n  input[type=range].elementor-field-slider::-moz-range-thumb {\r\n    width: 22px;\r\n    height: 22px;\r\n    background: var(--e-global-color-accent, #D6BE75);\r\n    cursor: pointer;\r\n    border-radius: 50%;\r\n  }\r\n  #calculate.elementor-button {\r\n    width: 100%;\r\n    padding: 12px;\r\n    font-size: 16px;\r\n    font-weight: 600;\r\n    background-color: #fff;\r\n    color: var(--e-global-color-primary, #0D2240);\r\n    border: 2px solid var(--e-global-color-primary, #0D2240);\r\n    border-radius: 0;\r\n    cursor: pointer;\r\n  }\r\n  #calculate.elementor-button:hover {\r\n    background-color: var(--e-global-color-accent, #D6BE75);\r\n    color: #fff;\r\n    border: 2px solid var(--e-global-color-accent, #D6BE75);\r\n  }\r\n  .results-card {\r\n    border-radius: 0;\r\n    flex: 1;\r\n  }\r\n  .result-item {\r\n    display: flex;\r\n    justify-content: space-between;\r\n    padding: 40px 15px;\r\n    margin: 20px 0;\r\n    background-color: rgba(0, 0, 255, 0.1);\r\n    color: var(--e-global-color-primary, #0D2240);\r\n  }\r\n  .result-item:last-child {\r\n    margin-bottom: 0;\r\n  }\r\n  .result-item:first-child {\r\n    margin-top: 0;\r\n  }\r\n  .result-item label {\r\n    font-weight: bold;\r\n    padding-top: 10px;\r\n  }\r\n  .result-item span {\r\n    font-size: 24px;\r\n    font-weight: bold;\r\n  }\r\n  #contact-broker {\r\n    width: 100%;\r\n    padding: 12px;\r\n    font-size: 16px;\r\n    font-weight: 600;\r\n    background-color: #fff;\r\n    color: var(--e-global-color-primary, #0D2240);\r\n    border: 2px solid var(--e-global-color-primary, #0D2240);\r\n    border-radius: 0;\r\n    cursor: pointer;\r\n    margin-top: 20px;\r\n    min-height: 59px;\r\n  }\r\n  #contact-broker:hover {\r\n    background-color: var(--e-global-color-accent, #D6BE75);\r\n    color: #fff;\r\n    border: 2px solid var(--e-global-color-accent, #D6BE75);\r\n  }\r\n\r\n  .elementor-field-group {\r\n    padding: 30px 0;\r\n  }\r\n\r\n  .elementor-field-label {\r\n    font-size: 21px;\r\n  }\r\n\r\n  .elementor-field {\r\n    border-radius: 0 !important;\r\n    border: 2px solid var(--e-global-color-primary, #0D2240) !important;\r\n  }\r\n<\/style>\r\n\r\n<script>\r\n  \/\/ Gestion du taux d'int\u00e9r\u00eat\r\n  function updateInterestFromSlider() {\r\n    document.getElementById(\"interest-rate\").value = document.getElementById(\"interest-rate-range\").value;\r\n  }\r\n\r\n  function updateInterestFromInput() {\r\n    document.getElementById(\"interest-rate-range\").value = document.getElementById(\"interest-rate\").value;\r\n  }\r\n\r\n  document.getElementById(\"interest-rate-range\").addEventListener(\"input\", updateInterestFromSlider);\r\n  document.getElementById(\"interest-rate\").addEventListener(\"input\", updateInterestFromInput);\r\n\r\n  \/\/ Fonction \u00e9quivalente \u00e0 VA\/PV (Present Value) d'Excel\r\n  function presentValue(rate, nper, pmt, fv = 0, type = 0) {\r\n    if (rate === 0) return -pmt * nper - fv;\r\n    const pvif = Math.pow(1 + rate, -nper);\r\n    let pv = -(pmt * (1 - pvif) \/ rate + fv * pvif);\r\n    if (type === 1) {\r\n      pv = pv \/ (1 + rate);\r\n    }\r\n    return pv;\r\n  }\r\n\r\n  \/\/ Calcul hypoth\u00e9caire complet\r\n  document.getElementById(\"calculate\").addEventListener(\"click\", function() {\r\n    \/\/ R\u00e9cup\u00e9ration des valeurs\r\n    const annualIncome = parseFloat(document.getElementById(\"income\").value) || 0;\r\n    const downPayment = parseFloat(document.getElementById(\"down-payment-amount\").value) || 0;\r\n    const interestRate = parseFloat(document.getElementById(\"interest-rate\").value) || 0;\r\n    const amortizationYears = parseInt(document.getElementById(\"amortization\").value) || 25;\r\n\r\n    \/\/ Constantes du mod\u00e8le\r\n    const compoundingsPerYear = 2; \/\/ Nombre de capitalisation C\/Y\r\n    const paymentsPerYear = 12;    \/\/ Nombre de versements par ann\u00e9e\r\n    const debtServiceRatio = 0.39; \/\/ Ratio d'amortissement de la dette (39%)\r\n\r\n    \/\/ Calculs\r\n    const monthlyIncome = annualIncome \/ 12;\r\n    const maxMonthlyPayment = monthlyIncome * debtServiceRatio;\r\n\r\n    const nominalRate = interestRate \/ 100;\r\n    const periodicRate = Math.pow(1 + nominalRate \/ compoundingsPerYear, compoundingsPerYear \/ paymentsPerYear) - 1;\r\n\r\n    const totalPayments = amortizationYears * paymentsPerYear;\r\n    const maxLoanAmount = presentValue(periodicRate, totalPayments, -maxMonthlyPayment, 0, 0);\r\n\r\n    const maxPurchasePrice = maxLoanAmount + downPayment;\r\n\r\n    \/\/ Affichage des r\u00e9sultats\r\n    document.getElementById(\"monthlyIncome\").textContent = `${monthlyIncome.toLocaleString('en-CA', { minimumFractionDigits: 2, maximumFractionDigits: 2 })} $`;\r\n    document.getElementById(\"maxMonthlyPayment\").textContent = `${maxMonthlyPayment.toLocaleString('en-CA', { minimumFractionDigits: 2, maximumFractionDigits: 2 })} $`;\r\n    document.getElementById(\"maxLoanAmount\").textContent = `${maxLoanAmount.toLocaleString('en-CA', { minimumFractionDigits: 2, maximumFractionDigits: 2 })} $`;\r\n    document.getElementById(\"eligiblePrice\").textContent = `${maxPurchasePrice.toLocaleString('en-CA', { minimumFractionDigits: 2, maximumFractionDigits: 2 })} $`;\r\n  });\r\n\r\n  \/\/ Redirection vers la page de contact\r\n  document.getElementById(\"contact-broker\").addEventListener(\"click\", function(e) {\r\n    e.preventDefault();\r\n    window.location.href = `${window.location.origin}\/contact\/`;\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>","protected":false},"excerpt":{"rendered":"<p>Notre calculatrice Planifiez votre projet immobilier en toute simplicit\u00e9 avec notre calculatrice hypoth\u00e9caire. Que ce soit pour \u00e9valuer vos mensualit\u00e9s, estimer votre capacit\u00e9 d\u2019emprunt ou comparer diff\u00e9rents sc\u00e9narios de financement, cet outil vous permet d\u2019obtenir une vision claire et rapide de votre pr\u00eat. \u00a0 Vos param\u00e8tres Revenu Annuel Mise de Fonds $ Taux d&rsquo;int\u00e9r\u00eat (%) [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-586","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/pages\/586","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/comments?post=586"}],"version-history":[{"count":21,"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/pages\/586\/revisions"}],"predecessor-version":[{"id":718,"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/pages\/586\/revisions\/718"}],"wp:attachment":[{"href":"https:\/\/imbeaultprets.ca\/en\/wp-json\/wp\/v2\/media?parent=586"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}