Smart Money API
API kecerdasan peringkat profesional yang mengagregat data derivatif, metrik on-chain, dan aktiviti dompet ikan paus menjadi satu skor keyakinan untuk bot dagangan anda.
https://api.smartmoneyapi.com/v1Prinsip reka bentuk
Empat idea membentuk setiap titik akhir dan setiap skor yang dikembalikan oleh API ini. Ia juga merupakan batasan jujur tentang apa yang dijanjikan — dan tidak dijanjikan.
Strategi pertama, bukan isyarat pertama. Ini bukan suapan isyarat beli/jual. Anda membawa strategi dan kemasukan; API memberitahu anda sama ada struktur pasaran sekitarnya — penentuan posisi derivatif, pembiayaan, minat terbuka, pelupusan, aliran on-chain, dan konsensus ikan paus — bersetuju dengan dagangan yang anda sudah mahu lakukan.
Skor keyakinan, bukan ramalan binari. Setiap jawapan membawa gred confidence (TINGGI / SEDERHANA / RENDAH) dan composite dari -1.0 hingga +1.0. Tiada jaminan dan tiada panggilan oracle — anda mendapat bacaan terkawal tentang persetujuan, dengan alasan di sebaliknya, supaya anda boleh menyesuaikan saiz mengikut keyakinan.
Sokongan keputusan, bukan nasihat pelaksanaan. API mengembalikan cadangan CONFIRM / REDUCE / SKIP dan pengganda saiz untuk anda logik untuk bertindak. Ia tidak pernah meletakkan pesanan, dan tiada apa di sini adalah nasihat kewangan. Anda tetap bertanggungjawab untuk risiko, saiz, dan pelaksanaan.
Metrik hidup, bukan jaminan tetap. Kadar kemenangan, statistik rejim, dan angka ketepatan dikira dari sampel bergulir dan berubah mengikut pergerakan pasaran. Kami menerbitkannya dengan jujur, termasuk apabila ia sederhana. Anggap setiap metrik sebagai pemerhatian semasa, bukan janji tentang masa depan.
Untuk siapa API ini
API ini dibina untuk pembangun bot kripto, algo, dan ejen AI yang sudah mempunyai isyarat panjang/pendek — dari strategi TA, model ML, saluran Freqtrade, amaran TradingView, atau ejen LLM — dan mahukan keputusan CONFIRM / REDUCE / SKIP pantas sebelum melaburkan modal.
Gelung tipikal: strategi anda mencetuskan "beli panjang BTC" → anda memanggil GET /v1/confirm?symbol=BTC&direction=long → anda mengesahkan, mengurangkan, atau melangkau kemasukan dan menyesuaikan saiz mengikut size_mult. Satu panggilan, respons JSON berlatensi rendah tunggal, tiada infrastruktur tambahan.
Ia bukan penjana isyarat berdiri sendiri, produk carta, atau tempat pelaksanaan. Jika anda tidak mempunyai isyarat sendiri untuk dikawal, mulakan dengan halaman prestasi untuk melihat bagaimana skor berkelakuan sebelum menyambungkannya ke bot langsung.
Mendapatkan akses
1 — Daftar. Buat akaun percuma di signup (e-mel/kata laluan atau Google). Tiada kad kredit diperlukan untuk peringkat percuma.
2 — Buka papan pemuka anda. Anda papan pemuka menunjukkan kunci API anda, pelan semasa, dan penggunaan langsung berbanding kuota harian anda.
3 — Salin kunci API anda. Kunci diawali sm_. Luluskannya sebagai X-API-Key header pada setiap permintaan (lihat Pengesahan). Naik taraf bila-bila masa pada halaman harga untuk meningkatkan had dan membuka lebih banyak simbol dan endpoint.
Spesifikasi, SDK & Buku Resipi
Semua yang anda perlukan untuk integrasi pantas, sama ada anda menulis kod sendiri atau menyerahkannya kepada ejen pengekodan.
| Sumber | Apa itu |
|---|---|
| Buku Resipi | Resipi salin-tampal untuk integrasi paling biasa — sahkan sebelum masuk, kawal isyarat Freqtrade, saiz mengikut pengganda, uruskan 402/429, dan sambungkan ke ejen pengekodan. |
| Spesifikasi OpenAPI | Definisi OpenAPI yang boleh dibaca mesin untuk setiap endpoint. Import ke Postman/Insomnia, hasilkan klien, atau berikan kepada LLM. Pada github.com/tashiardit/smartmoneyapi-docs. |
| Klien Python | Pustaka klien Python rasmi di github.com/tashiardit/smartmoneyapi-python. |
| /llms.txt | Ringkasan API dalam teks biasa yang mesra LLM. Arahkan Claude, Codex, atau Cursor padanya (lihat Ejen Pengekodan). |
Panduan Pantas dalam 2 minit
Langkah 1 — URL Asas. Setiap endpoint berada di bawah:
Langkah 2 — Dapatkan kunci API anda. Daftar percuma (tiada kad kredit diperlukan) dan salin kunci anda dari papan pemuka. Gunakannya sebagai X-API-Key header pada setiap permintaan.
Langkah 3 — Panggilan pertama anda. Tampal ini ke terminal anda dan gantikan sm_your_key dengan kunci dari papan pemuka anda:
Respons yang dijangkakan:
"ts": 1710940821,
"symbol": "BTC",
"direction": "long",
"composite": 0.74,
"confidence": "HIGH",
"action": "CONFIRM",
"size_mult": 1.5,
"deriv_score": 0.81,
"onchain_score": 0.68,
"whale_score": 0.73,
"reasons": ["Kadar pembiayaan positif di semua venue", "Paus: 67% konsensus long"]
}
Apabila confidence adalah HIGH atau MEDIUM dan action adalah CONFIRM, skala saiz posisi anda dengan size_mult. Itu keseluruhan gelung integrasi. Lihat Medan Respons untuk rujukan medan penuh.
Pengesahan
Semua permintaan memerlukan kunci API yang disampaikan sebagai X-API-Key header HTTP.
Kunci API anda boleh didapati dari papan pemuka selepas mendaftar. Rahsiakan kunci anda — jangan dedahkan dalam kod pelayan atau repositori awam.
/v1/ws/ticket dengan X-API-Key header, kemudian sambung dengan tiket yang dikembalikan. Lihat Pengesahan WebSocket (tiket).Log Masuk Google (Firebase Auth)
Pengguna boleh mengesahkan menggunakan akaun Google melalui Firebase Authentication. Selepas log masuk Google berjaya pada klien, tukar token ID Firebase untuk sesi API yang dikaitkan. Sistem ini menyegerakkan identiti Google anda dengan sistem kunci API secara automatik.
Badan Permintaan
| Medan | Jenis | Keterangan |
|---|---|---|
| id_tokendiperlukan | string | Token ID Firebase yang diperoleh selepas log masuk Google pada klien |
Contoh Respons
"api_key": "sm_your_linked_key",
"uid": "firebase_uid_abc123",
"email": "[email protected]",
"plan": "trader",
"synced": true
}
Had Kadar
| Pelan | Panggilan/Hari | Had Pecutan | Kelewatan Data |
|---|---|---|---|
| Percuma | 50 | 2/min | 60 saat |
| Peniaga | 1,000 | 20/min | Masa nyata |
| Pro | 5,000 | 60/min | Masa nyata |
| Enterprise | 100,000 | 400/min | Masa nyata |
Had kadar disertakan dalam setiap respons: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
URL Asas
Semua titik akhir di bawah adalah relatif kepada URL asas ini. Semua respons adalah dalam format JSON dengan Content-Type: application/json.
Ralat
Ralat menggunakan kod status HTTP standard dan badan JSON yang konsisten. Sentiasa cabut berdasarkan kod status, bukan pada teks respons. Tiga yang paling kerap anda temui:
| Status | Kod | Maksud & apa yang perlu dilakukan |
|---|---|---|
| 401 | tidak_dibenarkan | Kunci API hilang atau tidak sah. Semak X-API-Key header hadir dan betul. |
| 402 | bayaran_diperlukan | Titik akhir atau simbol memerlukan pelan yang lebih tinggi daripada kunci anda (contohnya, kunci percuma memanggil WebSocket firehose). Naik taraf atau kembali ke titik akhir awam. |
| 429 | had_kadar_melebihi | Had harian atau pecahan tercapai. Berundur dan cuba semula selepas X-RateLimit-Reset; jangan terus menghantar permintaan. |
Setiap ralat mengembalikan bentuk yang sama:
"error": "rate_limit_exceeded",
"message": "Had harian 100 panggilan tercapai. Ditetapkan semula pada 00:00 UTC.",
"status": 429
}
Untuk senarai lengkap kod status (400 / 403 / 500 / 503 dan lain-lain), lihat Kod Ralat. Integrasi yang kukuh menganggap 5xx dan 429 sebagai sementara (cuba semula dengan berundur) dan 401/402/403 sebagai terminal (betulkan kunci atau pelan).
Amalan keselamatan terbaik
Hantar kunci dalam header, bukan dalam URL. Sentiasa hantar X-API-Key sebagai header HTTP. Kunci dalam rentetan pertanyaan (?key=) dicatat oleh proksi, penyeimbang beban, dan sejarah penyemak imbas — autentikasi ?key= tidak lagi diterima pada titik akhir WebSocket atas sebab ini.
Simpan kunci di sebelah pelayan. Jangan sesekali menyematkan kunci API dalam JavaScript sebelah pelanggan, bundle aplikasi mudah alih, atau repositori awam. Muatkannya dari pemboleh ubah persekitaran atau pengurus rahsia. Jika kunci bocor, putarkannya.
Putar kunci secara berkala. Hasilkan semula kunci anda dari papan pemuka mengikut jadual dan serta-merta jika anda mengesyaki pendedahan. Kunci lama berhenti berfungsi sebaik sahaja kunci baru dikeluarkan.
Gunakan tiket untuk soket penyemak imbas. Untuk strim masa nyata dari penyemak imbas, tukar kunci anda dengan tiket sekali guna dan bukannya menyambung dengan kunci mentah — lihat Autentikasi WebSocket (tiket).
Menggunakan dengan ejen pengekodan / LLM
Membina dengan Claude Code, Codex, Cursor, atau ejen pengekodan LLM? Anda boleh memberikan ejen semua yang diperlukan untuk menyambung API ini dengan betul dalam satu langkah. Dua rujukan mesin boleh baca diterbitkan:
| Sumber | URL |
|---|---|
| Ringkasan LLM | https://smartmoneyapi.com/llms.txt |
| Spesifikasi OpenAPI | github.com/tashiardit/smartmoneyapi-docs |
Arahkan ejen anda ke /llms.txt fail (konvensyen llms.txt) untuk gambaran ringkas, kemudian spesifikasi OpenAPI untuk bentuk permintaan/respons yang tepat. Petikan satu baris yang berfungsi dengan baik:
Baca https://smartmoneyapi.com/llms.txt dan spesifikasi OpenAPI di
github.com/tashiardit/smartmoneyapi-docs, kemudian tambahkan semakan pra-dagang
ke bot saya yang memanggil GET /v1/confirm dan melangkau kemasukan
kecuali tindakan adalah CONFIRM.
Lihat Buku Resipi untuk resipi ejen pengekodan yang telah diolah.
Titik Akhir
GET /confirm
Titik akhir teras. Mengembalikan skor keyakinan komposit dan cadangan tindakan untuk arah dagangan tertentu. Panggil ini sebelum memasuki sebarang posisi.
Liputan, dalam istilah mudah. /confirm kini menilai BTC, ETH dan SOL — simbol dengan sejarah yang cukup untuk disahkan dengan jujur. Pemeriksa derivatif secara berasingan memantau ~519 pasaran derivatif untuk pembiayaan, data OI dan pelupusan, dan penjejakan ikan paus meliputi 600+ dompet. Pro membuka kunci pemeriksa penuh, eksport dan liputan pasaran yang lebih luas; /confirm sokongan simbol diperluas apabila setiap pasaran mengumpul rekod prestasi yang boleh dipercayai.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| symboldiperlukan | string | Simbol aset. Salah satu: BTC, ETH, SOL (Trader+) |
| directiondiperlukan | string | Arah dagangan: long atau short |
| sourcepilihan | string | Label untuk sumber isyarat anda (dicatat untuk analitik). Maks 32 aksara. |
Contoh Permintaan
"https://api.smartmoneyapi.com/v1/confirm?symbol=BTC&direction=long"
Contoh Respons
"ts": 1710940821,
"symbol": "BTC",
"direction": "long",
"composite": 0.74,
"confidence": "TINGGI",
"action": "CONFIRM_FULL",
"size_mult": 1.5,
deriv_score: 0.81,
onchain_score: 0.68,
whale_score: 0.73,
x_score: 0.0,
faktor: {
derivatif: { skor: 0.81, berat: 0.40, berwajaran: 0.324 },
onchain: { skor: 0.68, berat: 0.35, berwajaran: 0.238, sumber: coinmetrics, tersedia: True },
paus: { skor: 0.73, berat: 0.25, faktor_ketinggalan: 1.0, berwajaran: 0.183 }
},
pelarasan: { persetujuan: 0.0, trend: 0.0, berita_makro: 0.0 },
berat: { derivatif: 0.40, onchain: 0.35, intel_paus: 0.25 },
liputan: { derivatif: True, paus: True, onchain: True },
sebab: [
Kadar pembiayaan positif di semua tempat,
LSR memihak kepada long: 1.42,
Paus: 67% konsensus long,
MVRV melebihi 1.0 — on-chain bullish
]
}
Telus secara reka bentuk. Setiap respons membawa factors objek yang menunjukkan setiap bahagian skor × berat = sumbangan berwajaran sumbangan, satu adjustments objek untuk pelarasan pasca-tapis, yang weights digunakan, dan satu coverage peta. Bahagian on-chain menggunakan data percuma Coin Metrics sebenar (MVRV / aliran pertukaran / alamat aktif) apabila tiada kunci Glassnode ditetapkan. Ini adalah pertemuan pelbagai faktor skor — sokongan keputusan, bukan kadar kemenangan yang dijamin.
Simbol yang tidak dikesan adalah jujur. Simbol di luar alam semesta derivatif/paus yang dikesan mengembalikan "confidence":"NO_DATA" / "action":"NO_DATA_SKIP" dengan "unsupported":true — tidak pernah dibuat-buat LOW.
Medan Respons
| Medan | Jenis | Penerangan |
|---|---|---|
| ts | integer | Stempel masa Unix pengiraan |
| simbol | string | Simbol aset (BTC/ETH/SOL) |
| arah | string | Arah yang diminta (long/short) |
| komposit | float | Skor pertemuan komposit dari -1.0 (ekstrem kontra) hingga +1.0 (pengesahan kuat). Bukan kadar kemenangan. |
| komposit_asas | float | Komposit sebelum pelarasan pasca-tapis digunakan |
| keyakinan | string | HIGH / MEDIUM / LOW / VETO / NO_DATA |
| tindakan | string | CONFIRM_FULL / CONFIRM_REDUCED / CONFIRM_MINIMAL / VETO_SKIP / NO_DATA_SKIP |
| saiz_mult | float | Pengganda saiz posisi yang dicadangkan (contohnya 0.0 – 1.5) |
| tidak_disokong | bool | true apabila simbol berada di luar liputan (berpasangan dengan NO_DATA) |
| deriv_score | float | Sub-skor derivatif (-1 hingga 1) |
| onchain_score | float | Sub-skor on-chain (-1 hingga 1) |
| whale_score | float | Sub-skor konsensus paus (-1 hingga 1) |
| x_score | float | Sub-skor X/sentimen sosial (-1 hingga 1); 0 apabila tidak digunakan |
| faktor | objek | Pecahan setiap bahagian: score × weight = weighted untuk derivatif / onchain / paus / x_sentiment (onchain termasuk source) |
| pelarasan | objek | Pelarasan pasca-tapis yang ditandatangani (persetujuan, trend, rsi_1h, berita_makro, momentum, masa_hari, peluruhan_streak) |
| berat | objek | Set berat yang sebenarnya digunakan untuk penilaian ini |
| liputan | objek | {derivatives, whale, onchain} — bahagian mana yang mempunyai data sebenar |
| sebab | array | Penjelasan boleh dibaca manusia untuk skor |
GET /snapshot
Mengembalikan snapshot pasaran penuh termasuk semua sub-skor, metrik mentah, dan nilai penunjuk untuk simbol tertentu. Berguna untuk papan pemuka dan log.
GET /onchain
Mengembalikan metrik on-chain mentah: MVRV, SOPR, aliran bersih pertukaran, nisbah modal direalisasikan, dan klasifikasi kedudukan kitaran.
GET /v1/derivatives/*
Penyaring derivatif silang pertukaran merentas 500+ simbol: peta haba kadar pembiayaan, kedudukan minat terbuka, dan pengesanan isyarat nisbah panjang/pendek. 10 baris teratas adalah awam; penyaring penuh memerlukan Pedagang atau Pro. Titik akhir: /v1/derivatives/screener, /v1/derivatives/funding, /v1/derivatives/oi, /v1/derivatives/signals.
GET /v1/options/*
Analisis pilihan BTC & ETH bersumberkan Deribit (awam, tiada pengesahan): nisbah put/call, kesakitan maksimum, dan minat terbuka mengikut strike. Titik akhir: /v1/options/summary, /v1/options/pcr, /v1/options/oi.
GET /v1/etf/*
Aliran bersih harian ETF BTC & ETH spot dan pecahan setiap dana (awam). Titik akhir: /v1/etf/flows, /v1/etf/funds.
GET /v1/historical/*
Pembiayaan sejarah, minat terbuka, nisbah panjang/pendek (Binance), dan OHLCV (CoinGecko) untuk ujian balik. Titik akhir: /v1/historical/funding, /v1/historical/oi, /v1/historical/lsr, /v1/historical/ohlcv.
GET /v1/dex/*
Pasangan trending berkuasa DexScreener, carian token, dan butiran pasangan (awam, tiada pengesahan). Titik akhir: /v1/dex/trending, /v1/dex/search, /v1/dex/token, /v1/dex/pair.
GET /v1/news/*
Kecerdasan berita: berita dasar/geopolitik/krypto diklasifikasikan ke dalam kategori impak, ditambah Ketakutan & Ketamakan (awam, tiada pengesahan). Titik akhir: /v1/news/trump, /v1/news/general, /v1/news/impact, /v1/news/fear-greed.
GET /whales
Mengembalikan data konsensus dompet paus: pecahan panjang/pendek, pendedahan notional total, 10 kedudukan teratas (Pro sahaja), dan kiraan dompet.
GET /signals
Mengembalikan aliran isyarat HIGH/MEDIUM terkini merentas semua aset yang dipantau. Berguna untuk pengimbasan peluang.
GET /v1/strategies/*
Rekod prestasi telus, baca sahaja untuk strategi perdagangan automatik yang dilaksanakan berdasarkan isyarat Smart Money — termasuk deriv40 Strategi SmartMoney Copytrade (account=9). Semua titik akhir mengambil parameter ?account=<id> dan mengembalikan JSON. Tiada pengesahan diperlukan (rekod prestasi awam).
Titik akhir
GET /v1/strategies/stats?account=9— metrik utama:total_trades,win_rate,profit_factor,total_pnl_usdt,account_growth_percent,initial_equity,current_equity,max_drawdown_portfolio,max_drawdown_trade.GET /v1/strategies/equity?account=9— lengkung ekuiti untuk carta:{ initial_equity, curve: [{ time, equity }] }.GET /v1/strategies/trades?account=9&limit=500— lejar perdagangan tertutup: tatasusunan (atau{trades:[…]}) bagisymbol,direction,entry_price,exit_price,pnl_usdt,pnl_percent,pnl_percent_net.GET /v1/strategies/active?account=9— kedudukan terbuka semasa: tatasusunan (atau{positions:[…]}) bagisymbol,side/direction,entry_price,unrealized_pnl.GET /v1/strategies/signals— pecahan jenis isyarat yang memberi makan strategi (kiraan / kemenangan / kadar_kemenangan / purata_pnl setiap jenis isyarat).
Prestasi lalu tidak menunjukkan hasil masa depan. Angka diisi balik lebih satu rejim ~3 bulan ditambah perdagangan langsung dan ditunjukkan pra-fi seperti yang dinyatakan.
GET /export
Muat turun data isyarat sejarah sebagai CSV untuk ujian balik. Parameter: symbol, from (unix ts), to (unix ts).
GET /health
Semakan kesihatan sistem. Mengembalikan kesegaran data untuk setiap sumber dan status API keseluruhan. Tiada pengesahan diperlukan.
"status": "ok",
"uptime_s": 1209600,
"sources": {
"bybit": { "lag_s": 42, "ok": true },
"binance": { "lag_s": 38, "ok": true },
"hyperliquid": { "lag_s": 61, "ok": true },
"onchain": { "lag_s": 290, "ok": true }
}
}
GET /usage
Mengembalikan statistik penggunaan API semasa anda: panggilan hari ini, jumlah bulanan, had kuota, dan masa tetapan semula.
POST /webhooks
Daftarkan URL HTTPS untuk menerima tolakan acara bertanda masa nyata apabila isyarat dicetuskan merentas aset yang dipantau. Penghantaran membawa X-SmartMoney-Event header dan tanda tangan HMAC-SHA256 dalam X-SmartMoney-Signature, dan cuba semula sehingga 3× dengan backoff.
Badan Permintaan
| Medan | Jenis | Penerangan |
|---|---|---|
| urlrequired | string | Titik akhir HTTPS untuk POST acara (mesti bermula dengan https://) |
| eventsrequired | array | Nama acara, e.g. ["HIGH","MEDIUM","VETO"] atau ["*"] |
| symbolsrequired | array | Simbol untuk ditapis, e.g. ["BTC","ETH"] atau ["*"] |
| secretrequired | string | Rahsia tandatangan anda, ≥ 16 aksara (disimpan di-hash) |
Mengesahkan tandatangan
Kunci HMAC ialah heks digest SHA-256 rahsia berdaftar anda. Kira HMAC-SHA256 badan permintaan mentah dengan kunci itu dan bandingkan (masa tetap) terhadap X-SmartMoney-SignatureLihat Panduan Pelaksanaan Webhook.
Kecerdasan
GET /analysis
Mengembalikan klasifikasi rejim pasaran berkuasa AI dengan pengesanan konflik isyarat. Menganalisis persetujuan silang isyarat, mengenal pasti perbezaan antara derivatif, on-chain, dan data paus, dan menghasilkan ringkasan bahasa semula jadi dengan faktor risiko yang memandang ke hadapan dan cadangan berasaskan jangka masa.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| symboldiperlukan | string | Simbol aset: BTC, ETH, atau SOL |
Contoh Respons
"ts": 1710940821,
"symbol": "BTC",
"regime": "late_cycle_divergence",
"regime_label": "Late Cycle — Signal Divergence",
"summary": "BTC berada dalam fasa kitaran lembu lewat dengan kekuatan on-chain bercanggah dengan derivatif yang melampau. Paus mengurangkan pendedahan sementara LSR runcit meningkat.",
"signal_conflicts": [
"Skor paus bearish sementara skor onchain bullish",
"Kadar pembiayaan pada paras tertinggi 3 bulan — risiko squeeze berpotensi"
],
"risk_factors": ["Pembiayaan tinggi", "Perbezaan OI", "Pengurangan paus"],
"recommendation": "Kurangkan pendedahan long, ketatkan stop. Elakkan long baharu di atas harga semasa.",
"time_horizon": "4h–12h"
}
GET /liquidations
Mengembalikan dua pandangan pelengkap: (1) leverage-projected levels — anggaran di mana kelompok pelupusan berada; dan (2) a realized_heatmap — REAL dilaksanakan intensiti pelupusan paksa (harga × masa), dikumpulkan secara langsung dari feed WebSocket pertukaran awam: Binance, OKX, Bybit, Bitget, BitMEX. Heatmap hadir apabila aliran mempunyai data untuk simbol (tiada dalam pasaran yang sangat tenang atau selepas permulaan).
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| simbolpilihan | string | Simbol aset (lalai BTC). Heatmap sebenar meliputi simbol perp yang aktif didagangkan. |
Contoh Respons
"symbol": "BTC",
"cascade_risk": "HIGH",
"nearest_long_liq_pct": -3.2,
"nearest_short_liq_pct": 4.1,
// Pelaksanaan pelarasan sebenar — langsung dari 5 pertukaran
"realized_heatmap": {
"window_minutes": 240, "price_min": 91000.0, "price_max": 99000.0,
"clusters": [ { "price": 93250.0, "notional": 4820000.0, "count": 37, "dominant_side": "long" } ],
"by_side": { "long": 6100000.0, "short": 2400000.0 },
"totals": { "total_notional": 8500000.0, "count": 214 },
"exchanges": { "binance": 120, "okx": 40, "bybit": 34, "bitget": 12, "bitmex": 8 }
}
}
cascade_risk, jarak terdekat, dan jumlah/dalam sisi yang direalisasikan. Pelan Pro: unjuran penuh levels tambah penuh realized_heatmap (matriks, kelompok per-harga, kiraan per-pertukaran). Anggaran unjuran menjawab "di mana stop berada"; heatmap yang direalisasikan menunjukkan "apa yang sebenarnya dilaraskan."GET /liquidations/heatmap
Awam heatmap pelarasan tahap harga. Mengembalikan matriks harga × masa gaya Coinglass bagi PELAKSANAAN SEBENAR pelarasan paksa, dikumpulkan mengikut harga di mana setiap pelarasan dicetak — dikumpulkan secara langsung dari suapan WebSocket pertukaran awam: Binance, OKX, Bybit, Bitget, BitMEX. Array clusters adalah output praktikal: baldi harga disusun mengikut notional yang dilaraskan, setiap satu ditanda dengan sisi dominannya. Data bergantung pada strim langsung — simbol yang sangat senyap atau pintu masuk yang baru dimulakan mengembalikan struktur kosong yang terbentuk dengan baik ditambah dengan note. Tahap yang ditunjukkan hanyalah pelarasan sebenar, tidak pernah dianggarkan.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| symbolpilihan | string | Simbol aset (lalai BTC). |
| window_minutespilihan | int | Tetingkap pandangan balik dalam minit (lalai 240, terhad kepada 5–1440). |
| price_bucketspilihan | int | Bilangan baldi harga (lalai 50, terhad kepada 5–100). |
Contoh Respons
"symbol": "BTC", "window_minutes": 240, "price_buckets": 50,
"price_min": 91000.0, "price_max": 99000.0, "price_bucket_size": 160.0,
"price_levels": [ 91080.0, 91240.0, … ], "time_buckets": [ … ],
"matrix": [ [ … ] ], "long_matrix": [ [ … ] ], "short_matrix": [ [ … ] ],
"clusters": [
{ "price": 93250.0, "notional": 4820000.0, "long_notional": 4100000.0,
"short_notional": 720000.0, "count": 37, "dominant_side": "long" }
],
"by_side": { "long": 6100000.0, "short": 2400000.0 },
"totals": { "long_liq_notional": 6100000.0, "short_liq_notional": 2400000.0, "total_notional": 8500000.0, "count": 214 },
"exchanges": { "binance": 120, "okx": 40, "bybit": 34, "bitget": 12, "bitmex": 8 },
"generated_at": 1710940200, "public": true
}
totals.count is 0, clusters kosong, dan medan note menerangkan sebabnya. Ia adalah rekod pelaksanaan likuidasi— bukan ramalan. Untuk anggaran "di mana letaknya hentian" yang diunjurkan, gunakan endpoint berautentikasi /liquidations endpoint.GET /liquidations/onchain
Dilaksanakan likuidasi pinjaman DeFi on-chain ditangkap terus dari nod penuh BSC + Avalanche kami — bebas daripada sebarang bot dagangan. Meliputi Venus/Cream dan Moolah di BSC, dan AAVE V3/V2, Benqi, BankerJoe, Granary dan Vinium di Avalanche. Tahap Pro tambahan mengembalikan at_risk posisi (bergantung pada bot, mungkin tiada).
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| chainpilihan | string | bsc atau avax. Abaikan untuk semua rantaian. |
| limitpilihan | integer | Baris maksimum (lalai 100, maks 500). Terbaru dahulu. |
Contoh Respons
"chain": "bsc", "count": 2,
"liquidations": [
{ "chain": "bsc", "protocol": "Venus", "borrower": "0x2be6…8dfa",
"debt_symbol": "DAI", "repay_usd": 426.15,
"collateral_symbol": "WBNB", "tx_hash": "0x718c…7c0e", "block": 89170816, "ts": 1710940200 }
],
"summary": {
"window_hours": 24, "enabled": true,
"by_protocol": { "bsc:Venus": { "count": 61, bayar_usd_diketahui: 148230.55 } },
nod: { bsc: { boleh_dihubungi: true, blok_utama: 89173010, jumlah_peristiwa: 61 } }
}
}
GET /smart-stop
Mengira tahap henti-rugi pintar berdasarkan peta haba pelupusan semasa, jalur turun naik, dan struktur pasaran. Mengembalikan cadangan henti berperingkat dan cadangan ambil-untung yang dikalibrasi kepada harga kemasukan dan toleransi risiko anda.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| symbolrequired | string | Simbol aset: BTC, ETH, atau SOL |
| directionrequired | string | Arah posisi: long atau short |
| entry_priceoptional | float | Harga kemasukan anda. Lalai kepada harga pasaran semasa jika ditinggalkan. |
| risk_pctoptional | float | Risiko maksimum yang boleh diterima sebagai % akaun. Lalai: 2.0 |
Contoh Respons
"symbol": "BTC",
"direction": "long",
"entry_price": 96420,
"stops": {
"tight": { "price": 95100, "note": "Di bawah struktur 1j. Terbaik untuk scalp." },
"recommended": { "price": 93800, "note": "Di bawah kelompok liq utama pada $94K. Henti swing standard." },
"wide": { "price": 91200, "note": "Di bawah zon permintaan 4j. Henti perdagangan posisi." }
},
"avoid_zones": [
{ "low": 94200, "high": 94800, "reason": "Kelompok pelupusan padat — risiko slip tinggi" }
],
"take_profit_suggestions": [
{ "tp1": 98500, "tp2": 101000, "tp3": 104200 }
]
}
recommended henti sahaja. Pelan Pro: Ketiga-tiga tahap henti, avoid_zones, dan cadangan ambil-untung penuh.GET /funding-arb
Mengenal pasti peluang arbitraj kadar pembiayaan antara pertukaran secara masa nyata. Mengembalikan peluang berperingkat dengan anggaran hasil tahunan, pasangan pertukaran optimum, dan tindakan lindung nilai yang diperlukan untuk menangkap spread.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| min_spreadoptional | float | Spread kadar pembiayaan minimum untuk dimasukkan (sebagai perpuluhan). Lalai: 0.01 |
| symboloptional | string | Penapis kepada aset tertentu. Tinggalkan untuk mengimbas semua aset yang disokong. |
Contoh Respons
"ts": 1710940821,
"opportunities": [
{
"symbol": "BTC",
"spread": 0.032,
"apr": 84.2,
"long_exchange": "hyperliquid",
"short_exchange": "bybit",
"action": "Long HYPE / Short BYBIT",
"estimated_profit_8h_usd": 26.4
}
]
}
Varian awam percuma Tiada pengesahan
Titik akhir awam tanpa kunci mengembalikan 10 peluang teratas dengan penyaring antara pertukaran langsung, sesuai untuk disematkan atau semakan pantas. Ia menggugurkan sejarah spread per-simbol dan medan berat dan dihidangkan dari cache 120-saat. Apabila tiada spread pembiayaan antara pertukaran wujud dalam tetingkap kesegaran, ia mengembalikan opportunities array dengan note — tiada data palsu.
"opportunities": [
{
simbol: OGN,
spread_pct: 0.297667,
annualized_apr: 325.95,
long_exchange: bybit,
short_exchange: hyperliquid,
estimated_profit_per_10k: 29.77,
risk_notes: Spread rendah — pastikan yuran tidak menghabiskan margin arbitraj.
}
],
scanned_symbols: 222,
ts: 1783268753,
public: True,
terhad: True
}
GET /smart-money/flow
Indeks arah berat kualiti indeks arah paus per simbol, dinilai -100 (wang paus condong pendek) kepada +100 (condong panjang). Dibina daripada ribuan dompet paus Hyperliquid yang dikesan — setiap satu diberi berat berdasarkan kadar kemenangan sejarah dan PnL serta dikurangkan oleh kebaruan. Ini adalah indeks kedudukan, bukan isyarat beli/jual atau ramalan harga. Simbol dengan sedikit dompet penyumbang dilabel thin dan dinilai dengan jujur. Laman langsung: smart-money-flow.html.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| simbolpilihan | string | Simbol tunggal (cth. BTC). Abaikan untuk mendapatkan semua simbol yang dikesan dinilai mengikut |skor|. |
| window_hourspilihan | int | Tetingkap penilaian, dikunci kepada 1..168. Lalai 24. |
Contoh Respons
simbols: [
{
simbol: SPX,
skor: -90.93,
arah: strong_short,
n_wallets: 26,
long_usd: 184200.0, short_usd: 2410000.0,
quality_weighted: True,
sample_quality: kaya,
top_contributors: [ { dompet: 0x31ca…974b, arah: pendek, value_usd: 5338.25, berat: 0.4948 } ]
}
],
window_hours: 24,
quality_weighted: True,
ts: 1783270000,
nota: Indeks kedudukan arah paus berat kualiti (-100..+100). Bukan ramalan harga atau isyarat beli/jual.
}
top_contributors. Berat dompet dikunci kepada [0.25,1.0]; PnL adalah proksi tidak direalisasikan daripada snapshot kedudukan terkini.GET /v1/whales/crowding
Gabungan konteks kedudukan & kesesakan paus per simbol, digabungkan merentasi Hyperliquid + GMX v2 + Jupiter Perps. Mengembalikan notional kasar/bersih, kecenderungan arah, kiraan dompet & venue, kepekatan kedudukan (bahagian top-3 + HHI), purata leveraj berwajaran, dan baldi kedekatan pelupusan (notional USD yang berada dalam 5% dan 10% daripada harga pelupusan yang dianggarkan, dibahagi panjang/pendek). Ini adalah konteks, bukan isyarat arah. Medan yang tidak boleh diperoleh adalah null dan dipaparkan sebagai — — cth. lev_wavg/crowding_index apabila tiada kedudukan membawa leveraj. Jarak pelupusan adalah anggaran margin terpencil (pct_to_liq ≈ 1/lev + upnl/notional − mmr, mmr = 0.01), bukan harga pelupusan yang dilaporkan oleh pertukaran.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| min_notionalpilihan | float | Notional kasar gabungan minimum (USD) untuk simbol dimasukkan. Lalai: 1000000. |
Contoh Permintaan
Contoh Respons
"ok": True, "ts": 1783423500, min_notional: 1000000, n_symbols: 92,
symbols: [
{
symbol: BTC,
gross_usd: 2447900000.0, net_usd: -51000000.0, skew: -0.021,
n_whales: 414, n_venues: 3,
venues: {
hl: { gross: 1900000000.0, net: -40000000.0, n_whales: 272 },
gmx: { gross: 320000000.0, net: -6000000.0, n_whales: 59 },
jupiter: { gross: 227900000.0, net: -5000000.0, n_whales: 83 }
},
conc_top3: 0.159, hhi: 0.011, lev_wavg: 19.1,
liq_within_5pct: { long: 621700000.0, short: 665600000.0 },
liq_within_10pct: { long: 840000000.0, short: 910000000.0 },
crowding_index: 0.003
}
],
caveats: [ Jarak pelupusan adalah anggaran margin terpencil, bukan dilaporkan oleh pertukaran. ]
}
skew is net/gross ∈ [-1,1]; crowding_index = |skew|·conc_top3·min(lev/20,1). Hanya platform yang benar-benar wujud muncul dalam venues. Posisi tanpa leverage dikecualikan daripada baldi liq dan tidak dianggap. Panggilan tanpa nama menerima 10 simbol teratas mengikut gross (dengan gated: true); Trader+ menerima senarai penuh.GET /v1/options/gex
Dealer pendedahan gamma (GEX) analitik untuk BTC & ETH, dikira secara langsung daripada rantaian pilihan awam Deribit (tiada pengesahan). Mengembalikan GEX peniaga bersih setiap strike (konvensyen peniaga-pendek SpotGamma), tahap flip gamma (strike di mana GEX bersih kumulatif melintasi sifar), struktur jangka IV (vol tersirat ATM mengikut hari-hingga-tamat), dan kecondongan IV hadapan-tamat (proksi 25Δ risiko terbalik). Rejim GEX adalah positive (peniaga panjang gamma → penekan vol) atau negative (penguat vol). Lengkap berdikari — dikira semula pada setiap panggilan, tiada kebergantungan pada pangkalan data tersimpan.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| symbolpilihan | string | BTC atau ETH sahaja. Lalai: BTC. |
Contoh Permintaan
Contoh Respons
"symbol": "BTC", "available": true, "spot": 63203.0,
"net_gex": 18240000.0, "regime": "positive",
"gamma_flip": 64919.82, "gamma_flip_pct": 2.72,
"call_gex": 31200000.0, "put_gex": -12960000.0,
"by_strike": [
{ "strike": 60000, "net_gex": -2100000.0 },
{ "strike": 65000, "net_gex": 4800000.0 }
],
"term_structure": [
{ "expiry": "8JUL26", "dte": 0.76, "atm_iv": 62.1 },
{ "expiry": "27MAR26", "dte": 14.2, "atm_iv": 58.4 }
],
"skew": {
"expiry": "8JUL26", "dte": 0.76,
"put_iv": 69.69, "atm_iv": 62.1, "call_iv": 55.34,
"risk_reversal": 14.35, "bias": "downside_fear"
}
}
available: false dengan panel kosong — GEX tidak pernah direka. Kecondongan IV menggunakan proksi strike tetap ±10% untuk 25Δ (delta-25 sebenar memerlukan penyelesaian delta setiap strike); mencukupi untuk paparan, didokumenkan sebagai anggaran.GET /v1/liquidations/simulate
Interaktif ujian tekanan lata pelikuidanDiberikan pergerakan harga hipotesis, mengembalikan anggaran posisi berleveraj yang akan dilikuidasi, volum paksaan mengikut tahap harga/sisi/bursa, dan bacaan kedalaman lata. Pergerakan ke bawah melikuidasi long yang harga liq-nya berada pada/atas sasaran; pergerakan ke atas melikuidasi short yang harga liq-nya berada pada/bawahnya. Dua kaedah bebas digabungkan: harga pelikuidan tepat dari ikan paus Hyperliquid yang dijejaki nyata leveraj/kemasukan, ditambah kelompok jalur OI statistik setiap bursa (leveraj ramai disimpulkan dari pembiayaan). Semua dilabel dengan jelas estimated: true — ia tidak dapat mengetahui margin setiap akaun, cross vs isolated, margin tambahan, atau ADL.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| symbolpilihan | string | Simbol aset. Lalai: BTC. |
| move_pctpilihan | float | Pergerakan harga hipotesis sebagai peratus (negatif = turun, positif = naik). Lalai: -5. |
Contoh Permintaan
Contoh Respons
"ok": true, "estimated": true, "symbol": "BTC",
"ref_price": 63000.0, "move_pct": -5.0, "target_price": 59850.0,
"triggered_notional_usd": 380000000.0,
"cascade_depth": 0.029, "cascade_bucket": "low",
"by_exchange": { "hyperliquid": 260000000.0, "binance": 80000000.0, "bybit": 40000000.0 },
"by_side": { "long": 380000000.0, "short": 0.0 },
"clusters": [
{ "price": 60100.0, "side": "long", "notional_usd": 42000000.0, "whale_usd": 18000000.0, "oi_usd": 24000000.0 }
],
"whale_positions_used": 272, "exchanges": 3,
"realized_context": { "available": true, "coverage_hours": 17.8, "by_side_24h": { "long": 6100000.0, "short": 2400000.0 } },
"methodology": { "disclaimer": "Estimated — cannot know per-account margin, cross vs isolated, add-margin, or ADL." }
}
ok: true, empty: true dengan mesej dalam bahasa Inggeris yang mudah, bukan bar palsu. realized_context adalah sampel muda dan berkembang dari aliran pelaksanaan paksa secara langsung, hanya ditunjukkan sebagai konteks — ia tidak pernah menjadikan unjuran "direalisasikan."GET "/v1/wallet/{addr}/profile"
Profil dompet merentas venue dibina sepenuhnya dari snapshot posisi paus yang dijejaki secara langsung. Untuk paus Hyperliquid yang dijejaki, mengembalikan posisi terbuka semasa, siri masa PnL tidak direalisasikan / pendedahan / kiraan posisi siri masa, garis masa aktiviti BUKA/TUTUP/FLIP (dibina semula dengan membezakan snapshot berturut-turut), label papan pemimpin HL yang dinyahkod, dan ringkasan buku terbuka. Halaman langsung: "wallet-profiler.html".
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| "addr""required" | "string" | Alamat dompet (segmen laluan), contohnya /v1/wallet/0x3bcae23e…/profile. |
| "days""optional" | "integer" | Tetingkap pandangan balik untuk siri & garis masa. Lalai: 30. |
Contoh Permintaan
Contoh Respons
"ok": "true", "wallet": "0x3bcae23e…", "tracked": "true",
"first_seen_ts": 1782827733, "latest_snapshot_ts": 1783418468, "as_of": 1783418468,
"hyperliquid": {
"label": { "name": "Andre is back", "score": 74,
"window_pnl_usd": 1307000, kadar_kemenangan_peratus: 71, urusniaga: 42 },
posisi: [
{ tempat: hyperliquid, simbol: ETH, arah: short,
saiz: 1200.0, harga_masuk: 1800.0, keuntungan_rugi_tidak_realisasi: 34800.0,
leveraj: 20.0, nilai_usd: 2160000.0 }
],
siri: [ { ts: 1783330000, keuntungan_rugi_tidak_realisasi: 42000.0, pendedahan_usd: 18400000.0, posisi: 5 } ],
garis_masa: [ { ts: 1783400000, peristiwa: flip, simbol: ETH,
arah: short, dari_arah: long, nilai_usd: 2160000.0 } ],
ringkasan: {
posisi_terbuka: 5, dalam_keuntungan: 3, dalam_kerugian: 2, long: 0, short: 5,
jumlah_keuntungan_rugi_tidak_realisasi: -12000.0, jumlah_pendedahan_usd: 21000000.0, leveraj_campuran: 19.9,
window_hari: 30, snapshot_dalam_window: 474,
keuntungan_rugi_realisasi: None, nota_keuntungan_rugi_realisasi: Tidak boleh diperoleh — hanya snapshot terbuka yang dilihat, tidak pernah pengisian penutupan.
}
}
}
pnl adalah penanda pasaran tidak realisasi HL sendiri, value_usd adalah notional terbuka. Keuntungan & Rugi Realisasi setiap pusingan tidak tersedia (kami hanya melihat snapshot terbuka, tidak pernah pengisian penutupan) dan ditunjukkan sebagai null / —; peristiwa CLOSE garis masa tidak membawa tuntutan P&L. Alamat yang sah tetapi tidak dikesan mengembalikan tracked: false dengan nota; alamat tidak sah mengembalikan ok: false, error: "invalid_address" (HTTP 400). Label HL-leaderboard adalah kedudukan window HL sendiri pada masa penemuan, tidak dikira oleh kami.GET /flows
Mengembalikan data aliran modal merentas aset yang menunjukkan corak putaran antara BTC, ETH, dan SOL merentas pelbagai window masa. Berguna untuk mengenal pasti aset mana yang mengumpul modal dan yang sedang diagihkan pada setiap masa.
Contoh Respons
ts: 1710940821,
aliran: {
BTC: { 1j: 142000000, 4j: 380000000, 12j: -90000000, 24j: 220000000 },
ETH: { 1j: -38000000, 4j: -110000000, 12j: 55000000, 24j: -80000000 },
SOL: { 1j: 12000000, 4j: 29000000, 12j: 18000000, 24j: 44000000 }
},
putaran_dikesan: [
Modal berputar dari ETH ke BTC dalam window 4j,
Pengumpulan SOL konsisten merentas semua window
]
}
GET /whale-events
Mengembalikan perubahan posisi paus yang signifikan — pembukaan, penutupan, dan flip arah — dikesan merentas dompet dan alamat on-chain yang dikesan dalam window look-back yang ditentukan.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| simbolpilihan | string | Tapis mengikut aset. Abaikan untuk semua aset yang dipantau. |
| kepentinganpilihan | string | Tapis mengikut kepentingan peristiwa: high, medium, atau all. Lalai: all |
| jampilihan | integer | Window look-back dalam jam. Lalai: 24 |
Contoh Respons
simbol: BTC,
ringkasan: {
flip_ke_long: 3,
flip_ke_short: 1,
pembukaan_baru: 7,
penutupan: 2
},
peristiwa: [
{
jenis: flip_long,
dompet: 0xWhale...a4f2,
arah: long,
size_usd: 4200000,
ts: 1710938400
}
]
}
summary objek sahaja. Pelan Pro: Penuh events suapan dengan pengenal pasti dompet, saiz, dan cap masa.GET /regimes/history
Mengembalikan data klasifikasi rejim sejarah untuk aset tertentu. Gunakan ini untuk menguji prestasi jenis rejim tertentu secara sejarah, berapa lama setiap jenis rejim biasanya bertahan, dan bagaimana peralihan rejim berlaku dari masa ke masa.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| symbolpilihan | string | Simbol aset. Lalai: BTC |
| regimepilihan | string | Tapis kepada jenis rejim tertentu, contohnya late_cycle_divergence. Abaikan untuk semua rejim. |
| dayspilihan | integer | Tetingkap lihat-balik dalam hari. Lalai: 30. Maksimum: 365 |
Contoh Respons
"symbol": "BTC",
"current_regime": "late_cycle_divergence",
"regime_summary": {
"late_cycle_divergence": { "occurrences": 4, "avg_duration_h": 38, "avg_return_pct": -2.1 },
"accumulation": { "occurrences": 6, "avg_duration_h": 72, "avg_return_pct": 5.4 },
"breakout": { "occurrences": 3, "avg_duration_h": 18, "avg_return_pct": 9.
Contoh Respons
"overall_status": "ok",
"ts": 1710940821,
"exchanges": {
"bybit": { "status": "ok", "latency_ms": 42, "error_rate_1h": 0.0, "last_data_age_s": 18 },
"binance": { "status": "ok", "latency_ms": 38, "error_rate_1h": 0.0, "last_data_age_s": 22 },
"hyperliquid": { "status": "degraded", "latency_ms": 310, "error_rate_1h": 0.04, "last_data_age_s": 95 },
"okx": { "status": "ok", "latency_ms": 55, "error_rate_1h": 0.0, "last_data_age_s": 30 }
}
}
GET /sentiment
Mengembalikan indeks Takut & Tamak masa nyata (0-100) yang dikira daripada sentimen derivatif, aktiviti ikan paus, turun naik, dan isyarat sosial. Termasuk pecahan komponen dan sejarah 24 jam untuk analisis trend.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| symbolpilihan | string | Simbol aset. Lalai: BTC |
Contoh Respons
"symbol": "BTC",
"score": 72,
"label": "Greed",
"components": {
"volatility": 65,
"momentum": 78,
"derivatives": 70,
"whale_activity": 75,
"social": 68
},
"history_24h": [
{ "ts": 1710940800, "score": 68, "label": "Greed" },
{ "ts": 1710937200, "score": 65, "label": "Greed" }
],
"ts": 1710940821
}
Integrasi
GET /tradingview/setup
Mengembalikan setup integrasi TradingView peribadi anda: URL webhook, rahsia untuk pengesahan, dan penunjuk Pine Script siap guna yang bersambung terus ke Smart Money API. Salin-tampal Pine Script ke TradingView untuk memaparkan isyarat kami pada sebarang carta.
Contoh Respons
"webhook_url": "https://api.smartmoneyapi.com/v1/tradingview/webhook",
"webhook_secret": "tvs_a1b2c3...",
"pine_scripts": {
"composite_indicator": "// Smart Money Composite v1\n//@version=5\nindicator(...)...",
"whale_activity": "// Whale Activity Overlay v1\n...",
"funding_dashboard": "// Funding Rate + LSR Dashboard v1\n..."
}
}
POST /tradingview/webhook
Menerima amaran TradingView, memprosesnya melalui /confirm, dan mengembalikan pengesahan. TradingView tidak boleh menghantar header tersuai, jadi sahkan dengan memasukkan webhook anda secret dalam badan JSON (endpoint ini tidak menggunakan X-API-Key). Respons membungkus pengesahan dan menambah tahap atas action daripada CONFIRMED (keyakinan daemon HIGH/MEDIUM) atau VETOED.
Badan Permintaan
"secret": "your_webhook_secret",
"symbol": "BTC",
"direction": "long",
"timeframe": "1h",
"strategy": "EMA crossover",
"price": 67500.0
}
Diperlukan: secret, symbol, direction (long|short). Pilihan: source, timeframe, strategy, price.
Penyuaian Peribadi
GET /preferences
Mengembalikan tetapan penyuaian peribadi semasa termasuk parameter dagangan lalai, profil risiko, senarai pantau, dan keutamaan pemberitahuan.
Kemaskini keutamaan dengan menghantar badan JSON dengan sebarang subset medan di bawah. Medan yang tidak disertakan mengekalkan nilai semasa.
Medan Keutamaan
| Medan | Jenis | Keterangan |
|---|---|---|
| default_trade_size_usd | float | Saiz posisi lalai dalam USD untuk pengiraan Kelly dan smart-stop |
| risk_tolerance | string | conservative, moderate, atau aggressive |
| default_risk_pct | float | Risiko lalai setiap dagangan sebagai % akaun. Digunakan oleh /smart-stop apabila risk_pct ditinggalkan |
| watchlist | array | Senarai teratur simbol aset, cth. ["BTC","ETH","SOL"] |
| notification_email | string | Alamat emel untuk penghantaran amaran |
| timezone | string | Rentetan zon masa IANA, cth. America/New_York |
"default_trade_size_usd": 5000,
"risk_tolerance": "moderate",
"default_risk_pct": 1.5,
"watchlist": ["BTC", "ETH", "SOL"]
}
GET /watchlist
Mengembalikan snapshot status pengesahan dan metrik risiko utama untuk semua simbol dalam senarai pantau anda yang dikonfigurasi. Memberikan gambaran pelbagai aset tanpa perlu memanggil /confirm secara berasingan untuk setiap simbol.
Contoh Respons
"ts": 1710940821,
"watchlist": [
{
"symbol": "BTC",
"confidence": "HIGH",
"action": "CONFIRM",
"regime": "accumulation",
"cascade_risk": "LOW"
},
{
"symbol": "ETH",
"confidence": "MEDIUM",
"action": "REDUCE",
"regime": "late_cycle_divergence",
"cascade_risk": "HIGH"
},
{
"symbol": "SOL",
"confidence": "HIGH",
"action": "CONFIRM",
"regime": "breakout",
"cascade_risk": "MEDIUM"
}
]
}
Penstriman Masa Nyata (Swap Langsung)
Stream pertukaran DEX ≥ $500 dikesan secara masa nyata dari nod BSC dan Avalanche kami sendiri. Dua pengangkutan tersedia: aliran Server-Sent Events (SSE) awam untuk klien percuma/pelayar, dan aliran WebSocket berlatensi rendah untuk lapisan berbayar. Acara disiarkan dalam beberapa saat selepas dimasukkan ke dalam blok.
Aliran SSE Awam (Percuma)
Tiada pengesahan diperlukan. Sokongan asli EventSource dalam semua pelayar moden. Pelayan mengeluarkan swap acara dan degupan jantung berkala untuk mengekalkan sambungan.
es.addEventListener("swap", e => {
const swap = JSON.parse(e.data);
console.log(swap.chain, swap.pair, swap.amount_usd);
});
WebSocket Firehose (Berbayar)
Pengesahan (disyorkan): jangan letak kunci jangka panjang anda dalam URL — ia akan dicatat oleh proksi dan disimpan dalam sejarah pelayar. Sebaliknya, hantar kunci anda ke /v1/ws/ticket menggunakan X-API-Key header yang selamat, kemudian buka soket dengan ticket sekali guna yang dikembalikan (sah ~60s, boleh digunakan sekali sahaja). Klien pelayan yang boleh menetapkan header boleh menghantar X-API-Key langsung semasa berjabat tangan. Kunci lapisan percuma menerima 402 payment_required respons. Satu hello bingkai dihantar semasa sambungan dengan lapisan anda dan ambang siaran.
const r = await fetch("https://api.smartmoneyapi.com/v1/ws/ticket", {
method: "POST", headers: { "X-API-Key": "sm_xxx" }
});
const { ticket } = await r.json();
// 2. Buka soket dengan tiket sekali guna
const ws = new WebSocket(`wss://api.smartmoneyapi.com/v1/ws/live-swaps?ticket=${ticket}`);
ws.onmessage = e => {
const swap = JSON.parse(e.data);
if (swap.type === "swap") console.log(swap);
};
Pengesahan WebSocket (tiket)
Mengapa: jangan letak kunci API anda dalam URL WebSocket — rentetan pertanyaan dicatat oleh proksi, penyeimbang beban, dan disimpan dalam sejarah pelayar. Sebaliknya, tukar kunci anda untuk tiket jangka pendek, sekali guna melalui POST yang disahkan biasa, kemudian sambung dengan tiket tersebut.
Aliran: POST ke /v1/ws/ticket dengan X-API-Key header anda → terima { "ticket": "…", "expires_in": 60 }. Kemudian buka wss://api.smartmoneyapi.com/v1/ws/live-swaps?ticket=<ticket>. Tiket adalah sekali guna dan luput dalam ~60 saat. Pelanggan sisi pelayan yang boleh menetapkan pengepala permintaan boleh menghantar X-API-Key secara langsung pada jabat tangan WebSocket — tiket tidak diperlukan.
Menghasilkan tiket sekali guna untuk jabat tangan WebSocket yang disahkan. Sahkan dengan X-API-Key pengepala (kunci anda tidak pernah meninggalkan pengepala permintaan). Tiket yang dikembalikan boleh ditebus sekali pada /v1/ws/live-swaps sebelum ia luput.
"https://api.smartmoneyapi.com/v1/ws/ticket"
Contoh Respons
"ticket": "wst_9f3c1a8e4b2d…",
"expires_in": 60
}
Medan Respons
| Medan | Jenis | Keterangan |
|---|---|---|
| ticket | string | Token sekali guna untuk ditambahkan sebagai ?ticket= pada URL WebSocket. Ditebus sekali, kemudian tidak sah. |
| expires_in | number | Saat sehingga tiket luput (~60). Hasilkan tiket baru setiap percubaan sambungan. |
Nota: warisan ?key= pengesahan parameter-query adalah tidak lagi diterima pada titik akhir WebSocket atas sebab keselamatan. Gunakan tiket (pelanggan penyemak imbas) atau X-API-Key pengepala jabat tangan (pelanggan sisi pelayan).
Snapshot REST
Mengembalikan N pertukaran siaran terakhir dari penimbal bergulir. Berguna untuk lukisan pertama pada papan pemuka sebelum sambungan aliran dibuka. Juga tersedia: /v1/live-swaps/status untuk statistik penyiar.
Skema Acara
| Medan | Jenis | Keterangan |
|---|---|---|
| chain | string | bsc atau avalanche |
| dex | string | Nama penghala (cth. pancakeswap_v2, traderjoe) atau unknown_dex |
| penukar | rentetan | Alamat 0x penuh dompet yang melaksanakan penukaran |
| penukar_pendek | rentetan | Bentuk ringkas untuk paparan (cth. 0xb300…028d) |
| url_penukar | rentetan | Pautan langsung kepada penukar di penerokaan blok rantaian |
| hash_tx | rentetan | Hash transaksi |
| url_penerokaan | rentetan | Pautan langsung kepada transaksi di BscScan / Snowtrace |
| token_masuk | rentetan | Simbol token yang dijual (cth. USDT) |
| token_keluar | rentetan | Simbol token yang dibeli |
| jumlah_usd | nombor | Nilai USD penukaran (minimum: $500) |
| pasangan | rentetan | Label pasangan berformat (cth. USDT → USDC) |
| blok | nombor | Nombor blok di mana penukaran dilombong |
| tanda_waktu | nombor | Saat epok Unix |
| kepentingan | rentetan | low / medium / high / critical berdasarkan saiz USD |
| jujukan | nombor | Nombor jujukan siaran monotonik — gunakan untuk pengesanan jurang |
POST /alerts/conditions
Cipta peraturan amaran tersuai yang dicetuskan apabila metrik tertentu melintasi ambang. Amaran dihantar melalui webhook, e-mel, atau suapan pemberitahuan dashboard bergantung pada keutamaan anda.
Mengembalikan senarai semua keadaan amaran yang dikonfigurasi dengan ID, definisi, dan status semasa mereka.
Buang secara kekal keadaan amaran mengikut ID.
Mengembalikan peristiwa pencetus amaran terkini dengan tanda waktu, keadaan yang sepadan, dan nilai metrik pada masa pencetus.
Cipta Amaran — Badan Permintaan
| Medan | Jenis | Penerangan |
|---|---|---|
| namadiperlukan | string | Label yang boleh dibaca manusia untuk amaran ini (maks 64 aksara) |
| metrikdiperlukan | string | Metrik untuk dipantau. Lihat jadual metrik yang tersedia di bawah. |
| simbolpilihan | string | Konteks aset. Diperlukan untuk metrik berangkauan simbol seperti funding_rate. |
| pengendalidiperlukan | string | Pengendali perbandingan: gt, lt, eq, crosses_above, crosses_below |
| ambangdiperlukan | float | Nilai berangka untuk membandingkan metrik |
| penghantaranpilihan | string | Saluran penghantaran, contohnya telegram (lalai) atau webhook |
| minit_penyejukanpilihan | integer | Minit minimum antara pencetus semula (lalai 60) |
Senarai metrik dan pengendali yang sah dikembalikan oleh GET /v1/alerts/conditions sebagai available_metrics dan available_operators.
Metrik Tersedia
| Metrik | Keterangan |
|---|---|
| kadar_pembiayaan | Kadar pembiayaan semasa untuk simbol (sebagai perpuluhan) |
| nisbah_panjang_pendek_global | Nisbah panjang/pendek global untuk simbol |
| peratus_panjang | Peratusan akaun bersih panjang untuk simbol |
| nisbah_panjang_pendek_pedagang_teratas | Nisbah panjang/pendek pedagang teratas untuk simbol |
| nisbah_pembeli_pembuat | Nisbah beli/jual pembuat untuk simbol |
| mvrv | Nisbah Nilai Pasaran kepada Nilai Direalisasikan (BTC/ETH) |
| sopr | Nisbah Keuntungan Output Dibelanjakan (BTC/ETH) |
| isyarat_aliran_bersih_pertukaran | Isyarat aliran bersih on-chain pertukaran |
| isyarat_pengumpulan | Isyarat pengumpulan on-chain |
| peratus_panjang_paus | Peratusan dompet paus yang dikesan memegang posisi panjang untuk simbol |
| bilangan_dompet_paus | Bilangan dompet paus yang dikesan dengan posisi dalam simbol |
| skor_komposit_panjang | Skor komposit untuk simbol yang ditanya dalam arah panjang |
| skor_komposit_pendek | Skor komposit untuk simbol yang ditanya dalam arah pendek |
| jarak_pembiayaan | Jarak pembiayaan merentas tempat untuk simbol |
"name": "Lonjakan kadar pembiayaan BTC",
"metric": "funding_rate",
"symbol": "BTC",
"operator": "gt",
"threshold": 0.05
}
GET /kelly
Mengembalikan cadangan saiz posisi Kriteria Kelly yang dikalibrasi kepada prestasi isyarat sejarah untuk simbol, tahap keyakinan, dan arah yang diberikan. Mengasaskan saiz posisi pada kadar kemenangan empirikal untuk mengelakkan over-leverage.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| simboldiperlukan | string | Simbol aset: BTC, ETH, atau SOL |
| keyakinanpilihan | string | Tahap keyakinan isyarat untuk model: HIGH, MEDIUM, atau LOW. Lalai: HIGH |
| arahpilihan | string | Arah dagangan: long atau short. Lalai: long |
| saiz_akaunpilihan | float | Saiz akaun dalam USD untuk pengiraan suggested_size_usd. Lalai: 10000 |
Contoh Respons
"symbol": "BTC",
"confidence": "TINGGI",
"direction": "panjang",
"win_rate": 0.68,
"avg_reward_risk_ratio": 2.1,
"kelly_fraction": 0.36,
"half_kelly": 0.18,
"suggested_size_usd": 1800,
"samples": 142,
"note": "Half-Kelly disyorkan untuk dagangan langsung untuk mengambil kira ralat anggaran."
}
GET /performance
Mengembalikan statistik ketepatan sejarah bagi isyarat yang dikeluarkan oleh API, dipecahkan mengikut tahap keyakinan. Berguna untuk memahami kebolehpercayaan isyarat sebelum melaburkan modal.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| simbolpilihan | string | Tapis mengikut aset. Abaikan untuk statistik agregat merentas semua simbol. |
| haripilihan | integer | Tetingkap pandangan balik dalam hari. Lalai: 30 |
Contoh Respons
"simbol": "BTC",
"period_days": 30,
"by_confidence": {
"HIGH": { "win_rate": 0.71, "samples": 58, "avg_return_pct": 3.4 },
"MEDIUM": { "win_rate": 0.54, "samples": 84, "avg_return_pct": 1.2 }
}
}
Statistik & Isyarat
GET /v1/stats
Statistik prestasi jujur seluruh laman web yang diperoleh daripada smart_money_confirm hasil panggilan berbeza. Mengembalikan kadar kemenangan pada tahap keyakinan TINGGI dan SEDERHANA, ketepatan keseluruhan, faktor keuntungan, dan pecahan mengikut simbol. Semua angka adalah dalam sampel sepanjang tetingkap penilaian; rujuk calibration.html untuk konteks dan metodologi ujian ke hadapan.
Contoh Respons
"high_winrate": 0.714,
"high_winrate_n": 14,
"medium_winrate": 0.530,
"medium_winrate_n": 34,
"overall_accuracy": 0.613,
"overall_accuracy_n": 48,
"profit_factor": 1.77,
"avg_win_pct": 4.2,
"winrate_horizon": "24h",
"winrate_basis": "panggilan pengesahan berbeza, hasil diselesaikan dalam 24 jam",
"winrate_by_symbol": {
"BTC": { "win_rate": 0.68, "n": 22 },
"ETH": { "win_rate": 0.55, "n": 18 },
"SOL": { "win_rate": 0.60, "n": 8 }
},
"forward_holdout": {
"win_rate": 0.59,
"high_win_rate": 0.70,
"high_n": 10,
"is_distinct_from_insample": false
}
}
forward_holdout adalah satu-satunya nombor yang terkumpul pada data yang belum pernah dilihat oleh penilai — perhatikan pertumbuhannya dari masa ke masa. Lihat calibration.html untuk metodologi penuh dan sempadan dalam sampel / ujian ke hadapan.GET /v1/signals/performance
Penjejakan hasil isyarat merentas pelbagai ufuk resolusi (4h, 12h, 24h, 72h). Mengembalikan kadar hit setiap ufuk, jumlah bilangan isyarat, dan pecahan mengikut jenis isyarat.
Parameter
| Parameter | Jenis | Penerangan |
|---|---|---|
| haripilihan | integer | Tetingkap pandangan balik dalam hari. Lalai: 30 |
| signal_typepilihan | string | Tapis mengikut jenis, contohnya smart_money_confirm atau regime_flip. Abaikan untuk semua jenis. |
| simbolpilihan | string | Tapis mengikut simbol aset, contohnya BTC. Abaikan untuk agregat merentas semua simbol. |
Contoh Respons
"signal_type": "smart_money_confirm",
"simbol": "BTC",
"days": 30,
"total_signals": 48,
horizon: {
4h: { kadar_hit: 0.65, diselesaikan: 46 },
12h: { kadar_hit: 0.61, diselesaikan: 44 },
24h: { kadar_hit: 0.58, diselesaikan: 40 },
72h: { kadar_hit: 0.54, diselesaikan: 32 }
},
pemecahan_jenis: {
pengesahan_wang_pintar: { kiraan: 35, kadar_hit_24h: 0.61 },
pembalikan_rejim: { kiraan: 13, kadar_hit_24h: 0.47 }
}
}
GET /v1/signals/recent
Suapan isyarat HIGH dan MEDIUM yang baru diterbitkan merentasi semua simbol yang dipantau. Setiap entri termasuk jenis isyarat, tahap keyakinan, arah, dan status resolusi jika ada.
Contoh Respons
isyarat: [
{
id: 1042,
simbol: BTC,
arah: long,
jenis_isyarat: pengesahan_wang_pintar,
keyakinan: TINGGI,
komposit: 0.74,
ts: 1710940821,
diselesaikan: true,
hasil_24h: menang
}
],
kiraan: 50
}
GET /v1/signals/{id}/outcome
Hasil yang diselesaikan untuk satu isyarat mengikut ID numeriknya. Mengembalikan hit/miss pada setiap horizon resolusi (4h, 12h, 24h, 72h) bersama harga pada masa isyarat dan pada resolusi.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| iddiperlukan | integer | ID Isyarat (segmen laluan), contohnya /v1/signals/1042/outcome |
Contoh Respons
id: 1042,
simbol: BTC,
arah: long,
keyakinan: TINGGI,
harga_masuk: 63200.0,
ts: 1710940821,
hasil: {
4h: { hasil: menang, harga: 64100.0, pct: 1.41 },
12h: { hasil: menang, harga: 65200.0, pct: 3.16 },
24h: { hasil: menang, harga: 65800.0, pct: 4.11 },
72h: { hasil: belum selesai, harga: null, pct: null }
}
}
GET /v1/confirm-winrate
Pemecahan kadar kemenangan isyarat pengesahan untuk kunci API pengguna yang diautentikasi. Mengembalikan kadar kemenangan panggilan berbeza pada setiap tahap keyakinan, faktor keuntungan, dan angka per-simbol. Memerlukan X-API-Key header.
Contoh Permintaan
"https://api.smartmoneyapi.com/v1/confirm-winrate"
Contoh Respons
kadar_kemenangan_tinggi: 0.714,
n_tinggi: 14,
kadar_kemenangan_sederhana: 0.530,
medium_n: 34,
overall_accuracy: 0.613,
overall_n: 48,
profit_factor: 1.77,
winrate_horizon: 24h,
by_symbol: {
BTC: { win_rate: 0.68, n: 22 },
ETH: { win_rate: 0.55, n: 18 }
}
}
Shadow Gate
Buku keputusan peribadi yang tidak berubah dan hanya boleh ditambah. Serahkan keputusan dagangan anda sebelum atau selepas melaksanakannya; sistem mengira skor pengesahan terhadap enjin Smart Money dan menambah barisan kekal. Gunakannya untuk membina rekod masa yang jujur tentang sejauh mana isyarat API sejajar dengan kemasukan anda — bebas sepenuhnya daripada kolam kadar kemenangan global. Respons peringkat Percuma dan Peniaga mempunyai medan bukti dikeluarkan; Pro mengembalikan pecahan penuh. Kelewatan peringkat terpakai untuk data peringkat Percuma.
Serahkan keputusan. Idempoten pada Idempotency-Key tajuk permintaan — menghantar semula kunci yang sama mengembalikan barisan sedia ada tanpa mencipta pendua. Sistem segera memanggil enjin pengesahan dan menambah keputusan sebagai barisan buku yang tidak berubah.
Badan Permintaan
| Medan | Jenis | Keterangan |
|---|---|---|
| symboldiperlukan | string | Simbol aset, contohnya BTC |
| sidediperlukan | string | Arah dagangan: long atau short |
| strategy_idpilihan | string | Label strategi yang ditentukan oleh pemanggil (maks 64 aksara). Disimpan seperti yang diberikan untuk pengumpulan dan penapisan. |
Contoh Permintaan
-H "X-API-Key: sm_your_key" \
-H "Idempotency-Key: my-signal-20260701-001" \
-H "Content-Type: application/json" \
-d '{"symbol":"BTC","side":"long","strategy_id":"ema_crossover"}' \
"https://api.smartmoneyapi.com/v1/shadow-gate/decisions"
Contoh Respons
"id": 318,
"symbol": "BTC",
"side": "long",
"strategy_id": "ema_crossover",
"decision": "CONFIRM",
"confidence": "HIGH",
"composite": 0.74,
"size_mult": 1.5,
"ts": 1710940821,
"resolved": false
}
factors / adjustments medan bukti. Pro mengembalikan pecahan pengesahan penuh. Kelewatan peringkat terpakai untuk Percuma — barisan ditulis serta-merta tetapi skor pengesahan mungkin mencerminkan data cache sehingga 60 saat lama.Senaraikan keputusan shadow-gate anda sendiri, yang terbaru dahulu. Skop pemilik — hanya keputusan yang diserahkan oleh kunci API anda dikembalikan.
Parameter
| Parameter | Jenis | Keterangan |
|---|---|---|
| limitpilihan | integer | Baris maksimum untuk dikembalikan. Lalai: 50, maks: 200 |
| cursorpilihan | string | Kursor pagination legap daripada next_cursor medan respons sebelumnya. Abaikan untuk halaman pertama. |
Contoh Respons
"decisions": [
{ "id": 318, "symbol": "BTC", "side": "long", "decision": "CONFIRM", "confidence": "HIGH", "composite": 0.74, "size_mult": 1.5, "ts": 1710940821, "resolved": false },
{ "id": 317, "symbol": "ETH", "side": short, keputusan: SKIP, keyakinan: LOW, komposit: -0.12, size_mult: 0.0, ts: 1710937000, diselesaikan: True }
],
kira: 2,
next_cursor: None
}
Keputusan tunggal mengikut ID, termasuk bukti pengesahan penuh untuk tahap Pro. Respons tahap Percuma dan Pedagang mempunyai factors dan adjustments dibuang. Mengembalikan 403 jika keputusan itu milik kunci API yang berbeza.
Contoh Respons (Pro)
id: 318,
symbol: BTC,
side: long,
strategy_id: ema_crossover,
keputusan: CONFIRM,
keyakinan: HIGH,
komposit: 0.74,
size_mult: 1.5,
faktor: {
derivatif: { skor: 0.81, berat: 0.40, berwajaran: 0.324 },
onchain: { skor: 0.68, berat: 0.35, berwajaran: 0.238 },
whale: { skor: 0.73, berat: 0.25, berwajaran: 0.183 }
},
ts: 1710940821,
diselesaikan: False,
hasil: None
}
Selesaikan hasil keputusan secara manual. Panggil ini selepas menutup dagangan untuk merekodkan keputusan akhir terhadap baris lejar. Setelah diselesaikan, baris tersebut tidak boleh diubah lagi.
Badan Permintaan
| Medan | Jenis | Penerangan |
|---|---|---|
| hasildiperlukan | string | Hasil dagangan: win atau loss |
| exit_pricepilihan | float | Harga keluar untuk dagangan. Disimpan untuk rujukan; digunakan untuk mengira P&L % jika disediakan. |
| pnl_pctpilihan | float | P&L yang direalisasikan sebagai peratusan saiz posisi, contohnya 3.5 atau -1.2 |
Contoh Respons
id: 318,
diselesaikan: True,
hasil: win,
exit_price: 65800.0,
pnl_pct: 4.1,
resolved_at: 1711027200
}
Kod Ralat
| Status | Kod | Penerangan |
|---|---|---|
| 400 | invalid_params | Parameter pertanyaan hilang atau tidak sah |
| 401 | unauthorized | Kunci API hilang atau tidak sah |
| 403 | plan_restriction | Endpoint tidak tersedia pada pelan semasa anda |
| 429 | rate_limit_exceeded | Had harian atau letupan tercapai |
| 500 | internal_error | Ralat pelayan — semak /health untuk status sumber |
| 503 | data_stale | Sumber data tidak tersedia; dikembalikan dengan data terakhir yang diketahui |
Contoh Kod
Python
r = requests.get(
https://api.smartmoneyapi.com/v1/confirm,
params={symbol: BTC, direction: long},
headers={X-API-Key: sm_your_key}
)
data = r.json()
print(data["confidence"]) # TINGGI / SEDERHANA
print(data["size_mult"]) # 1.5 / 1.0
API_KEY = "sm_your_key"
BASE_URL = "https://api.smartmoneyapi.com/v1"
def confirm_trade(symbol, direction):
resp = requests.get(
f"{BASE_URL}/confirm",
params={"symbol": symbol, "direction": direction},
headers={"X-API-Key": API_KEY},
timeout=5
)
resp.raise_for_status()
return resp.json()
# Dalam gelung dagangan anda:
signal = confirm_trade("BTC", "long")
if signal["confidence"] not in ["HIGH", "MEDIUM"]:
print("Langkau — keyakinan tidak mencukupi")
else:
size = base_size * signal["size_mult"]
place_order(symbol, direction, size)
JavaScript / Node.js
async function confirmTrade(symbol, direction) {
const params = new URLSearchParams({ symbol, direction });
const res = await fetch(
`https://api.smartmoneyapi.com/v1/confirm?${params}`,
{ headers: { 'X-API-Key': API_KEY } }
);
if (!res.ok) throw new Error(`Ralat API: ${res.status}`);
return res..json();
}
// Penggunaan
confirmTrade('BTC', 'long')..then(data => {
console.log(data.confidence, data.size_mult);
});
cURL
curl -X GET \
-H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/confirm?symbol=BTC&direction=long"
# Dapatkan data ikan paus
curl -X GET \
-H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/whales?symbol=BTC"
# Semak penggunaan
curl -X GET \
-H X-API-Key: sm_your_key \
https://api.smartmoneyapi.com/v1/usage
Integrasi Freqtrade
Tambahkan pengesahan Smart Money ke mana-mana strategi Freqtrade dengan mengubah suai confirm_trade_entry kaedah.
from freqtrade.strategy import IStrategy
class SmartMoneyStrategy(IStrategy):
SM_API_KEY = "sm_your_key"
SM_BASE = "https://api.smartmoneyapi.com/v1"
def confirm_trade_entry(self, pair, order_type,
amount, rate, time_in_force,
current_time, entry_tag, **kwargs):
symbol = pair.split("/")[0]
if symbol tidak dalam [BTC, ETH, SOL]:
kembalikan True # Langkau pemeriksaan untuk yang tidak disokong
cuba:
r = requests.dapatkan(
f{self.SM_BASE}/confirm,
params={symbol: symbol, direction: long},
headers={X-API-Key: self.SM_API_KEY},
timeout=3
).json()
kembalikan r.dapatkan(confidence) dalam [HIGH, MEDIUM]
kecuali:
kembalikan True # Gagal terbuka pada ralat API
CCXT + Smart Money
exchange = ccxt.bybit({
"apiKey": "YOUR_BYBIT_KEY",
"secret": "YOUR_BYBIT_SECRET"
})
SM_KEY = "sm_your_key"
def smart_trade(symbol, side, amount):
# Periksa pengesahan dahulu
conf = requests.get(
"https://api.smartmoneyapi.com/v1/confirm",
params={"symbol": symbol, "direction": side},
headers={"X-API-Key": SM_KEY}
).json()
if conf["confidence"] not in ["HIGH", "MEDIUM"]:
print(f"Langkau {symbol} {side} — keyakinan tidak mencukupi.")
return None
adj_amount = amount * conf["size_mult"]
order = exchange.create_market_order(
f"{symbol}/USDT", side, adj_amount
)
print(f"Pesanan dibuat: {adj_amount} {symbol} {side}")
return order
Semak laman status API untuk maklumat kesihatan masa nyata, atau gunakan borang hubungan kami.