
stake_amount="unlimited" ré‑investit 100 % du capital disponible après chaque gain. Fantastique quand la série est verte, impitoyable dès qu’elle se retourne. Voici comment l’utiliser (ou pas) sans pulvériser notre limite de ‑35 % de drawdown.
1️⃣ Rappel express sur stake_amount ⚙️
Dans Freqtrade, stake‑amount="unlimited" signifie : « Mise tout ce qui est disponible sur la position (y compris les gains). »
Vu sur un backtest, c’est grisant : chaque trade gagnant augmente la taille de la mise suivante et la courbe de capital accélère.
Mais en live, une seule série de pertes peut ravaler tous les gains précédents – pire, descendre plus bas que votre capital initial.
L’illustration ci‑dessus compare deux bots identiques (même stratégie) :
Orange : stake‑amount fixe (100 $)
Noir : stake‑amount="unlimited"
Deux conclusions sautent aux yeux :
La version “unlimited” grimpe plus vite…
…mais chute plus profond, passant instantanément sous le seuil de départ après un seul trade rouge.
Stake fixe (
"50","100"…)👉 chaque trade garde la même taille. Pas de compounding. Parfait pour petits comptes, phase de test ou budget serré.
Stake
"unlimited":👉 chaque trade mise tout le solde libre ➡️ la position gonfle après chaque gain. Réservé aux comptes déjà capitalisés et aux stratégies éprouvées.
💡 Avec
"unlimited", Freqtrade divise le solde parmax_open_trades. Les profits grossissent mécaniquement la taille des trades suivants et les pertes diminuent la taille des trades suivants.
On réalise généralement des backtests sur plusieurs années pour tester une stratégie, donc on ne se rend pas compte de l'aspect néfaste à la baisse du "unlimited".
2️⃣ Pourquoi c’est tentant… et dangereux 🧨
🚀 Effet boule de neige : le capital grimpe vite en marché haussier. (levier interne : chaque gain grossit la mise suivante.)
📈 CAGR boosté en backtest : compounding + longues tendances = courbe « hockey stick ».
😱 Mais : une seule série de pertes peut effacer tous les gains et entamer le capital initial (GitHub regorge de témoignages).
En live → vous subirez le fait que le marché alterne hausses et baisses → la première baisse rend vos gains… volatiles 🕊️
En backtest → Biais de confirmation inévitable : sur un backtest long, on retient surtout les phases haussières (voir cet article pour en savoir plus sur les biais que vous pouvez rencontrer)
💡 Souvenez-vous de ce que nous avons vu dans cet article : « Surperformer… mais pour combien de temps ? » : Yrile & Xavier Delmas nous rappellent qu’on finit tôt ou tard par rendre nos gains au marché si on aborde une autre approche que l'investissement passif, justement parce qu'en trading on fini toujours par utiliser des équivalents du
stake_amount="unlimited".Heureusement, si vous décidez de céder à la gourmandise, il existe des moyens de se protéger.
3️⃣ 🎯 : rester sous ‑35 % de DD
Les Règles d’or rappellent qu’un drawdown de ‑35 % est déjà énorme. Avec "unlimited", un flash‑crash crypto peut le toucher en quelques heures. (...et on s'en souvient longtemps 😭)
Exemple : BTC mai 2021 👀 –30 % en une journée. Sans stop‑loss + stake illimité ➡️ gains de l’année envolés … et capital ponctionné, le tout en une journée, alors que vos bots surperforment depuis des mois. Ca va très très vite.
4️⃣ Utiliser “unlimited” malgré tout : les garde‑fous indispensables ✅
🛑 Drawdown profond ?
Fixez un stop‑loss serré →
stoploss = -0.15(éviter –90 %)🎲 Exposition mono‑pair ?
Augmentez
max_open_trades(ex. 10, 15, 20) pour diversifier et lisser le risque💡 Attention : multiplier les positions ne suffira pas si tout le marché décroche en même temps ; la corrélation est votre ennemie.
🧢 Et si on ne misait qu'un petit peu ?
Limiter
tradable_balance_ratiodansconfig.jsonva vous permettre de n'utiliser qu'une portion de tout votre capital, vous aurez donc un effet boule de neige malgré tout puisque les gains seront réutilisés mais vous vous protégez contre les crashs puisque une partie de vos gains sont préservés (ex :tradable_balance_ratio=0.3).⚠️ Pour des raisons que j'ignore, il arrive parfois que
tradable_balance_ratione fonctionne pas en live.Pour palier à ce problème, voici comment j'adapte le code de ma stratégie :
stake_amount = "unlimited" def custom_stake_amount(self, pair: str, current_time: datetime, current_rate: float, proposed_stake: float, min_stake: Optional[float], max_stake: float, **kwargs) -> float: cfg = self.config ratio = cfg.get("tradable_balance_ratio", 1.0) # ex. 0.35 max_trades = cfg.get("max_open_trades", 1) # ex. 8 start_cap = self.wallets.get_total_stake_amount() # ex. 200 stake = (start_cap * ratio) / max_trades # ex. 200×0.35/8 = 8.75 min_stake=15 if min_stake: stake = max(stake, min_stake) stake = min(stake, max_stake) if self.dp.runmode.value not in ("backtest", "hyperopt"): logger.info(f"Custom stake amount: ratio={ratio}, max_trades={max_trades}, start_cap={start_cap}, stake={stake}") return stake🔧 Variabilité extrême ?
Implémentez
adjust_stake_amount()ou modifiercustom_stake_amount()pour plafonner dynamiquement la mise selon les indicateurs (volatilité, volume, solde, etc.)
5️⃣ L’alternative zen : stake‑amount fixe
Courbe moins explosive, mais plus robuste.
Drawdown mécaniquement plafonné : –10 % du marché ≠ –10 % du solde si vos gains précédents restent protégés.
Idéal pour les petits capitaux et la phase d’apprentissage.
Quand préférer un stake fixe ? 🛟
💸 Capital < 1 000 $ : priorité à l’apprentissage, pas au rendement maximum.
🆕 Stratégie neuve ou ⏳ dry‑run.
🌪️ Volatilité extrême (micro‑caps, annonces macro, week‑end crypto).
📊 Reporting / besoin de prévisibilité.
6️⃣ Plan d’action 🚧
🔍 Backtest les deux options sur la même période (testez stake-amount fixe et stake-amount "unlimited"). Analysez la distribution des drawdowns, pas seulement le CAGR.
🧪 Dry‑run 2‑4 semaines avec
"unlimited"+ garde‑fous.🔎 Live : surveille le DD. Dès qu’il dépasse ‑35 % ➡️ coupe, repasse en stake fixe, re‑calibre.
📒 Journalise chaque changement (Git + notes) pour garder l’historique.
7️⃣ Conclusion 💡
stake_amount="unlimited" est une option avancée, pas la config par défaut.
Bien maîtrisée, elle accélère la croissance du capital. Mal gérée, elle confirme la prophétie d’Yrile & Xavier Delmas 😅 : « Les gains finissent par retourner au marché ».
Ne laissez pas la chance décider ; imposez‑vous des limites claires.
« Better be safe than sorry ».
Post gratuit
Ceci n'est pas un conseil en investissement.
Testez, mesurez, adaptez… et gardez toujours un œil sur votre risque !
Si ce post t’a aidé, partage‑le 👉 ça fait progresser la communauté Freqtrade France sans brûler son capital 🔥

