Περιορισμός Ρυθμού και Ποσόστωση

Κατανοήστε τα όρια ρυθμού του Smart Money API, τις ημερήσιες ποσοστώσεις για κάθε επίπεδο συνδρομής και τις στρατηγικές βελτιστοποίησης για να μεγιστοποιήσετε τη χρήση του API.

Επισκόπηση

Το Smart Money API εφαρμόζει ημερήσιες ποσόστωση αιτημάτων για να διασφαλίσει την ποιότητα της υπηρεσίας και τη δικαιοσχή μεταξύ όλων των χρηστών. Κάθε επίπεδο συνδρομής περιλαμβάνει ένα διαφορετικό ημερήσιο όριο. Όταν ξεπεράσετε την ημερήσια ποσόστωσή σας, λαμβάνετε ένα σφάλμα 429 Too Many Requests μέχρι η ποσόστωση να επαναφερθεί στις 00:00 UTC.

Τα όρια ρυθμού εφαρμόζονται ανά κλειδί API. Κάθε κλειδί έχει τη δική του ανεξάρτητη ποσόστωση. Μπορείτε να δημιουργήσετε πολλαπλά κλειδιά για διαφορετικές εφαρμογές και να παρακολουθείτε τη χρήση για κάθε ένα ξεχωριστά.

Ποσόστωση ανά Επίπεδο Συνδρομής

Επίπεδο Ημερήσια Αιτήματα Τιμή Χαρακτηριστικά
Δωρεάν 20 αιτήματα/ημέρα $0 BTC, ETH, SOL, συντελεστές χρηματοδότησης, εκκαθαρίσεις
Trader 400 αιτήματα/ημέρα $29/μήνα Όλα τα σύμβολα, θέσεις φαλαινών, δεδομένα OI
Pro 4,000 αιτήματα/ημέρα $79/μήνα Σκορ επιβεβαίωσης, δεδομένα αλυσίδας, webhooks
Enterprise Προσαρμοσμένο Προσαρμοσμένο Αφοσιωμένη υποστήριξη, προσαρμοσμένες ενσωματώσεις

Κεφαλίδες Απόκρισης Περιορισμού Ρυθμού

Κάθε απόκριση API περιλαμβάνει κεφαλίδες που υποδεικνύουν την τρέχουσα κατάσταση της ποσόστωσής σας:

HTTP Κεφαλίδες
X-Requests-Limit: 200 X-Requests-Remaining: 147 X-Requests-Reset: 1711116000 X-Requests-Reset-ISO: 2026-03-22T00:00:00Z
Κεφαλίδα Περιγραφή
X-Requests-Limit Συνολικό πλήθος επιτρεπόμενων αιτημάτων ανά ημέρα (π.χ., 200 για Trader)
X-Requests-Remaining Αιτήματα που απομένουν στην τρέχουσα ημέρα
X-Requests-Reset Unix timestamp για επαναφορά ποσόστωσης
X-Requests-Reset-ISO ISO 8601 timestamp για επαναφορά ποσόστωσης

Έλεγχος Ποσόστωσης Πριν την Υποβολή Αιτημάτων

Python
import requests from datetime import datetime def check_quota_before_request(api_key): response = requests.head( "https://api.smartmoneyapi.com/v1/whales/events", headers={"Authorization": f"Bearer {api_key}"} ) limit = int(response.headers.get("X-Requests-Limit", 0)) remaining = int(response.headers.get("X-Requests-Remaining", 0)) reset_unix = int(response.headers.get("X-Requests-Reset", 0)) reset_time = datetime.fromtimestamp(reset_unix) percent_used = (limit - remaining) / limit * 100 print(f"Quota: {remaining}/{limit} requests ({percent_used:.1f}% used)") print(f"Resets at: {reset_time}") if remaining < 5: print("WARNING: Approaching quota limit!") return False return True # Check before making requests if check_quota_before_request("sk_live_abc123xyz789"): print("Safe to proceed with API calls")

Ημερήσιο Παράθυρο Ρυθμού

Τα όρια ρυθμού λειτουργούν σε ένα 24ωρο κινούμενο παράθυρο. Η ποσόστωσή σας επαναφέρεται καθημερινά στις 00:00 UTC. Ο ακριβής χρόνος επαναφοράς παρέχεται στην X-Requests-Reset-ISO κεφαλίδα.

Παράδειγμα: Επίπεδο Trader (400 αιτήματα/ημέρα)

  • Ημέρα 1 (21 Μαρτίου): 200 αιτήματα διαθέσιμα στις 00:00 UTC
  • 10:30 UTC: Κάνατε 75 αιτήματα, απομένουν 125
  • 15:45 UTC: Κάνατε 100 επιπλέον αιτήματα, απομένουν 25
  • 23:59 UTC: Απομένουν ακόμα 25 αιτήματα (δεν μεταφέρονται)
  • Ημέρα 2 (22 Μαρτίου, 00:00 UTC): Η ποσόστωση επαναφέρεται σε 200

Στρατηγικές Βελτιστοποίησης

1. Προσωρινή Αποθήκευση Αποκρίσεων API

Οι θέσεις φαλαινών δεν αλλάζουν κάθε δευτερόλεπτο. Αποθηκεύστε τα αποτελέσματα για 30-60 δευτερόλεπτα και χρησιμοποιήστε τα αποθηκευμένα δεδομένα αντί να κάνετε νέες κλήσεις API.

Python
import requests import time class CachedClient: def __init__(self, api_key, cache_ttl=60): self.api_key = api_key self.cache_ttl = cache_ttl self.cache = {} self.cache_time = {} def get_whale_positions(self, symbol): cache_key = f"whales:{symbol}" now = time.time() # Return cached data if still fresh if cache_key in self.cache: age = now - self.cache_time[cache_key] if age < self.cache_ttl: print(f"Served from cache (age: {age:.1f}s)") return self.cache[cache_key] # Fetch fresh data response = requests.get( f"https://api.smartmoneyapi.com/v1/whales/events?symbol={symbol}", headers={"Authorization": f"Bearer {self.api_key}"} ) data = response.json() self.cache[cache_key] = data self.cache_time[cache_key] = now return data # Usage: Cache for 60 seconds client = CachedClient("sk_live_abc123xyz789", cache_ttl=60) whales1 = client.get_whale_positions("BTCUSDT") # API call whales2 = client.get_whale_positions("BTCUSDT") # From cache whales3 = client.get_whale_positions("BTCUSDT") # From cache

2. Χρήση WebSocket για Δεδομένα σε Πραγματικό Χρόνο

Οι συνδέσεις WebSocket παρέχουν ενημερώσεις άμεσα χωρίς να υπολογίζονται στο όριο ρυθμού σας. Εγγραφείτε σε ροές και λάβετε ενημερώσεις καθώς συμβαίνουν, μειώνοντας τον αριθμό των κλήσεων REST API που απαιτούνται.

3. Στρατηγική Ομαδοποίηση Αιτημάτων

Κάντε ένα αίτημα με πολλαπλά σύμβολα όταν είναι δυνατόν αντί ξεχωριστών αιτημάτων για κάθε σύμβολο. Αυτό μειώνει τις κλήσεις API έως και 10 φορές.

4. Χρήση Φιλτραρίσματος κατά τη Υποβολή Αιτημάτων

Εφαρμόστε φίλτρα (σύμβολο, ανταλλακτήριο, ελάχιστο μέγεθος θέσης) στις παραμέτρους ερωτήματος για να λάβετε ακριβώς τα δεδομένα που χρειάζεστε, αποφεύγοντας την ανάγκη για μεταγενέστερη επεξεργασία.

Χειρισμός Σφαλμάτων Ορίου Ρυθμού

Επανάληψη με Εκθετική Υποχώρηση

Python
import requests import time def request_with_retry(url, api_key, max_retries=5): for attempt in range(max_retries): try: response = requests.get( url, headers={"Authorization": f"Bearer {api_key}"}, timeout=10 ) if response.status_code == 200: return response.json() elif response.status_code == 429: # Rate limited - back off exponentially wait_time = min(2 ** attempt, 300) # Max 5 minutes reset_time = response.headers.get("X-Requests-Reset-ISO") print(f"Rate limited. Retrying in {wait_time}s (resets at {reset_time})") time.sleep(wait_time) elif response.status_code >= 500: # Server error - retry wait_time = 2 ** attempt print(f"Server error {response.status_code}. Retrying in {wait_time}s") time.sleep(wait_time) else: # Other error - don't retry raise Exception(f"HTTP {response.status_code}: {response.text}") except requests.exceptions.Timeout: wait_time = 2 ** attempt print(f"Timeout. Retrying in {wait_time}s") time.sleep(wait_time) raise Exception("Max retries exceeded") # Usage data = request_with_retry( "https://api.smartmoneyapi.com/v1/whales/events", "sk_live_abc123xyz789" ) print(data)

Έτοιμοι να Αναβαθμιστείτε;

Το δωρεάν επίπεδο δεν είναι αρκετό; Αναβαθμιστείτε σε Trader ή Pro για υψηλότερες ποσοστώσεις και πρόσβαση σε προηγμένες λειτουργίες όπως σκορ επιβεβαίωσης και δεδομένα αλυσίδας.

Δείτε Τιμές

Βελτιστοποιήστε τη Χρήση του API Σήμερα

Εφαρμόστε προσωρινή αποθήκευση, χρησιμοποιήστε WebSocket για δεδομένα σε πραγματικό χρόνο και χειριστείτε τα όρια ρυθμού με ευγένεια.

Διαβάστε Τεκμηρίωση
Ξεκινήστε δωρεάν — 100 κλήσεις/ημέρα, χωρίς κάρτα

Λάβετε ζωντανή ροή φαλαινών, χρηματοδότηση, ανοιχτό ενδιαφέρον και δεδομένα αλυσίδας από 3 ανταλλακτήρια από ένα API. Δωρεάν επίπεδο, χωρίς πιστωτική κάρτα, αναβάθμιση ανά πάσα στιγμή.

Ξεκινήστε δωρεάν →
Δοκιμάστε την ζωντανή κονσόλα API → (χωρίς λογαριασμό)
Λάβετε το κλειδί API σας σε 30 δευτερόλεπτα

Έτοιμοι να δημιουργήσετε; Αποκτήστε ένα δωρεάν κλειδί API (100 κλήσεις/ημέρα, χωρίς κάρτα) και αρχίστε να τραβάτε ζωντανά δεδομένα φαλαινών, χρηματοδότησης και αλυσίδας.

Λάβετε το κλειδί API σας →