Simulateur 1 — Crédit Lombard & Effet de Levier Fiscal
Simulateur 1
Don par Crédit Lombard
Monétisez temporairement un portefeuille d’actifs nanti pour réaliser un don d’impact à l’ICM tout en conservant la propriété de vos titres et leur potentiel d’appréciation.
Configuration du prêt
Bilan financier du montage
sim = {
const p = perf / 100, n = duration;
const don = portfolio * ltv / 100;
const interets = don * rate / 100 * n;
const taux = regime.startsWith("IFI") ? 0.75 : regime.startsWith("IR") ? 0.66 : 0.60;
const brut = don * taux;
const plafond = regime.startsWith("IFI") ? 50000 : Infinity;
const economie = Math.min(brut, plafond);
// Épargne non mobilisée : le montant donné reste investi pendant toute la durée du prêt
const gainsPreserves = don * (Math.pow(1 + p, n) - 1);
const portage = gainsPreserves - interets; // gain net du montage vs don en cash
const effortCash = don - economie; // don classique financé par cession
const effortLombard = don - economie + interets - gainsPreserves;
// Patrimoine final dans les deux scénarios (économie d'impôt incluse)
const patriCash = (portfolio - don) * Math.pow(1 + p, n) + economie;
const patriLombard = portfolio * Math.pow(1 + p, n) - don - interets + economie;
// Trajectoire annuelle
const traj = [];
for (let y = 0; y <= n; y++) {
const g = Math.pow(1 + p, y);
traj.push({annee: y, scenario: "Don par cession de titres", valeur: (portfolio - don) * g});
traj.push({annee: y, scenario: "Don par crédit Lombard", valeur: portfolio * g - don - don * rate / 100 * y});
}
const seuil = (Math.pow(1 + rate / 100 * n, 1 / n) - 1) * 100; // perf. qui compense les intérêts
return {don, interets, economie, brut, plafonne: brut > plafond, gainsPreserves, portage,
effortCash, effortLombard, patriCash, patriLombard, traj, seuil};
}Montant du don ICM
Économie d’impôt
Gains sur l’épargne préservée
Intérêts du crédit
html`<div class="portage-box ${sim.portage >= 0 ? "pos" : "neg"}">
<div>
<div class="pb-title">Bilan du portage : gains préservés − intérêts</div>
<div class="pb-sub">${sim.portage >= 0
? "Votre épargne restée investie rapporte plus que le coût du crédit."
: `La performance ne couvre pas les intérêts : il faut au moins ${sim.seuil.toFixed(2)} %/an.`}</div>
</div>
<div class="pb-val">${sim.portage >= 0 ? "+" : ""}${fmt(sim.portage)}</div>
</div>
<div class="compare-grid">
<div class="cmp"><div class="cmp-h">Don classique (cession de titres)</div>
<div class="cmp-v">${fmt(sim.effortCash)}</div><div class="cmp-s">effort net · épargne mobilisée</div></div>
<div class="cmp best"><div class="cmp-h">Don par crédit Lombard</div>
<div class="cmp-v">${fmt(sim.effortLombard)}</div><div class="cmp-s">effort net · épargne intacte et investie</div></div>
</div>`sim.plafonne
? html`<div class="callout callout-style-simple callout-warning" style="padding:.75rem 1rem;font-size:.85rem">
<strong>Plafond IFI atteint :</strong> la réduction est limitée à 50 000 € par an
(réduction théorique : ${fmt(sim.brut)}). Envisagez d'étaler le don sur plusieurs années.</div>`
: html``Plot.plot({
height: 280,
marginLeft: 70,
style: {background: "transparent", fontSize: "12px"},
x: {label: null},
y: {grid: true, label: "€", tickFormat: (d) => (d / 1000) + " k€"},
marks: [
Plot.barY([
{poste: "Don versé", montant: sim.don, c: "#122238"},
{poste: "Économie d'impôt", montant: -sim.economie, c: "#10b981"},
{poste: "Gains épargne préservée", montant: -sim.gainsPreserves, c: "#2b6cb0"},
{poste: "Intérêts", montant: sim.interets, c: "#f59e0b"},
{poste: "Effort net Lombard", montant: sim.effortLombard, c: "#c5a059"}
], {x: "poste", y: "montant", fill: "c", rx: 6, sort: null, tip: true}),
Plot.ruleY([0])
]
})Plot.plot({
height: 260,
marginLeft: 70,
style: {background: "transparent", fontSize: "12px"},
color: {domain: ["Don par cession de titres", "Don par crédit Lombard"], range: ["#9ca3af", "#c5a059"], legend: true},
x: {label: "Années"},
y: {grid: true, label: "Patrimoine net (hors économie d'impôt)", tickFormat: (d) => (d / 1e6).toFixed(2) + " M€"},
marks: [
Plot.line(sim.traj, {x: "annee", y: "valeur", stroke: "scenario", strokeWidth: 3}),
Plot.dot(sim.traj, {x: "annee", y: "valeur", fill: "scenario", r: 3, tip: true})
]
})html`<div class="callout callout-style-simple callout-tip" style="padding:1rem 1.25rem;font-size:.9rem">
<strong>Lecture :</strong> l'ICM reçoit <strong>${fmt(sim.don)}</strong> dès aujourd'hui, sans que vous vendiez un seul titre.
Les ${fmt(sim.don)} restent investis et rapportent <strong>${fmt(sim.gainsPreserves)}</strong> en ${duration} an${duration > 1 ? "s" : ""},
face à ${fmt(sim.interets)} d'intérêts. À l'échéance, votre patrimoine atteint <strong>${fmt(sim.patriLombard)}</strong>
contre ${fmt(sim.patriCash)} avec un don classique, soit <strong>${sim.portage >= 0 ? "+" : ""}${fmt(sim.portage)}</strong>.<br>
<span style="color:#6b7280">Impact : environ <strong>${(sim.don / 80000).toFixed(1)} années</strong> de chercheur post-doctoral financées.</span>
</div>`Simulation pédagogique, hors frais de dossier, appels de marge et fiscalité des intérêts. Le remboursement du capital emprunté (in fine) reste dû à l’échéance. Performance supposée constante, nette de frais et avant fiscalité des plus-values ; un portefeuille en baisse peut entraîner un appel de marge.