Comparez les prix crypto sur les exchanges et trouvez des opportunités
Nous ne notons pas les plateformes, ne leur attribuons aucun niveau de risque et ne suivons pas leurs règles. Avant de négocier, lisez les conditions de la plateforme : la disponibilité dans votre pays, les restrictions de transfert et les plafonds de retrait sont fixés par elle et changent sans préavis. Vérifiez l’agrément auprès de votre régulateur ou dans les registres publics : FCA · ESMA
Joindre une plateforme n’est pas la même chose qu’avoir le droit de l’utiliser. Elle peut répondre à chaque requête et refuser malgré tout un compte à quelqu’un avec votre passeport — ou en ouvrir un puis le restreindre plus tard, solde compris. L’argent déposé sur une plateforme lui appartient, pas à vous : pas de garantie des dépôts, pas de tribunal qui le rende vite. Avant de déplacer quoi que ce soit, ouvrez ci-dessous la liste de pays de la plateforme et lisez-la pour votre passeport et votre résidence, pas pour la région où se trouve votre connexion.
Pas de tableau de pays ici, volontairement : les règles changent tous les mois et diffèrent pour s’inscrire, déposer, négocier et retirer. Les liens mènent aux conditions de chaque plateforme.
Cinq plateformes — Gate.io, KuCoin, MEXC, Bitfinex et Crypto.com — répondent correctement à chaque requête mais n’envoient pas d’en-tête CORS, si bien que votre navigateur jette la réponse. C’est une règle interne au navigateur, pas un blocage réseau, et c’est pourquoi aucun VPN n’y a jamais rien changé. Le remède est un petit relais à vous qui ajoute l’en-tête manquant. C’est gratuit, cela prend environ deux minutes, et rien de ce que vous configurez ici n’est transmis à ce site.
Un compte gratuit autorise 100 000 requêtes par jour pour l’ensemble de vos workers, remises à zéro à 00:00 UTC. Un balayage complet de l’historique en consomme environ 1 900 ; le bot de démonstration à une minute d’intervalle, environ 7 000 par jour. Pour un usage normal, c’est très largement suffisant.
/**
* Crypto Exchange CORS + geo proxy — Cloudflare Worker
* ----------------------------------------------------
* Why: browsers block direct calls to exchange APIs (CORS), and some exchanges
* geo-block certain server IPs. This Worker runs on Cloudflare's network, adds
* CORS headers, and forwards the request (GET for market data, POST for P2P).
*
* This file is shown inside the tool itself, so anyone can run their own copy.
* Yours is yours: nothing here reports to the site, and the address you deploy
* to is stored only in your own browser.
*
* DEPLOY (free, no card, no CLI needed):
* 1. dash.cloudflare.com → Workers & Pages → Create → Start with Hello World
* 2. Deploy once, then Edit code, replace everything with THIS file, Deploy again.
* 3. Copy the address (https://something.workers.dev) and paste it into the
* tool, under "Your own proxy".
*
* A free account allows 100,000 requests a day across all your workers, which
* resets at 00:00 UTC. A full history sweep spends roughly 1,900 of them.
*
* USAGE:
* GET https://<worker>/?url=https://api.binance.com/api/v3/ticker/price
* POST https://<worker>/?url=https://p2p.binance.com/bapi/c2c/v2/friendly/c2c/adv/search
* (with a JSON body — used for P2P ad search)
*/
const ALLOWED_HOSTS = new Set([
// Spot market data
'api.binance.com',
'api.exchange.coinbase.com',
'api.kraken.com',
'api.gemini.com',
'www.bitstamp.net',
'api.crypto.com',
'api.bybit.com',
'www.okx.com',
'api.okx.com',
'api.kucoin.com',
'api.gateio.ws',
'api-cloud.huobi.pro', // HTX
'api.huobi.pro',
'api.mexc.com',
'api-pub.bitfinex.com',
'api.coingecko.com', // aggregated fallback
// P2P (POST endpoints)
'p2p.binance.com',
'api2.bybit.com',
'www.okx.com', // OKX P2P shares the host (already listed)
'www.bitget.com',
'api.bitget.com',
]);
const CORS = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET, POST, OPTIONS',
'Access-Control-Allow-Headers': 'Content-Type',
};
export default {
async fetch(request) {
if (request.method === 'OPTIONS') return new Response(null, { status: 204, headers: CORS });
if (request.method !== 'GET' && request.method !== 'POST') {
return json({ error: 'Method not allowed' }, 405);
}
const target = new URL(request.url).searchParams.get('url');
if (!target) return json({ error: 'Missing ?url=' }, 400);
let parsed;
try { parsed = new URL(target); } catch { return json({ error: 'Bad url' }, 400); }
if (parsed.protocol !== 'https:' || !ALLOWED_HOSTS.has(parsed.hostname)) {
return json({ error: 'Host not allowed' }, 403);
}
const isPost = request.method === 'POST';
const init = {
method: request.method,
headers: {
'Accept': 'application/json',
'User-Agent': 'Mozilla/5.0 (simplytoolz-proxy)',
},
};
if (isPost) {
init.headers['Content-Type'] = 'application/json';
init.body = await request.text(); // forward the JSON body verbatim
} else {
// Only GET responses are edge-cached; P2P/POST must stay fresh.
init.cf = { cacheTtl: 5, cacheEverything: true };
}
try {
const upstream = await fetch(parsed.toString(), init);
const body = await upstream.text();
return new Response(body, {
status: upstream.status,
headers: {
...CORS,
'Content-Type': 'application/json',
'Cache-Control': isPost ? 'no-store' : 'public, max-age=5',
},
});
} catch (e) {
return json({ error: 'Upstream fetch failed', detail: String(e) }, 502);
}
},
};
function json(obj, status) {
return new Response(JSON.stringify(obj), { status, headers: { ...CORS, 'Content-Type': 'application/json' } });
}
Les cours des cryptomonnaies sont volatils et la perte totale est possible. Les chiffres sont des estimations : ils n'incluent ni le slippage, ni les délais réseau, ni les limites des plateformes. Ceci n'est ni un conseil financier ou en investissement, ni une recommandation d'achat ou de vente. Avertissement complet
L’outil compare 11 plateformes sur les 200 paires les plus liquides. Vous n’avez rien à configurer pour obtenir un premier résultat.
Le gain net déduit déjà deux frais de transaction et les frais de retrait. L’écart brut paraît toujours meilleur que ce qu’il vous reste.
Une paire au volume 24 h minuscule n’a pas de liquidité : votre propre ordre déplace le prix et le gain s’évapore. Le côté trop fin est surligné en ambre.
C’est un bouton par ligne. Il parcourt le carnet d’ordres réel des deux plateformes et recalcule le gain pour VOTRE montant, glissement compris (slippage). Des opérations qui semblaient à +13 % ressortent souvent négatives.
Avant tout envoi, ouvrez les deux plateformes et vérifiez que dépôts et retraits sont ouverts pour cette crypto et qu’elles utilisent le même réseau. Un retrait gelé est la façon classique de se retrouver coincé avec une crypto qui baisse.
Les traders expérimentés n’attendent jamais un transfert : ils gardent des cryptos sur une plateforme et des USDT sur l’autre, vendent et achètent au même instant, puis rééquilibrent plus tard. Un transfert prend des minutes — l’écart vit généralement quelques secondes.
Choisissez celle qui correspond au risque que vous acceptez et à la vitesse dont vous avez besoin.
Ouvrez des comptes sur deux grandes plateformes, passez la vérification et répartissez votre capital : des USDT sur l’une, la même valeur dans une crypto liquide (BTC/ETH/SOL) sur l’autre. Quand le scanner affiche un écart, vous vendez et achetez simultanément — sans transfert ni attente.
Dans le sélecteur de cryptos, basculez la puce de cotation sur BTC ou ETH. L’écart se mesure alors dans cette crypto : chaque opération bouclée vous laisse plus de BTC plutôt que plus d’USDT. Même mécanique que le scénario 1, unité de compte différente.
Ouvrez l’onglet Historique et regardez deux semaines en arrière: il montre quelle crypto et quelle paire de plateformes a ouvert une fenêtre le plus souvent. Placez vos fonds précisément sur ces deux plateformes au lieu de deviner, puis surveillez cette route en direct.
Retour au réel : au-delà de quelques pour cent sur des cryptos liquides, un écart est presque toujours un piège — crypto suspendue, retrait gelé ou carnet trop fin pour être rempli. Le filtre de sécurité les masque par défaut ; l’avantage honnête en arbitrage est petit, fréquent et rapide, pas spectaculaire.
Le bot négocie sur le papier contre des carnets d’ordres réels. Il existe pour répondre honnêtement à une seule question : à quoi ces écarts aboutissent-ils vraiment sur une journée ? Pas de clés d’API, pas de compte, pas d’argent — il ne peut pas passer un ordre réel, même si vous le vouliez.
Choisissez deux plateformes ou plus et un solde virtuel pour chacune. Le bot garde une réserve sur chaque plateforme — de l’USDT d’un côté, la pièce de l’autre — parce que c’est la seule façon pour un particulier d’exécuter les deux jambes en même temps au lieu d’attendre un transfert.
Automatique rejoue les 14 derniers jours et retient les routes où une fenêtre est apparue le plus souvent, puis achète lui-même le stock de départ. Je choisis moi-même vous laisse nommer la pièce, la plateforme et le montant — tapez 0,1 ETH sur Binance et l’USDT de cette plateforme baisse de sa valeur actuelle.
La taille décide de la profondeur à laquelle chaque aller-retour entame le carnet d’ordres. La latence est la pause entre le repérage d’une fenêtre et son exécution — le bot attend, puis revalorise de zéro. Mettez 0 et vous obtenez une fiction ; 2 à 5 secondes ressemblent davantage à un humain devant un navigateur.
Le bot analyse ses routes à l’intervalle que vous fixez. Il ne tourne que tant que cet onglet est ouvert — le fermer arrête l’horloge. Le compteur « Temps de fonctionnement » indique combien de temps il a réellement travaillé, de sorte qu’un résultat n’est jamais confondu avec une journée entière.
Le chiffre intéressant, c’est le nombre de fois où le bot a dit non. le carnet a rendu l’écart trop mince, ⏱ la fenêtre s’est refermée pendant le délai, plus de pièces sur la plateforme de vente, un transfert de rééquilibrage était nécessaire. La plupart des jours, ces refus écrasent les opérations exécutées — c’est la vraie forme de l’arbitrage.
Chaque décision atterrit dans le journal avec les deux prix, les deux frais et les plateformes. Exportez-le en CSV et vérifiez n’importe quelle ligne à la main sur la plateforme. Si un chiffre paraît trop beau, il l’est probablement — et le journal vous montrera pourquoi il a été refusé.
Le calculateur compare les prix spot en direct d’une même crypto sur une douzaine de plateformes et montre où elle est moins chère et où elle est plus chère. Il ne s’arrête pas à l’écart brut : deux frais de transaction et les frais de retrait de la blockchain sont retirés d’emblée, si bien que le chiffre affiché correspond à ce qui resterait réellement dans votre poche.
Ce qui le distingue de la plupart des scanners gratuits, c’est la vérification par carnet d’ordres. Un prix de ticker n’est que le tout premier niveau du carnet, souvent un unique ordre minuscule. Après chaque analyse, l’outil parcourt le carnet réel des deux plateformes et recalcule l’opération pour votre montant. Les lignes qui s’avèrent perdantes sont masquées, avec la perte affichée si vous demandez à les voir. Un « +13 % » qui devient −2 % après le parcours du carnet, c’est la norme et non l’exception.
Tout fonctionne dans votre navigateur. Aucune clé API, aucune connexion de compte, aucun trading automatique : l’outil trouve et vérifie les opportunités, vous les exécutez vous-même sur la plateforme. Vos réglages et vos ensembles de cryptos restent dans le stockage de votre navigateur.
Les prix proviennent des points d’accès publics des plateformes ci-dessous. Chacune peut être désactivée dans les réglages, mais chaque plateforme coupée réduit le nombre de paires disponibles simultanément sur deux plateformes — précisément ce dont l’arbitrage a besoin.
Le carnet le plus profond du marché. Frais taker 0,1 %, et 25 % de moins si les frais sont payés en BNB. Accès restreint dans certaines régions.
Très liquide, taker 0,1 %. Partenaire fréquent de Binance sur une même paire, d’où sa présence régulière dans les routes.
Taker 0,1 %, large référencement d’altcoins. Souvent la jambe de vente pour les cryptos listées plus tard que sur Binance.
Le plus large référencement de petites cryptos : c’est là que vivent les écarts les plus larges, en même temps que les carnets les plus fins.
Taker 0,1 %, remise en payant en KCS. Solide sur les cryptos de capitalisation moyenne.
Taker 0,1 %, remise en BGB. Souvent la jambe d’achat sur les listings récents.
Frais nuls ou quasi nuls sur de nombreuses paires et un très grand nombre de listings. Ici, c’est surtout le retrait qu’il faut vérifier avant de trader.
Plateforme historique, taker 0,2 %. Ses prix peuvent retarder sur les leaders — et c’est ce retard qui crée l’écart.
Plateformes régulées avec marchés en USD. Frais plus élevés et carnets plus fins, mais des prix qui évoluent indépendamment des géants asiatiques.
Complètent le tableau sur les grandes cryptos. Utiles surtout comme deuxième jambe d’une route, pas comme première.
Tous les types d’arbitrage ne méritent pas l’attention d’un particulier. Voici la comparaison honnête, y compris ceux que cet outil n’implémente délibérément pas.
| Type | Comment ça marche, et si cela vaut votre temps |
|---|---|
| Inter-plateformes (cet outil) | Acheter la crypto là où elle est bon marché et la vendre là où elle est chère. Le seul type offrant un avantage exploitable en manuel : les fenêtres durent de quelques secondes à quelques minutes et se répètent sur les mêmes routes. Risque principal : le transfert entre plateformes — c’est pour l’éviter qu’existe l’approche avec des fonds des deux côtés. |
| Triangulaire (une plateforme) | Un cycle USDT → A → B → USDT au sein d’une seule plateforme. Élégant en théorie : pas de transfert, trois frais. En pratique, les bots teneurs de marché referment ces cycles en millisecondes ; une rétrospective de deux semaines sur les grandes plateformes ne trouve généralement pas une seule heure où le cycle clôturait dans le vert après frais. Inutile de l’attendre. |
| P2P | Acheter des USDT à un marchand et les revendre à un autre. L’écart paraît large, mais c’est une prime de risque et non de l’argent facile : conditions strictes des annonces, risque de gel du compte bancaire et 15 à 40 minutes par cycle. Au sein d’une même plateforme, c’est mathématiquement impossible : on achète toujours plus cher qu’on ne vend. |
| Funding / futures | Détenir du spot contre un short sur perpétuel pour encaisser le funding. C’est plutôt un carry trade qu’un arbitrage : revenu faible et régulier, mais il faut de la marge, une surveillance de la liquidation et un capital nettement plus important. |
| Statistique | Parier sur le retour à la moyenne de la corrélation historique de deux cryptos. Ce n’est pas de l’arbitrage au sens sans risque : c’est une position directionnelle avec tous les risques habituels. |
Un écart brut de 2 % n’est pas un gain de 2 %. Chaque poste ci-dessous s’en retranche, et de façon successive, non additive :
Les quatre premiers postes sont déduits automatiquement. Les deux derniers vous incombent : avant tout envoi, ouvrez les deux plateformes et vérifiez que dépôts et retraits sont ouverts pour cette crypto et sur le même réseau.
Tout ce que l’outil affiche découle de ces expressions. Aucun coefficient magique, aucune marge cachée.
écart% = (prix_vente − prix_achat) / prix_achat × 100 La différence brute entre le ask de la plateforme bon marché et le bid de la plateforme chère. C’est là que s’arrêtent la plupart des scanners.
cryptos = (montant − montant × frais_achat) / ask
recette = (cryptos − frais_retrait) × bid
net = recette − recette × frais_vente − montant La route complète : acheter au ask, payer les frais d’achat, envoyer la crypto diminuée des frais réseau, vendre au bid, payer les frais de vente. Les frais de chaque jambe proviennent de sa propre plateforme : une remise en token ne s’applique donc que là où elle existe.
VWAP = Σ(prix_i × volume_i) / Σ(volume_i)
tant que Σ(prix_i × volume_i) < votre montant Plutôt que le meilleur prix, l’outil parcourt les niveaux du carnet réel jusqu’à couvrir votre montant et prend la moyenne pondérée par les volumes. C’est le prix que vous obtiendriez vraiment.
glissement% = (VWAP − meilleur_prix) / meilleur_prix × 100 De combien l’exécution réelle est moins bonne que la vitrine. Augmente avec votre taille, diminue avec la profondeur du carnet.
carnet% = (ask − bid) / ((ask + bid) / 2) × 100 Un écart supérieur à 1 % signifie que personne ne traite cette paire. Le filtre de sécurité masque ces lignes par défaut.
fréquence% = heures_avec_fenêtre / heures_comparées × 100 Les clôtures horaires des deux plateformes sont alignées par horodatage et l’écart net est recalculé pour chaque heure. Une route qui a payé 64 heures sur 168 est une habitude ; une qui a payé deux fois est du bruit.
Gardez des USDT sur l’une et la même valeur en crypto sur l’autre. Quand une fenêtre s’ouvre, vous vendez et achetez dans la même seconde au lieu d’attendre un transfert.
Basculez la puce de cotation sur BTC et l’écart se mesure en bitcoin. Chaque aller-retour bouclé vous laisse plus de BTC plutôt que plus de stablecoin.
L’onglet Historique rejoue deux semaines et montre quelle crypto et quelle paire de plateformes a ouvert une fenêtre le plus souvent. Le capital se place là où le disent les données, pas le chat.
Un canal annonce « +9 % sur XYZ ». Ajoutez la crypto à votre ensemble, lancez l’analyse, et la vérification par carnet recalcule l’opération pour votre montant.
A: Sur les grandes cryptos, il a pratiquement disparu : les bots referment ces écarts en millisecondes. Il reste au particulier les cryptos de capitalisation moyenne, les listings récents et le décalage de prix entre les grandes plateformes asiatiques et les plateformes régulées en dollars. L’avantage honnête est petit, fréquent et rapide : des fractions de pourcent plusieurs fois par jour, pas des opérations spectaculaires.
A: L’arbitrage exige la MÊME paire sur au moins deux des plateformes sélectionnées. La plupart des cryptos n’existent que sur une seule, si bien que sur environ deux mille paires, seules quelques centaines sont exploitables. Activer davantage de plateformes augmente ce nombre, et la note sous les résultats l’indique toujours explicitement.
A: Parce que la vérification par carnet l’a recalculée pour votre montant et le résultat était négatif. Le prix du ticker est le sommet du carnet, parfois un seul ordre de quelques dollars. Cliquez sur « Les afficher quand même » dans la note pour voir les lignes retirées avec leur perte réelle.
A: Non. L’outil ne lit que des points d’accès publics de prix et ne demande jamais de clés, d’identifiants ni de dépôts. Il ne peut pas passer d’ordres : vous les exécutez vous-même sur la plateforme. Réglages et ensembles de cryptos restent dans votre navigateur.
A: Les frais de retrait sont fixes en crypto et dominent donc les petites opérations : 2 $ de réseau font 2 % de 100 $ mais 0,1 % de 2 000 $. En dessous d’environ 500 $, les coûts avalent la plupart des routes. L’approche avec des fonds des deux côtés ne paie aucun frais réseau : c’est pourquoi on commence généralement par là.
A: Un retrait suspendu. Vous achetez la crypto, lancez le transfert, et la plateforme ferme le réseau pour maintenance ou retrait de la cote : vous restez avec un actif qui baisse. Avant tout envoi, vérifiez toujours que dépôts et retraits sont ouverts des deux côtés et sur le même réseau.
A: Le filtre de sécurité écarte les routes quasi certainement inexécutables : pas de carnet actif, écart bid-ask supérieur à 1 %, volume inférieur à 3 000 $, écart supérieur à 15 % (souvent une crypto suspendue ou retirée) et gain net inférieur à 0,3 %. Vous pouvez l’ouvrir dans les réglages, désactiver certaines règles, puis tout remasquer d’un clic.
A: La saturation indique le volume sur 24 heures : plus le marché est actif, plus le violet est dense. Les seuils sont des percentiles des cryptos réellement chargées, si bien que les leaders sont toujours les plus lumineux, quel que soit le nombre de plateformes ayant répondu. Le survol d’une tuile affiche le chiffre exact.
A: Oui. Au-dessus du champ des cryptos, basculez la puce de cotation sur BTC ou ETH. L’outil affiche alors les cryptos cotées dans cet actif et y mesure l’écart : un aller-retour bouclé augmente donc votre stock de cette crypto.
A: Parce qu’une rétrospective de deux semaines sur les grandes plateformes ne trouve pas d’heures où le cycle clôturait dans le vert après frais : les bots teneurs de marché les referment en millisecondes. Un mode qui n’affiche jamais rien ne ferait que faire perdre du temps ; il a donc été retiré plutôt que laissé en décoration.