Linuxでこのカールを使用してBinanceからすべての依頼と入札の合計を取得する方法を教えてください。


0

このcurl入力は入札の良いリストを出力し、BinanceのAPIから尋ねます:

curl https://api.binance.com/api/v1/depth?symbol=ETHUSDT | jq

しかし、アウトプットが次のようになるように、これらすべての要求と入札の合計を計算する方法があります。

Total asks: 1023411 USD
Total bids: 1002112 USD

回答:


1

最短のバージョンではありませんが、このjqスクリプトは機能します。

{asks, bids} | to_entries
| .[]
| . as {key: $kind, value: $data}
| $data
| map({price: .[0] | tonumber, qty: .[1] | tonumber})
| map(.price * .qty)
| add
| "Total \($kind): \(. * 100 | round / 100) USD"

として実行 jq -r -f filename.jq または jq -r '{asks, bids} | .....'

jqはIEEE 754の 'double'の精度に制限されることに注意してください。

(また、APIはデフォルトで最大100項目(最大1000)までしか返さないため、これは正しい数値ではない可能性があります。 ドキュメントを参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.