macOSのメニューバーにバイナンスの状態を常駐させるには、3つの方法があります。1つ目はバイナンス公式クライアント内蔵のメニューバーアイコン(デフォルトで有効。右上に小さなアイコンが表示され、クリックするとアカウントや通知が展開されます)。2つ目は SwiftBar/BitBar を使ってリアルタイムの価格をカスタム表示する方法。3つ目は xbar のスクリプトを使って API データを取得する方法です。それぞれの方法に最適な利用シーンがあります。公式クライアントは バイナンス公式サイト から入手してください。スマホでも状態を確認したい場合は、バイナンス公式アプリ をクリックしてダウンロードしてください。この記事では、3つのプランの完全な手順とスクリプト例を紹介します。
一、なぜメニューバーに状態を表示するのか
- アプリを切り替えずに価格を確認でき、現在の作業に集中できる。
- 注文の約定を瞬時に通知で受け取り、利確・損切りのタイミングを逃さない。
- 接続状態を一目で判断し、オフラインになっていないか確認できる。
- 複数通貨のローテーション表示により、画面スペースを節約できる。
Macのメニューバーのスペースは限られています(特にノッチ付きのMacBook)。表示内容は厳選しましょう。
二、プラン1:バイナンスクライアント内蔵のメニューバーアイコン
有効化
デフォルトで有効になっています。表示されていない場合は:
- バイナンスクライアントを開く → 設定(
Command+,)。 - 全般 → メニューバーアイコン。
- 「メニューバーに Binance を表示」にチェックを入れます。
メニューバーアイコンをクリックして展開
メニューバーの Binance アイコンをクリックすると小さなウィンドウが開き、デフォルトで以下の内容が表示されます:
- 現在ログインしているアカウント。
- 最近の3件の通知。
- アカウント総資産(表示/非表示の設定可能)。
- 接続状態(遅延 ms)。
- クイック操作:クライアントを開く、ロック、終了。
各項目のオン/オフ
クライアント設定 → メニューバー → 以下にチェックを入れることができます:
- 資産を表示
- 通知の赤点を表示
- 遅延を表示
- 簡易価格を表示(3つの通貨ペアを自由に選択)
三、プラン2:SwiftBar によるカスタムメニューバースクリプト
SwiftBarはオープンソースのメニューバーツールで、スクリプトの出力をメニューバーに表示できます。
インストール
brew install --cask swiftbar
または SwiftBar 公式サイトから dmg をダウンロードします。
スクリプトディレクトリの設定
SwiftBarを初めて起動すると、スクリプトディレクトリの選択を求められます。通常は ~/SwiftBar を使用します。
例1:BTCのリアルタイム価格を表示する
ファイル ~/SwiftBar/btc-price.30s.sh を作成します(ファイル名の中の 30s は30秒ごとに更新することを意味します):
#!/bin/bash
price=$(curl -s 'https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT' | sed 's/.*"price":"\([0-9.]*\)".*/\1/')
echo "BTC \$${price%.*}"
保存後、chmod +x ~/SwiftBar/btc-price.30s.sh を実行します。
例2:複数通貨のローテーション表示
#!/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% | }"
メニューバーには BTC $67234 | ETH $3421 | SOL $142 | BNB $542 のように表示されます。
例3:24時間の騰落を色で表示
#!/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}"
四、プラン3:BitBar / xbar(老舗ツール)
BitBarは SwiftBar に取って代わられましたが、すでに xbar(BitBarの後継)を使用している場合は、使い方は同様です:
xbarapp.comから xbar をダウンロードします。~/Library/Application Support/xbar/plugins/にスクリプトを配置します。- スクリプト名には
.Xs.shという接尾辞(Xは秒数)が必要です。
xbar は SwiftBar よりも起動が少し遅いですが、コミュニティのプラグインが豊富です。
五、注文の約定をメニューバーにプッシュする
バイナンス API を使って最近の注文をポーリングし、変化があった時に赤点を表示します:
#!/bin/bash
# ~/SwiftBar/binance-order.30s.sh
API_KEY="あなたのAPIキー"
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 指値注文"
else
echo "✅ 注文なし"
fi
安全に関するヒント:APIキーは「読み取り専用」権限で作成し、出金権限は有効にしないでください。スクリプトは権限を 600 に設定したディレクトリに置いてください(chmod 600 binance-order.30s.sh)。
六、接続品質のモニタリング
バイナンス API の遅延を表示します:
#!/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
10秒ごとに更新され、遅延が大きくなった時にすぐに分かります。
七、メニューバースペースの管理
MacBook Pro のノッチ付きディスプレイでは、メニューバーのスペースが限られています。優先順位をつけて配置することをお勧めします:
| 優先度 | 内容 |
|---|---|
| P0 | システム標準(Wi-Fi、バッテリー、時計) |
| P1 | バイナンスクライアントアイコン |
| P2 | 通貨価格(1〜2ペア) |
| P3 | 注文通知の赤点 |
| P4 | システム音量・輝度 |
| P5 | その他(Bartender などで折りたたみ可能) |
Bartender で整理する
Bartender 3/4 を使うと、メニューバーアイコンを分類して折りたたむことができます:
- 常に表示:通貨価格 + 注文通知
- 折りたたみエリア:Binance、Dropbox、Slack
Command+Shift+Bで展開
八、macOS バージョン別のメニューバーの違い
| macOS バージョン | メニューバーの最大容量 | サードパーティアイコンのサポート |
|---|---|---|
| 12 Monterey | 15〜20 アイコン | 完全サポート |
| 13 Ventura | 15〜20 アイコン | 完全サポート |
| 14 Sonoma | 12〜18 アイコン(ノッチあり) | 完全サポート、SIPが厳格化 |
| 15 Sequoia | 12〜18 アイコン | SwiftBar の再認証が必要 |
Sequoia にアップグレードした後は、SwiftBar を プライバシー → アクセシビリティ で再度チェックし直す必要があります。
九、パフォーマンスへの影響
メニューバースクリプトは 10/30/60 秒ごとに curl リクエストを実行します。負荷は以下の通りです:
- CPU:1% 未満(Apple Silicon)、約 1〜2%(Intel)
- メモリ:スクリプト全体で 20〜50MB
- ネットワーク:リクエストごとに約 1KB
システムに大きな負担をかけることはありません。Wi-Fi が不安定な場合は、更新間隔を 60秒 以上に調整してください。
十、推奨の組み合わせプラン
一般ユーザー:
- バイナンスクライアント標準アイコン(通知の赤点を表示)。
- SwiftBar:BTC/ETH の2つの通貨価格を表示。
アクティブトレーダー:
- クライアント標準アイコン。
- SwiftBar による複数通貨のローテーション表示。
- 注文監視スクリプト。
- Ping 遅延監視。
- Bartender による整理。
自動売買・量化ユーザー:
- クライアント標準アイコン(折りたたみ)。
- SwiftBar:API ステータス + アカウント損益。
- 自作スクリプトによる個別リスク管理戦略の表示。
よくある質問 FAQ
Q1: メニューバーの価格表示の遅延がひどい場合は?
A: デフォルトの更新間隔は 30〜60秒 です。より速くしたい場合は、ファイル名の接尾辞を .5s.sh(5秒)などに変更してください。ただし、API のリミットを避けるため、5秒未満にはしないことをお勧めします。
Q2: SwiftBar のスクリプトが Sonoma で動かない?
A: Sonoma ではスクリプトの権限が厳格化されています。プライバシー → ファイルとフォルダ で、SwiftBar に ~/SwiftBar ディレクトリへのアクセスを許可してください。また、プライバシー → フルディスクアクセス でも SwiftBar を再度オンにしてください。
Q3: バイナンスクライアントのメニューバーアイコンが消えた?
A: メニューバーが混雑しすぎて隠れている可能性があります。不要なアイコンを閉じるか、Binance アイコンを左側にドラッグして移動させてください。Command を押しながらドラッグすることでアイコンの順序を調整できます。
Q4: APIキーをメニューバースクリプトに記述しても安全?
A: APIキーが「読み取り専用」権限(取引不可、出金不可)であり、スクリプトファイルの権限が 600(chmod 600)に設定され、Mac を自分だけが使用しているのであれば、安全性は十分です。iCloud の同期ディレクトリには置かないでください。
Q5: ノッチ付き MacBook でメニューバーアイコンが隠れてしまう?
A: Bartender 4 を使うとはみ出したアイコンをドロップダウンメニューに折り畳めます。または、システム設定 → デスクトップとコントロールセンター → メニューバーを自動的に非表示にする を有効にし、必要な時だけ上部にカーソルを合わせて表示させる方法もあります。
Mac の高度なテクニックをもっと見たい方は、カテゴリナビ からMacガイドカテゴリをご覧ください。