Önce şu bilgileri alın; credential değerlerini yazdırmayın:
java -version
clojure -Sdescribe
clojure -M:run
clojure -M:verify-environment
java veya clojure bulunamıyorscripts/install-portable-jdk.ps1 kullanabilirsiniz..toolchains/jdk-25* dizinini otomatik seçer.invalid-timestamp / Binance -1021Nedenler: clock drift, uzun yaşayan client offset'i veya yanlış time unit.
(client/synchronize-time! connector)
Signed workflow öncesi yeniden deneyin. Custom :clock enjekte ettiyseniz offset yönetimi size aittir. recvWindow değerini körlemesine büyütmek temel clock sorununu çözmez.
invalid-signature / Binance -1022Credential sızdıysa anahtarı Binance tarafında iptal/rotate edin.
api-key-ip-or-permission-rejected / -2015order-not-found / -2013Yeni emirden hemen sonraki query Memory → Database görünürlük penceresinde geçici -2013 döndürebilir. Bu tek başına emrin reddedildiğini kanıtlamaz.
submit-order! lifecycle sonucunu kullanın.executionReport takip edin.:unresolved durumunu manuel/async reconciliation kuyruğuna alın.illegal-characters / -1100Wire parametrelerinden biri Binance lexical sözleşmesine uymuyordur:
1E-8) kullanmayın.float/double göndermeyin.BigDecimal veya plain decimal string verin.decimal/normalize kullanın.-1013exchangeInfo snapshot'ını yeniden alın.PRICE_FILTER, LOT_SIZE, MIN_NOTIONAL ve NOTIONAL değerlerini kontrol edin.PERCENT_PRICE(_BY_SIDE) gibi server-authoritative filtreler yerel V1 preflight'ın tamamı değildir.insufficient-balanceAccount response içindeki free balance'ı kullanın; locked bakiye harcanamaz. BUY için quote notional, SELL için base quantity ve komisyon etkisini hesaba katın. Testnet resetleri bakiyeleri ve order geçmişini değiştirebilir.
429 veya 418429: request/order limit aşıldı. Retry-After varsa connector safe read için uygular; uygulama yine de çağrı hızını azaltmalıdır.418: IP ban. Connector otomatik retry yapmaz. Ban süresi dolmadan istek fırtınası üretmeyin.5xx sırasında new orderState-changing command sonucu unknown olabilir. En önemli kural: aynı emri yeniden göndermeyin.
(def lifecycle (spot/submit-order! connector symbol-info order))
:unresolved ise client order ID ile REST query ve signed UDS kullanın. Manuel operator'a görünür alarm üretin.
wss erişimini kontrol edin.snapshot içindeki :status, :last-error-category, :reconnect-attempt alanlarını inceleyin.nil normal olabilir; bağlantı hatasıyla karıştırmayın.(streams/snapshot stream)
(user-stream/snapshot stream)
Buffer :dropped sayacı artıyorsa consumer yavaştır:
Binance WebSocket bağlantıları süre sınırına sahiptir. Connector planned renewal/reconnect yapar ve subscriptionları geri yükler. Kısa gap mümkündür; REST snapshot/reconciliation tasarımın parçası olmalıdır.
Varsayılan clojure -X:integration-test ağsızdır. Canlı kapılar explicit environment flag ister. Release scripti gerekli flag'leri kendi scope'unda ayarlar:
.\scripts\verify-phase-9.ps1 -RunFullTestnet
Bu komut gerçek Spot Testnet credential ister ve bir sanal LIMIT emir oluşturup iptal eder.
Scanner gerçek process credential değerini repository metninde bulmuş olabilir. Değeri hiçbir çıktıda tekrar yazdırmayın:
clojure -M:secret-scan tekrar çalıştırın.clojure -X:test
clojure -X:integration-test
clojure -M:secret-scan
clojure -M:lint
clojure -M:format-check
Issue'ya işletim sistemi, JDK/Clojure sürümü, commit/tag, minimum örnek ve secret-safe hata ex-data ekleyin. API key, secret, private key, signature veya signed query eklemeyin.
Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |