Il existe trois façons d'afficher en permanence l'état de Binance dans la barre des menus de macOS : premièrement, via l'icône de la barre des menus intégrée au client officiel Binance (activée par défaut, elle affiche une petite icône en haut à droite sur laquelle vous pouvez cliquer pour voir votre compte et les notifications) ; deuxièmement, en utilisant SwiftBar/BitBar pour afficher les prix en temps réel de manière personnalisée ; troisièmement, en utilisant des scripts xbar pour récupérer les données via l'API. Chaque méthode a ses propres scénarios d'application. Le client officiel peut être obtenu sur le site officiel de Binance ; si vous souhaitez également consulter l'état sur votre mobile, cliquez sur l'application officielle Binance pour la télécharger. Cet article présente les étapes complètes et des exemples de scripts pour ces trois solutions.
I. Pourquoi afficher l'état dans la barre des menus ?
- Consulter les cours sans changer d'application, tout en restant concentré sur votre travail actuel ;
- Recevoir des notifications instantanées lors de l'exécution d'un ordre, pour ne pas manquer vos objectifs de profit ou de stop-loss ;
- Juger d'un coup d'œil de la qualité de la connexion pour savoir si vous êtes déconnecté ;
- Faire défiler plusieurs paires de devises pour économiser de l'espace sur l'écran.
L'espace de la barre des menus sur Mac est limité (particulièrement sur les MacBook à encoche), il est donc essentiel de privilégier un contenu concis.
II. Solution 1 : Icône de barre des menus intégrée au client Binance
Activation
Elle est activée par défaut. Si vous ne la voyez pas :
- Ouvrez le client Binance → Paramètres (
Command+,) ; - Général → Icône de la barre des menus ;
- Cochez « Afficher Binance dans la barre des menus ».
Cliquer sur l'icône pour dérouler
Cliquer sur l'icône Binance dans la barre des menus ouvre une petite fenêtre affichant par défaut :
- Le compte actuellement connecté ;
- Les 3 dernières notifications ;
- L'actif total du compte (peut être masqué/affiché) ;
- L'état de la connexion (latence en ms) ;
- Actions rapides : Ouvrir le client, Verrouiller, Quitter.
Activer/Désactiver des éléments spécifiques
Paramètres du client → Barre des menus → Vous pouvez cocher :
- Afficher les actifs
- Afficher le point rouge de notification
- Afficher la latence
- Afficher les prix simplifiés (choix de 3 paires de devises)
III. Solution 2 : Scripts personnalisés avec SwiftBar
SwiftBar est un outil open-source pour la barre des menus ; toute sortie de script peut y être affichée.
Installation
brew install --cask swiftbar
Ou téléchargez le fichier dmg depuis le site officiel de SwiftBar.
Définir le répertoire des scripts
Au premier lancement, SwiftBar vous demandera de choisir un répertoire pour les scripts. Le chemin habituel est : ~/SwiftBar.
Exemple 1 : Afficher le prix du BTC en temps réel
Créez le fichier ~/SwiftBar/btc-price.30s.sh (le 30s dans le nom signifie un rafraîchissement toutes les 30 secondes) :
#!/bin/bash
price=$(curl -s 'https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT' | sed 's/.*"price":"\([0-9.]*\)".*/\1/')
echo "BTC \$${price%.*}"
Enregistrez et rendez-le exécutable avec chmod +x ~/SwiftBar/btc-price.30s.sh.
Exemple 2 : Défilement de plusieurs paires
#!/bin/bash
# ~/SwiftBar/binance-ticker.15s.sh
symbols=("BTCUSDT" "ETHUSDT" "SOLUSDT" "BNBUSDT")
output=""
for s in "${symbols[@]}"; do
p=$(curl -s "https://api.binance.com/api/v3/ticker/price?symbol=$s" | sed 's/.*"price":"\([0-9.]*\)".*/\1/')
output+="${s/USDT/} \$${p%.*} | "
done
echo "${output% | }"
La barre des menus affichera : BTC $67234 | ETH $3421 | SOL $142 | BNB $542.
Exemple 3 : Couleurs de variation sur 24h
#!/bin/bash
# ~/SwiftBar/btc-24h.60s.sh
data=$(curl -s 'https://api.binance.com/api/v3/ticker/24hr?symbol=BTCUSDT')
price=$(echo "$data" | sed 's/.*"lastPrice":"\([0-9.]*\)".*/\1/')
change=$(echo "$data" | sed 's/.*"priceChangePercent":"\(-\{0,1\}[0-9.]*\)".*/\1/')
if [[ $change == -* ]]; then
color="red"
else
color="green"
fi
echo "BTC \$${price%.*} ${change}% | color=${color}"
IV. Solution 3 : BitBar / xbar (outils historiques)
BitBar a été remplacé par SwiftBar, mais si vous utilisez déjà xbar (le successeur de BitBar), le fonctionnement est similaire :
- Téléchargez xbar sur
xbarapp.com; - Placez vos scripts dans
~/Library/Application Support/xbar/plugins/; - Le nom du script doit se terminer par
.Xs.sh(où X est le nombre de secondes).
xbar est un peu plus lent à démarrer que SwiftBar, mais dispose d'un plus grand nombre de plugins communautaires.
V. Notification d'exécution d'ordre dans la barre des menus
Utilisez l'API Binance pour interroger les derniers ordres et afficher un point rouge en cas de changement :
#!/bin/bash
# ~/SwiftBar/binance-order.30s.sh
API_KEY="VOTRE_CLÉ_API"
SECRET="VOTRE_SECRET"
TIMESTAMP=$(date +%s)000
PARAMS="timestamp=${TIMESTAMP}&recvWindow=5000"
SIGN=$(echo -n "$PARAMS" | openssl dgst -sha256 -hmac "$SECRET" | cut -d' ' -f2)
RESP=$(curl -s -H "X-MBX-APIKEY: $API_KEY" \
"https://api.binance.com/api/v3/openOrders?${PARAMS}&signature=${SIGN}")
COUNT=$(echo "$RESP" | grep -o '"orderId"' | wc -l | tr -d ' ')
if [[ $COUNT -gt 0 ]]; then
echo "🔴 $COUNT ordres"
else
echo "✅ Aucun ordre"
fi
Conseil de sécurité : Créez une clé API avec des permissions de lecture seule (pas de retrait) ; placez le script dans un répertoire avec les permissions 600 via chmod 600 binance-order.30s.sh.
VI. Surveillance de la qualité de connexion
Affiche la latence de l'API Binance :
#!/bin/bash
# ~/SwiftBar/binance-ping.10s.sh
start=$(date +%s%N)
curl -s -o /dev/null 'https://api.binance.com/api/v3/ping'
end=$(date +%s%N)
latency=$(( (end - start) / 1000000 ))
if [[ $latency -lt 100 ]]; then
echo "✅ ${latency}ms"
elif [[ $latency -lt 300 ]]; then
echo "⚠️ ${latency}ms"
else
echo "❌ ${latency}ms"
fi
Rafraîchissement toutes les 10 secondes, permettant de voir immédiatement une latence élevée.
VII. Gestion de l'espace dans la barre des menus
Sur les MacBook Pro avec encoche, la barre des menus ne fait que quelques dizaines de pixels de large. Si elle est mal organisée, des éléments peuvent être masqués par l'encoche. Suggestions par priorité :
| Priorité | Contenu |
|---|---|
| P0 | Système (Wi-Fi, Batterie, Heure) |
| P1 | Icône du client Binance |
| P2 | Prix (1-2 paires de devises) |
| P3 | Point rouge des ordres |
| P4 | Volume / Luminosité système |
| P5 | Autres (pouvant être regroupés dans Bartender) |
Utiliser Bartender pour organiser
Bartender 3/4 permet de regrouper et de replier les icônes de la barre des menus :
- Toujours visible : Prix + Ordres
- Zone repliée : Binance, Dropbox, Slack
- Appuyez sur
Command+Shift+Bpour déplier
VIII. Différences de la barre des menus selon les versions de macOS
| Version macOS | Capacité max de la barre des menus | Support des icônes tierces |
|---|---|---|
| 12 Monterey | 15-20 icônes | Support complet |
| 13 Ventura | 15-20 icônes | Support complet |
| 14 Sonoma | 12-18 icônes (écran à encoche) | Support complet, SIP plus strict |
| 15 Sequoia | 12-18 icônes | Nécessite une nouvelle autorisation pour SwiftBar |
Après la mise à jour vers Sequoia, SwiftBar nécessite d'être recoché dans Confidentialité → Accessibilité.
IX. Impact sur les performances
Les scripts de la barre des menus exécutent une requête curl toutes les 10/30/60 secondes. Coût estimé :
- CPU : <1% (Apple Silicon), ~1-2% (Intel) ;
- Mémoire : 20-50 Mo au total pour les scripts ;
- Réseau : environ 1 Ko par requête.
Cela ne cause pas de charge notable sur le système. Si votre Wi-Fi est instable, vous pouvez augmenter l'intervalle à plus de 60s.
X. Combinaisons recommandées
Utilisateurs quotidiens :
- Icône native du client Binance (pour les notifications) ;
- SwiftBar : affichage des prix BTC/ETH.
Utilisateurs de trading haute fréquence :
- Icône du client ;
- SwiftBar avec défilement multi-devises ;
- Script de surveillance des ordres ;
- Surveillance de la latence (Ping) ;
- Bartender pour l'organisation.
Utilisateurs de trading algorithmique (Quant) :
- Icône du client repliée ;
- SwiftBar : État de l'API + Profits/Pertes du compte ;
- Scripts personnalisés intégrés à vos propres stratégies de gestion des risques.
Questions Fréquentes FAQ
Q1 : Que faire si le prix dans la barre des menus présente un retard important ?
R : L'intervalle de rafraîchissement par défaut est de 30 à 60 secondes. Pour plus de rapidité, changez le suffixe du nom de fichier en .5s.sh (5 secondes). Ne descendez pas en dessous de 5 secondes pour éviter d'être limité par l'API.
Q2 : Le script SwiftBar ne fonctionne pas sur Sonoma ?
R : Sonoma est plus strict sur les permissions des scripts. Allez dans Confidentialité → Fichiers et dossiers, autorisez SwiftBar à accéder au répertoire ~/SwiftBar ; allez dans Confidentialité → Accès complet au disque et cochez à nouveau SwiftBar.
Q3 : L'icône de la barre des menus de Binance a disparu ?
R : La barre des menus est peut-être trop encombrée. Fermez quelques icônes inutilisées ou déplacez l'icône Binance vers la gauche. Utilisez Command + glisser-déposer pour changer l'ordre des icônes.
Q4 : Est-il sûr de placer une clé API dans un script de barre des menus ?
R : Tant que la clé API est en lecture seule (pas de trading, pas de retrait), que les permissions du fichier script sont réglées sur 600 (chmod 600), et que vous êtes le seul utilisateur du Mac, la sécurité est suffisante. Ne le placez pas dans un répertoire synchronisé iCloud.
Q5 : Les icônes de la barre des menus sont masquées par l'encoche du MacBook ?
R : Utilisez Bartender 4 pour replier les icônes en excès dans un menu déroulant ; ou activez Réglages Système → Bureau et Dock → Masquer et afficher automatiquement la barre des menus, pour qu'elle n'apparaisse que lorsque vous survolez le haut de l'écran.
Pour plus d'astuces avancées sur Mac, parcourez la catégorie des tutoriels Mac dans la navigation par catégorie.