API Reference

Smart Money API

API ระดับมืออาชีพที่รวบรวมข้อมูลอนุพันธ์ ตัวชี้วัดบนบล็อกเชน และกิจกรรมกระเป๋าเงินวาฬเป็นคะแนนความมั่นใจเดียวสำหรับบอทเทรดของคุณ

เวอร์ชัน API ปัจจุบัน: v1. URL หลัก: https://api.smartmoneyapi.com/v1

หลักการออกแบบ

สี่แนวคิดที่กำหนดทุก endpoint และทุกคะแนนที่ API นี้ส่งคืน พวกเขายังเป็นขอบเขตที่ซื่อสัตย์ของสิ่งที่มันทำ — และไม่ทำ — สัญญา

กลยุทธ์มาก่อน ไม่ใช่สัญญาณมาก่อน นี่ไม่ใช่ฟีดสัญญาณซื้อ/ขาย คุณนำกลยุทธ์และจุดเข้า API จะบอกคุณว่าโครงสร้างตลาดโดยรอบ — ตำแหน่งอนุพันธ์ เงินทุน ดอกเบี้ยเปิด การล้างบัญชี การไหลบนบล็อกเชน และความเห็นพ้องของวาฬ — เห็นด้วยกับการเทรดที่คุณต้องการทำหรือไม่

คะแนนความมั่นใจ ไม่ใช่การทำนายแบบไบนารี ทุกคำตอบมีระดับ confidence (สูง / ปานกลาง / ต่ำ) และ composite จาก -1.0 ถึง +1.0 ไม่มีการรับประกันและไม่มีการเรียก oracle — คุณจะได้รับการอ่านที่ปรับเทียบเกี่ยวกับความเห็นพ้อง พร้อมด้วยเหตุผลเบื้องหลัง เพื่อให้คุณสามารถกำหนดขนาดตามความเชื่อมั่น

สนับสนุนการตัดสินใจ ไม่ใช่คำแนะนำการดำเนินการ API ส่งคืนคำแนะนำ CONFIRM / REDUCE / SKIP และตัวคูณขนาดสำหรับ ของคุณ ให้ลอจิกดำเนินการ ไม่เคยวางคำสั่ง และไม่มีอะไรที่นี่เป็นคำแนะนำทางการเงิน คุณยังคงรับผิดชอบต่อความเสี่ยง การกำหนดขนาด และการดำเนินการ

เมตริกที่มีชีวิต ไม่ใช่การรับประกันที่ตายตัว อัตราชนะ สถิติระบอบการปกครอง และตัวเลขความแม่นยำคำนวณจากตัวอย่างที่เคลื่อนไหวและเคลื่อนไหวตามตลาด เราตีพิมพ์พวกเขาอย่างซื่อสัตย์ รวมถึงเมื่อพวกเขาปานกลาง ให้ถือว่าทุกเมตริกเป็นการสังเกตการณ์ปัจจุบัน ไม่ใช่คำสัญญาเกี่ยวกับอนาคต

API นี้เหมาะสำหรับใคร

API นี้สร้างขึ้นสำหรับ นักพัฒนา bot, algo และ AI-agent คริปโต ที่มีสัญญาณ long/short อยู่แล้ว — จากกลยุทธ์ TA, โมเดล ML, pipeline Freqtrade, การแจ้งเตือน TradingView หรือ agent LLM — และต้องการการตัดสินใจ CONFIRM / REDUCE / SKIP อย่างรวดเร็ว ก่อนลงทุน

ลูปทั่วไป: กลยุทธ์ของคุณส่งสัญญาณ "long BTC" → คุณเรียก GET /v1/confirm?symbol=BTC&direction=long → คุณยืนยัน ลด หรือข้ามการเข้าและปรับขนาดตาม size_mult หนึ่งการเรียก การตอบสนอง JSON ความหน่วงต่ำ ไม่ต้องมีโครงสร้างพื้นฐานเพิ่มเติม

มัน ไม่ใช่ เครื่องสร้างสัญญาณแบบสแตนด์อโลน ผลิตภัณฑ์แผนภูมิ หรือสถานที่ดำเนินการ หากคุณไม่มีสัญญาณของตัวเองให้ควบคุม เริ่มต้นด้วย หน้าประสิทธิภาพ เพื่อดูว่าคะแนนทำงานอย่างไรก่อนที่จะเชื่อมต่อกับบอทสด

การเข้าถึง

1 — ลงทะเบียน สร้างบัญชีฟรีที่ signup (อีเมล/รหัสผ่านหรือ Google) ไม่ต้องใช้บัตรเครดิตสำหรับระดับฟรี

2 — เปิดแดชบอร์ดของคุณ แดชบอร์ด ของคุณ แสดงคีย์ API แผนปัจจุบันและการใช้งานสดเทียบกับโควตารายวัน

3 — คัดลอกคีย์ API ของคุณ คีย์มีคำนำหน้า sm_ ส่งมันเป็น X-API-Key เฮดเดอร์ในทุกคำขอ (ดู การยืนยันตัวตน) อัปเกรดได้ทุกเมื่อบน หน้าแสดงราคา เพื่อเพิ่มขีดจำกัดและปลดล็อกสัญลักษณ์และจุดปลายทางเพิ่มเติม

สเปค, SDK และคู่มือ

ทุกสิ่งที่คุณต้องการเพื่อการผสานรวมอย่างรวดเร็ว ไม่ว่าคุณจะเขียนโค้ดเองหรือมอบให้ตัวแทนเขียนโค้ด

ทรัพยากรคืออะไร
คู่มือสูตรสำเร็จสำหรับการผสานรวมที่พบบ่อยที่สุด — ยืนยันก่อนเข้า, ควบคุมสัญญาณ Freqtrade, ขนาดตามตัวคูณ, จัดการ 402/429 และเชื่อมต่อกับตัวแทนเขียนโค้ด
สเปค OpenAPIคำนิยาม OpenAPI ที่เครื่องสามารถอ่านได้สำหรับทุกจุดปลายทาง นำเข้าไปยัง Postman/Insomnia, สร้างไคลเอนต์ หรือป้อนให้ LLM ที่ github.com/tashiardit/smartmoneyapi-docs.
ไคลเอนต์ Pythonไลบรารีไคลเอนต์ Python อย่างเป็นทางการที่ github.com/tashiardit/smartmoneyapi-python.
/llms.txtสรุป API แบบข้อความธรรมดาที่เหมาะกับ LLM ชี้ Claude, Codex หรือ Cursor ไปที่มัน (ดู ตัวแทนเขียนโค้ด).

เริ่มต้นเร็วใน 2 นาที

ขั้นตอนที่ 1 — URL ฐาน ทุกจุดปลายทางอยู่ภายใต้:

URL ฐาน
https://api.smartmoneyapi.com

ขั้นตอนที่ 2 — รับคีย์ API ของคุณ สมัครฟรี (ไม่ต้องใช้บัตรเครดิต) และคัดลอกคีย์ของคุณจาก แดชบอร์ด ส่งมันเป็น X-API-Key ส่วนหัวในทุกคำขอ

ขั้นตอนที่ 3 — การเรียกครั้งแรกของคุณ วางสิ่งนี้ในเทอร์มินัลของคุณและแทนที่ sm_your_key ด้วยคีย์จากแดชบอร์ดของคุณ:

cURL
curl -H "X-API-Key: sm_your_key" "https://api.smartmoneyapi.com/v1/confirm?symbol=BTC&direction=long"

การตอบกลับที่คาดหวัง:

JSON
{
"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": ["อัตราเงินทุนเป็นบวกในทุกเวที", "วาฬ: 67% เห็นพ้อง Long"]
}

เมื่อ confidence คือ HIGH หรือ MEDIUM และ action คือ CONFIRM, ขนาดตำแหน่งของคุณตาม size_multนั่นคือวงจรการผสานรวมทั้งหมด ดู ฟิลด์การตอบกลับ สำหรับข้อมูลอ้างอิงฟิลด์ทั้งหมด

การยืนยันตัวตน

ทุกคำขอต้องใช้คีย์ API ที่ส่งเป็น X-API-Key ส่วนหัว HTTP

ส่วนหัว HTTP
X-API-Key: sm_your_api_key_here

คีย์ API ของคุณสามารถดูได้จาก แดชบอร์ด หลังจากสมัครสมาชิก เก็บคีย์ของคุณเป็นความลับ — อย่าเปิดเผยในโค้ดฝั่งไคลเอนต์หรือที่เก็บสาธารณะ

การยืนยันตัวตน WebSocket แตกต่างกัน อย่าวางคีย์ของคุณใน URL WebSocket สตรีมแบบเรียลไทม์ใช้ ตั๋ว: POST คีย์ของคุณไปที่ /v1/ws/ticket ด้วย X-API-Key ส่วนหัว แล้วเชื่อมต่อด้วยตั๋วที่ได้รับกลับมา ดู การยืนยันตัวตน WebSocket (ตั๋ว).

การลงชื่อเข้าใช้ด้วย Google (Firebase Auth)

ผู้ใช้สามารถยืนยันตัวตนโดยใช้บัญชี Google ผ่าน Firebase Authentication หลังจากลงชื่อเข้าใช้ Google บนไคลเอนต์สำเร็จ ให้แลกโทเค็น ID Firebase สำหรับเซสชัน API ที่เชื่อมโยง ระบบจะซิงค์ข้อมูลประจำตัว Google ของคุณกับระบบคีย์ API โดยอัตโนมัติ

มีให้สำหรับ: ฟรี เทรดเดอร์ โปร
POST /auth/google

เนื้อหาคำขอ

ฟิลด์ประเภทคำอธิบาย
id_tokenจำเป็นสตริงโทเค็น ID Firebase ที่ได้รับหลังจากลงชื่อเข้าใช้ Google บนไคลเอนต์

ตัวอย่างการตอบกลับ

JSON
{
"api_key": "sm_your_linked_key",
"uid": "firebase_uid_abc123",
"email": "[email protected]",
"plan": "trader",
"synced": true
}
ข้อมูลโปรไฟล์ผู้ใช้ — อีเมล, แผน, ประวัติการใช้งาน, การตั้งค่า — ถูกเก็บไว้ใน Firestore และเชื่อมโยงกับบัญชี Google ของคุณ สามารถขอส่งออกข้อมูลทั้งหมดหรือลบบัญชีได้ตลอดเวลาผ่านการตั้งค่าความเป็นส่วนตัวในแดชบอร์ด

ขีดจำกัดอัตรา

แผนเรียก/วันขีดจำกัดการระเบิดความล่าช้าของข้อมูล
ฟรี502/นาที60 วินาที
เทรดเดอร์1,00020/นาทีเรียลไทม์
โปร5,00060/นาทีเรียลไทม์
ระดับองค์กร100,000400/นาทีเรียลไทม์

ส่วนหัวจำกัดอัตราจะรวมอยู่ในทุกการตอบกลับ: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

URL ฐาน

https://api.smartmoneyapi.com/v1

จุดปลายทางทั้งหมดด้านล่างนี้สัมพันธ์กับ URL ฐานนี้ การตอบกลับทั้งหมดเป็น JSON พร้อม Content-Type: application/json.

ข้อผิดพลาด

ข้อผิดพลาดใช้รหัสสถานะ HTTP มาตรฐานและเนื้อหา JSON ที่สม่ำเสมอ ควรตรวจสอบจากรหัสสถานะเสมอ ไม่ใช่จากข้อความตอบกลับ สามสถานะที่พบบ่อยที่สุด:

สถานะรหัสความหมายและวิธีแก้ไข
401unauthorizedไม่มีหรือ API key ไม่ถูกต้อง ตรวจสอบว่า X-API-Key ส่วนหัวมีอยู่และถูกต้อง
402payment_requiredจุดปลายทางหรือสัญลักษณ์ต้องการแผนที่สูงกว่าที่ API key ของคุณมี (เช่น การใช้ API key ฟรีเรียก WebSocket firehose) อัปเกรด หรือกลับไปใช้จุดปลายทางสาธารณะ
429rate_limit_exceededถึงขีดจำกัดรายวันหรือแบบทันทีแล้ว หยุดและลองใหม่หลังจาก X-RateLimit-Reset; ห้ามยิงคำขอถี่

ทุกข้อผิดพลาดจะส่งกลับรูปแบบเดียวกัน:

JSON
{
"error": "rate_limit_exceeded",
"message": "ถึงขีดจำกัดรายวัน 50 ครั้งแล้ว จะรีเซ็ตเวลา 00:00 UTC",
"status": 429
}

สำหรับรายการรหัสสถานะทั้งหมด (400 / 403 / 500 / 503 และอื่นๆ) ดูที่ รหัสข้อผิดพลาดการเชื่อมต่อที่แข็งแกร่งควรถือว่า 5xx และ 429 เป็นข้อผิดพลาดชั่วคราว (ลองใหม่หลังจากรอ) และ 401/402/403 เป็นข้อผิดพลาดถาวร (ต้องแก้ไข API key หรือแผน)

แนวทางปฏิบัติด้านความปลอดภัยที่ดีที่สุด

ส่ง key ในส่วนหัว ห้ามส่งใน URL ส่ง X-API-Key เป็นส่วนหัว HTTP เท่านั้น การส่ง key ใน query string (?key=) จะถูกบันทึกโดยพร็อกซี, โหลดบาลานเซอร์, และประวัติเบราว์เซอร์ — การใช้ระบบเก่า ?key= auth จะไม่ได้รับการยอมรับในจุดปลายทาง WebSocket ด้วยเหตุนี้

เก็บ key ฝั่งเซิร์ฟเวอร์เท่านั้น ห้ามฝัง API key ใน JavaScript ฝั่งไคลเอ็นต์, แอปมือถือ, หรือที่เก็บสาธารณะ ควรโหลดจากตัวแปรสภาพแวดล้อมหรือตัวจัดการความลับ หาก key รั่วไหล ให้หมุน key ใหม่

หมุน key เป็นระยะ สร้าง key ใหม่จาก แดชบอร์ด ตามกำหนดหรือทันทีหากสงสัยว่าถูกเปิดเผย key เก่าจะหยุดทำงานทันทีเมื่อมีการออก key ใหม่

ใช้ตั๋วสำหรับ WebSocket ในเบราว์เซอร์ สำหรับสตรีมเรียลไทม์จากเบราว์เซอร์ ควรแลก key ของคุณเป็นตั๋วใช้ครั้งเดียวแทนการเชื่อมต่อด้วย key โดยตรง — ดูที่ การยืนยันตัวตน WebSocket (ตั๋ว).

การใช้งานกับตัวแทนเขียนโค้ด / LLM

กำลังสร้างด้วย Claude Code, Codex, Cursor หรือตัวแทนเขียนโค้ด LLM? คุณสามารถส่งข้อมูลทั้งหมดที่จำเป็นให้ตัวแทนเพื่อเชื่อมต่อ API นี้ได้ในครั้งเดียว มีเอกสารอ้างอิงที่เครื่องอ่านได้สองรูปแบบ:

ทรัพยากรURL
สรุปสำหรับ LLMhttps://smartmoneyapi.com/llms.txt
สเปก OpenAPIgithub.com/tashiardit/smartmoneyapi-docs

ชี้ตัวแทนของคุณไปที่ไฟล์ /llms.txt (ตามธรรมเนียม llms.txt) เพื่อดูภาพรวมย่อ แล้วดูสเปก OpenAPI สำหรับรูปแบบคำขอ/ตอบกลับที่แน่นอน พรอมต์หนึ่งบรรทัดที่ใช้งานได้ดี:

พรอมต์
# วางใน Claude Code / Cursor / Codex
อ่าน https://smartmoneyapi.com/llms.txt และสเปก OpenAPI ที่
github.com/tashiardit/smartmoneyapi-docs แล้วเพิ่มการตรวจสอบก่อนเทรด
ให้บอทของฉันที่เรียก GET /v1/confirm และข้ามการเข้าเทรด
เว้นแต่ว่า action คือ CONFIRM

ดูที่ คุกบุ๊ก สำหรับสูตรการใช้งานกับตัวแทนเขียนโค้ด

จุดปลายทาง

GET  /confirm

จุดปลายทางหลัก คืนค่าคะแนนความมั่นใจแบบผสมและคำแนะนำการดำเนินการสำหรับทิศทางการเทรดที่กำหนด เรียกใช้ก่อนเข้าตำแหน่งใดๆ

ความครอบคลุม, แบบเข้าใจง่าย /confirm ปัจจุบันให้คะแนน BTC, ETH และ SOL — สัญลักษณ์ที่มีประวัติการยืนยันที่เพียงพอ ส่วนตัวกรองอนุพันธ์จะ ตรวจสอบ ~519 ตลาดอนุพันธ์ สำหรับข้อมูล funding, OI และการล้างพอร์ต และการติดตามวอลเล็ตใหญ่ครอบคลุม 600+ วอลเล็ต โปรปลดล็อกตัวกรองเต็มรูปแบบ, การส่งออก และความครอบคลุมตลาดที่กว้างขึ้น /confirm การสนับสนุนสัญลักษณ์จะขยายออกไปเมื่อแต่ละตลาดมีประวัติที่น่าเชื่อถือเพียงพอ

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symbolจำเป็นstringสัญลักษณ์สินทรัพย์ หนึ่งใน: BTC, ETH, SOL (Trader+)
directionจำเป็นstringทิศทางการเทรด: long หรือ short
sourceไม่จำเป็นstringป้ายกำกับสำหรับแหล่งสัญญาณของคุณ (บันทึกสำหรับการวิเคราะห์) จำกัด 32 ตัวอักษร

ตัวอย่างคำขอ

cURL
curl -H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/confirm?symbol=BTC&direction=long"

ตัวอย่างการตอบกลับ

JSON
{
"ts": 1710940821,
"symbol": "BTC",
"direction": "long",
"composite": 0.74,
"confidence": "HIGH",
"action": "CONFIRM_FULL",
"size_mult": 1.5,
deriv_score: 0.81,
onchain_score: 0.68,
whale_score: 0.73,
x_score: 0.0,
ปัจจัย: {
อนุพันธ์: { คะแนน: 0.81, น้ำหนัก: 0.40, ถ่วงน้ำหนัก: 0.324 },
ออนเชน: { คะแนน: 0.68, น้ำหนัก: 0.35, ถ่วงน้ำหนัก: 0.238, แหล่งที่มา: coinmetrics, พร้อมใช้งาน: True },
วาฬ: { คะแนน: 0.73, น้ำหนัก: 0.25, ปัจจัยความล้าสมัย: 1.0, ถ่วงน้ำหนัก: 0.183 }
},
การปรับแต่ง: { ความสอดคล้อง: 0.0, แนวโน้ม: 0.0, ข่าวมหภาค: 0.0 },
น้ำหนัก: { อนุพันธ์: 0.40, ออนเชน: 0.35, whale_intel: 0.25 },
ความครอบคลุม: { อนุพันธ์: True, วาฬ: True, ออนเชน: True },
เหตุผล: [
อัตราเงินสนับสนุนเป็นบวกในทุกแพลตฟอร์ม,
LSR สนับสนุน long: 1.42,
วาฬ: 67% เห็นพ้อง long,
MVRV สูงกว่า 1.0 — บ่งชี้แนวโน้มขาขึ้นบนออนเชน
]
}

โปร่งใสโดยการออกแบบ ทุกการตอบกลับมี factors ออบเจ็กต์แสดงแต่ละส่วนของ คะแนน × น้ำหนัก = ส่วนที่ถ่วงน้ำหนัก ส่วนร่วม, หนึ่ง adjustments ออบเจ็กต์สำหรับการปรับแต่งหลังกรอง, weights ที่ใช้, และ coverage แผนที่ ส่วนออนเชนใช้ ข้อมูล Coin Metrics ฟรีจริง (MVRV / exchange-flow / active-address) เมื่อไม่ได้ตั้งค่า Glassnode key นี่คือการรวมกันของหลายปัจจัย คะแนน การรวมตัว — การสนับสนุนการตัดสินใจ, ไม่ใช่การรับประกันอัตราชนะ.

สัญลักษณ์ที่ไม่ได้ติดตามเป็นข้อมูลจริง สัญลักษณ์นอกเหนือจากอนุพันธ์/จักรวาลวาฬที่ติดตามจะคืนค่า "confidence":"NO_DATA" / "action":"NO_DATA_SKIP" อย่างชัดเจนด้วย "unsupported":true — ไม่เคยมีการสร้างขึ้น LOW.

ฟิลด์การตอบกลับ

ฟิลด์ประเภทคำอธิบาย
tsintegerเวลา Unix ของการคำนวณ
symbolstringสัญลักษณ์สินทรัพย์ (BTC/ETH/SOL)
directionstringทิศทางที่ขอ (long/short)
compositefloatคะแนนการรวมตัวรวมจาก -1.0 (ขัดแย้งสุดขั้ว) ถึง +1.0 (ยืนยันแข็งแกร่ง) ไม่ใช่อัตราชนะ
base_compositefloatการรวมตัวก่อนการปรับแต่งหลังกรอง
confidencestringHIGH / MEDIUM / LOW / VETO / NO_DATA
actionstringCONFIRM_FULL / CONFIRM_REDUCED / CONFIRM_MINIMAL / VETO_SKIP / NO_DATA_SKIP
size_multfloatตัวคูณขนาดตำแหน่งที่แนะนำ (เช่น 0.0 – 1.5)
unsupportedbooltrue เมื่อสัญลักษณ์อยู่นอกความครอบคลุม (จับคู่กับ NO_DATA)
deriv_scorefloatคะแนนย่อยอนุพันธ์ (-1 ถึง 1)
onchain_scorefloatคะแนนย่อยออนเชน (-1 ถึง 1)
whale_scorefloatคะแนนย่อยความเห็นพ้องวาฬ (-1 ถึง 1)
x_scorefloatคะแนนย่อย X/ความรู้สึกทางสังคม (-1 ถึง 1); 0 เมื่อไม่ได้ใช้
factorsobjectการแบ่งย่อยแต่ละส่วน: score × weight = weighted สำหรับอนุพันธ์ / ออนเชน / วาฬ / x_sentiment (ออนเชนรวมถึง source)
adjustmentsobjectการปรับแต่งหลังกรองที่ลงชื่อ (ความสอดคล้อง, แนวโน้ม, rsi_1h, ข่าวมหภาค, โมเมนตัม, time_of_day, streak_decay)
weightsobjectชุดน้ำหนักที่ใช้จริงสำหรับการประเมินนี้
coverageobject{derivatives, whale, onchain} — ส่วนใดที่มีข้อมูลจริง
reasonsarrayข้อความอธิบายคะแนนที่มนุษย์อ่านได้

GET  /snapshot

ส่งคืนภาพรวมตลาดเต็มรูปแบบรวมถึงคะแนนย่อยทั้งหมด ข้อมูลดิบ และค่าตัวบ่งชี้สำหรับสัญลักษณ์ที่กำหนด มีประโยชน์สำหรับแดชบอร์ดและการบันทึก

ต้องการ: เทรดเดอร์ โปร

GET  /onchain

ส่งกลับข้อมูลเมตริกออนเชนดิบ: MVRV, SOPR, การไหลสุทธิของ exchange, อัตราส่วน realized cap และการจำแนกตำแหน่งในรอบ

ต้องใช้: เทรดเดอร์ โปร

GET  /v1/derivatives/*

สกรีนเนอร์อนุพันธ์ข้าม exchange กว่า 500+ สัญลักษณ์: แผนภูมิความร้อนอัตรา funding, การจัดอันดับ open-interest และการตรวจจับสัญญาณอัตราส่วน long/short แถวบนสุด 10 แถวเป็นข้อมูลสาธารณะ; สกรีนเนอร์เต็มต้องใช้ Trader หรือ Pro เอนด์พอยต์: /v1/derivatives/screener, /v1/derivatives/funding, /v1/derivatives/oi, /v1/derivatives/signals.

GET  /v1/options/*

ข้อมูลวิเคราะห์ออปชัน BTC & ETH จาก Deribit (สาธารณะ, ไม่ต้องยืนยันตัวตน): อัตราส่วน put/call, max pain และ open interest แยกตาม strike เอนด์พอยต์: /v1/options/summary, /v1/options/pcr, /v1/options/oi.

GET  /v1/etf/*

ข้อมูลการไหลสุทธิรายวันของ ETF BTC & ETH แบบ spot และรายละเอียดแยกตามกองทุน (สาธารณะ) เอนด์พอยต์: /v1/etf/flows, /v1/etf/funds.

GET  /v1/historical/*

ข้อมูลย้อนหลังของ funding, open interest, อัตราส่วน long/short (Binance) และ OHLCV (CoinGecko) สำหรับการ backtesting เอนด์พอยต์: /v1/historical/funding, /v1/historical/oi, /v1/historical/lsr, /v1/historical/ohlcv.

GET  /v1/dex/*

คู่เทรดที่มาแรง, การค้นหาโทเคน และรายละเอียดคู่เทรด จาก DexScreener (สาธารณะ, ไม่ต้องยืนยันตัวตน) เอนด์พอยต์: /v1/dex/trending, /v1/dex/search, /v1/dex/token, /v1/dex/pair.

GET  /v1/news/*

ข่าวสารเชิงลึก: ข่าวนโยบาย/ภูมิรัฐศาสตร์/คริปโตที่ถูกจำแนกตามระดับผลกระทบ พร้อมดัชนี Fear & Greed (สาธารณะ, ไม่ต้องยืนยันตัวตน) เอนด์พอยต์: /v1/news/trump, /v1/news/general, /v1/news/impact, /v1/news/fear-greed.

GET  /whales

ส่งกลับข้อมูลความเห็นพ้องของวอลเล็ตวาฬ: การแบ่ง long/short, การเปิดเผย notional ทั้งหมด, ตำแหน่งสูงสุด 10 อันดับ (เฉพาะ Pro) และจำนวนวอลเล็ต

ต้องใช้: เทรดเดอร์ โปร

GET  /signals

ส่งกลับสตรีมของสัญญาณ HIGH/MEDIUM ล่าสุดจากทุกสินทรัพย์ที่ตรวจสอบ มีประโยชน์สำหรับการสแกนโอกาส

ต้องใช้: โปร

GET  /v1/strategies/*

ประวัติการทำกำไรที่โปร่งใส แบบอ่านอย่างเดียว สำหรับกลยุทธ์การเทรดอัตโนมัติที่ทำงานบนสัญญาณ Smart Money — รวมถึง deriv40 กลยุทธ์ SmartMoney Copytrade (account=9) เอนด์พอยต์ทั้งหมดรับพารามิเตอร์ ?account=<id> และส่งกลับ JSON ไม่ต้องยืนยันตัวตน (ประวัติสาธารณะ)

เอนด์พอยต์

  • GET /v1/strategies/stats?account=9 — ตัวชี้วัดหลัก: 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 — เส้น equity สำหรับการสร้างแผนภูมิ: { initial_equity, curve: [{ time, equity }] }.
  • GET /v1/strategies/trades?account=9&limit=500 — บันทึกการเทรดที่ปิดแล้ว: อาร์เรย์ (หรือ {trades:[…]}) ของ symbol, direction, entry_price, exit_price, pnl_usdt, pnl_percent, pnl_percent_net.
  • GET /v1/strategies/active?account=9 — ตำแหน่งที่เปิดอยู่ปัจจุบัน: อาร์เรย์ (หรือ {positions:[…]}) ของ symbol, side/direction, entry_price, unrealized_pnl.
  • GET /v1/strategies/signals — การแบ่งประเภทสัญญาณที่ป้อนให้กลยุทธ์ (จำนวน / ชนะ / อัตราชนะ / กำไรเฉลี่ยต่อประเภทสัญญาณ)

ผลการดำเนินงานในอดีตไม่ได้เป็นเครื่องบ่งชี้ผลการดำเนินงานในอนาคต ตัวเลขถูกเติมย้อนหลังในช่วงเวลา ~3 เดือนพร้อมกับการเทรดสด และแสดงก่อนหักค่าธรรมเนียมตามที่ระบุ

GET  /export

ดาวน์โหลดข้อมูลสัญญาณย้อนหลังเป็น CSV สำหรับการ backtesting พารามิเตอร์: symbol, from (unix ts), to (unix ts)

ต้องใช้: โปร

GET  /health

การตรวจสอบสถานะระบบ ส่งกลับความสดใหม่ของข้อมูลจากแต่ละแหล่งและสถานะ API โดยรวม ไม่ต้องยืนยันตัวตน

การตอบสนอง JSON
{
"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

ส่งกลับสถิติการใช้งาน API ปัจจุบันของคุณ: จำนวนเรียกใช้วันนี้, ยอดรวมรายเดือน, ข้อจำกัดโควตา และเวลารีเซ็ต

POST  /webhooks

ต้องใช้: โปร

ลงทะเบียน URL HTTPS เพื่อรับการ推送เหตุการณ์แบบเรียลไทม์ที่มีลายเซ็นเมื่อมีสัญญาณเกิดขึ้นในสินทรัพย์ที่คุณตรวจสอบ การส่งข้อมูลจะมี X-SmartMoney-Event เฮดเดอร์และลายเซ็น HMAC-SHA256 ใน X-SmartMoney-Signatureและจะลองส่งใหม่สูงสุด 3 ครั้งด้วยการหน่วงเวลา

เนื้อหาคำขอ

ฟิลด์ประเภทคำอธิบาย
urlrequiredstringเอนด์พอยต์ HTTPS ที่จะ POST เหตุการณ์ไป (ต้องเริ่มต้นด้วย https://)
eventsrequiredarrayชื่อเหตุการณ์ เช่น ["HIGH","MEDIUM","VETO"] หรือ ["*"]
symbolsrequiredarrayสัญลักษณ์สำหรับกรอง เช่น ["BTC","ETH"] หรือ ["*"]
secretrequiredstringรหัสลับสำหรับการเซ็นชื่อของคุณ ≥ 16 ตัวอักษร (เก็บแบบแฮช)

การยืนยันลายเซ็น

คีย์ HMAC คือ hex digest SHA-256 ของรหัสลับที่ลงทะเบียนไว้ คำนวณ HMAC-SHA256 ของเนื้อหาคำขอแบบดิบด้วยคีย์นั้นและเปรียบเทียบ (แบบ constant-time) กับ X-SmartMoney-Signature. ดูที่ คู่มือการใช้งาน Webhook.

อินเทลลิเจนซ์

GET  /analysis

ต้องใช้: Pro

ส่งกลับการจำแนกระบบตลาดด้วยพลัง AI พร้อมการตรวจจับความขัดแย้งของสัญญาณ วิเคราะห์ความสอดคล้องของสัญญาณข้ามประเภท ระบุความแตกต่างระหว่างข้อมูลอนุพันธ์ ออนเชน และข้อมูลวาฬ และสร้างสรุปเป็นภาษาธรรมชาติพร้อมปัจจัยความเสี่ยงที่มองไปข้างหน้าและคำแนะนำตามกรอบเวลา

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symbolจำเป็นstringสัญลักษณ์สินทรัพย์: BTC, ETH, หรือ SOL

ตัวอย่างการตอบกลับ

JSON
{
"ts": 1710940821,
"symbol": "BTC",
"regime": "late_cycle_divergence",
"regime_label": "Late Cycle — Signal Divergence",
"summary": "BTC อยู่ในช่วงปลายวัฏจักรขาขึ้นโดยมีความแข็งแกร่งของออนเชนขัดแย้งกับการขยายตัวเกินของอนุพันธ์ วาฬกำลังลดการลงทุนในขณะที่ LSR ของรายย่อยเพิ่มขึ้น",
"signal_conflicts": [
"คะแนนวาฬเป็นขาลงในขณะที่คะแนนออนเชนเป็นขาขึ้น",
"อัตรา Funding สูงสุดใน 3 เดือน — เสี่ยงต่อการถูกบีบ"
],
"risk_factors": ["Funding สูง", "ความแตกต่างของ OI", "การลดลงของวาฬ"],
"recommendation": "ลดการลงทุน Long, ตั้ง Stop Loss ให้กระชับ หลีกเลี่ยงการเปิด Long ใหม่ที่สูงกว่าราคาปัจจุบัน",
"time_horizon": "4h–12h"
}
ต้องใช้แผน Pro ปลายทางนี้ใช้ 3 การเรียก API ต่อคำขอเนื่องจากภาระการประมวลผล AI

GET  /liquidations

ต้องใช้: Trader Pro

ส่งกลับ มุมมองเสริมสองแบบ: (1) leverage-projected levels — การประมาณการของ ตำแหน่งที่ กลุ่มการล้างพอร์ตอยู่; และ (2) realized_heatmapการล้างพอร์ตที่เกิดขึ้นจริง ความรุนแรงของการล้างพอร์ตแบบบังคับ (ราคา × เวลา) รวมรวมสดจาก WebSocket feeds ของ交易所สาธารณะ: Binance, OKX, Bybit, Bitget, BitMEX. Heatmap จะแสดงเมื่อสตรีมมีข้อมูลสำหรับสัญลักษณ์นั้น (จะไม่แสดงในตลาดที่สงบมากหรือเพิ่งเริ่มทำงาน)

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symbolไม่จำเป็นstringสัญลักษณ์สินทรัพย์ (ค่าเริ่มต้น BTC). Heatmap จริงครอบคลุมสัญลักษณ์ perp ที่มีการซื้อขาย活跃

ตัวอย่างการตอบกลับ

JSON
{
"symbol": "BTC",
"cascade_risk": "HIGH",
"nearest_long_liq_pct": -3.2,
"nearest_short_liq_pct": 4.1,
// การล้างพอร์ตที่เกิดขึ้นจริง — สดจาก 5 exchange
"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 }
}
}
แผน Trader: cascade_risk, ระยะทางที่ใกล้ที่สุด, และผลรวม/ด้านที่เกิดขึ้นจริง แผน Pro: projected เต็มรูปแบบ levels บวกกับ realized_heatmap เต็มรูปแบบ (เมทริกซ์, กลุ่มต่อราคา, นับต่อ exchange). การประมาณ projected ตอบคำถาม "Stop Loss อยู่ที่ไหน" ในขณะที่ heatmap ที่เกิดขึ้นจริงแสดง "สิ่งที่ถูกล้างพอร์ตจริงๆ"

GET  /liquidations/heatmap

ใช้งานได้โดย: Free ไม่ต้องรับรองความถูกต้อง (จำกัดต่อ IP)

Public heatmap การล้างพอร์ตตามระดับราคา ส่งกลับเมทริกซ์ราคา × เวลาแบบ Coinglass ของ การล้างพอร์ตแบบบังคับที่เกิดขึ้นจริง จัดกลุ่มตามราคาที่แต่ละการล้างพอร์ตเกิดขึ้น — รวมรวมสดจาก WebSocket feeds ของ交易所สาธารณะ: Binance, OKX, Bybit, Bitget, BitMEX. clusters array คือผลลัพธ์ที่ใช้งานได้จริง: ถังราคาที่เรียงตามมูลค่าที่ถูกล้างพอร์ต แต่ละอันมีแท็กด้านที่โดดเด่น ข้อมูลขึ้นอยู่กับสตรีมสด — สัญลักษณ์ที่สงบมากหรือเกตเวย์ที่เพิ่งรีสตาร์ทจะส่งกลับโครงสร้างว่างที่ถูกต้องพร้อม note. ระดับที่แสดงเป็นการล้างพอร์ตจริงเท่านั้น ไม่เคยเป็นค่าประมาณ

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symboloptionalstringสัญลักษณ์ของสินทรัพย์ (ค่าเริ่มต้น BTC).
window_minutesoptionalintระยะเวลาย้อนหลังในหน่วยนาที (ค่าเริ่มต้น 240, จำกัดอยู่ที่ 5–1440)
price_bucketsoptionalintจำนวนช่วงราคา (ค่าเริ่มต้น 50, จำกัดอยู่ที่ 5–100)

ตัวอย่างการตอบกลับ

JSON
{
"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 จะว่างเปล่า และฟิลด์ note จะอธิบายสาเหตุ นี่คือบันทึกการชำระบัญชีที่เกิดขึ้นจริง — ไม่ใช่การคาดการณ์. สำหรับการประมาณการ "จุดหยุดอยู่ที่ไหน" ให้ใช้จุดปลายทางที่ต้องยืนยันตัวตน /liquidations จุดปลายทาง

GET  /liquidations/onchain

จำเป็นต้องมี: Trader Pro

Executed การชำระบัญชีบน-chain DeFi lending บันทึกโดยตรงจากโหนดเต็มของเราเอง BSC + Avalanche full nodes — เป็นอิสระจากบอทเทรดใดๆ ครอบคลุม Venus/Cream และ Moolah บน BSC และ AAVE V3/V2, Benqi, BankerJoe, Granary และ Vinium บน Avalanche ระดับ Pro จะคืนค่าเพิ่มเติม at_risk positions (ขึ้นอยู่กับบอท, อาจไม่มี)

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
chainoptionalstringbsc หรือ avax. ปล่อยว่างสำหรับทุกเชน
limitoptionalintegerจำนวนแถวสูงสุด (ค่าเริ่มต้น 100, สูงสุด 500). เรียงจากใหม่สุด

ตัวอย่างการตอบกลับ

JSON
{
"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, ชำระคืน_usd_ทราบ: 148230.55 } },
โหนด: { bsc: { สามารถเข้าถึงได้: true, บล็อกหัว: 89173010, เหตุการณ์ทั้งหมด: 61 } }
}
}

GET  /smart-stop

จำเป็นต้องมี: เทรดเดอร์ โปร

คำนวณระดับ stop-loss ที่ชาญฉลาดตามแผนภูมิความร้อนการล้างพอร์ตปัจจุบัน, แถบความผันผวน, และโครงสร้างตลาด ส่งกลับคำแนะนำ stop แบบแบ่งระดับและข้อเสนอ take-profit ที่ปรับตามราคาเข้าและความเสี่ยงที่คุณยอมรับได้

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symbolrequiredstringสัญลักษณ์สินทรัพย์: BTC, ETH, หรือ SOL
directionrequiredstringทิศทางการเปิดพอร์ต: long หรือ short
entry_priceoptionalfloatราคาเข้าของคุณ ค่าเริ่มต้นคือราคาตลาดปัจจุบันหากไม่ระบุ
risk_pctoptionalfloatความเสี่ยงสูงสุดที่ยอมรับได้เป็น % ของบัญชี ค่าเริ่มต้น: 2.0

ตัวอย่างการตอบกลับ

JSON
{
"symbol": "BTC",
"direction": "long",
"entry_price": 96420,
"stops": {
"tight": { "price": 95100, "note": "ต่ำกว่าโครงสร้าง 1h เหมาะสำหรับการเทรดระยะสั้น" },
"recommended": { "price": 93800, "note": "ต่ำกว่ากลุ่ม liquidation หลักที่ $94K Stop มาตรฐานสำหรับการเทรดระยะกลาง" },
"wide": { "price": 91200, "note": "ต่ำกว่าโซนความต้องการ 4h Stop สำหรับการเทรดระยะยาว" }
},
"avoid_zones": [
{ "low": 94200, "high": 94800, "reason": "กลุ่ม liquidation หนาแน่น — ความเสี่ยง slippage สูง" }
],
"take_profit_suggestions": [
{ "tp1": 98500, "tp2": 101000, "tp3": 104200 }
]
}
แผนเทรดเดอร์: ส่งกลับเพียง recommended stop เท่านั้น แผนโปร: ทั้งสามระดับ stop avoid_zones, และข้อเสนอ take-profit แบบเต็ม

GET  /funding-arb

จำเป็นต้องมี: เทรดเดอร์ โปร

ระบุโอกาส arbitrage อัตรา funding ข้าม exchange ในเวลาจริง ส่งกลับโอกาสที่เรียงลำดับพร้อมผลตอบแทนต่อปีโดยประมาณ, คู่ exchange ที่เหมาะสมที่สุด, และการดำเนินการ hedge ที่จำเป็นเพื่อคว้าสเปรด

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
min_spreadoptionalfloatสเปรดอัตรา funding ขั้นต่ำที่จะรวม (เป็นทศนิยม) ค่าเริ่มต้น: 0.01
symboloptionalstringกรองสินทรัพย์เฉพาะ ปล่อยว่างเพื่อสแกนสินทรัพย์ที่รองรับทั้งหมด

ตัวอย่างการตอบกลับ

JSON
{
"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
}
]
}
แผนเทรดเดอร์: โอกาสที่ดีที่สุดเพียง 1 อัน ไม่มีข้อมูลสเปรดย้อนหลัง แผนโปร: โอกาสปัจจุบันทั้งหมดพร้อมประวัติสเปรด 24h ต่อคู่ exchange

เวอร์ชันสาธารณะฟรี ไม่ต้องใช้คีย์

endpoint สาธารณะที่ไม่ต้องใช้คีย์ส่งกลับโอกาส 10 อันดับแรกพร้อม screener ข้าม exchange แบบสด เหมาะสำหรับการ embed หรือการตรวจสอบอย่างรวดเร็ว จะไม่รวมประวัติสเปรดต่อสินทรัพย์และฟิลด์ที่หนัก และให้บริการจากแคช 120 วินาที หากไม่มีสเปรด funding ข้าม exchange ในหน้าต่างความสดใหม่ จะส่งกลับ opportunities อาร์เรย์ว่างพร้อม note — ไม่มีการสร้างข้อมูลเท็จ

GET (ไม่ต้องใช้คีย์)
GET /v1/derivatives/funding-arb
JSON
{
"opportunities": [
{
symbol: OGN,
spread_pct: 0.297667,
annualized_apr: 325.95,
long_exchange: bybit,
short_exchange: hyperliquid,
estimated_profit_per_10k: 29.77,
risk_notes: สเปรดต่ำ — ตรวจสอบให้แน่ใจว่าค่าธรรมเนียมไม่ทำกำไรส่วนต่างให้หายไป
}
],
scanned_symbols: 222,
ts: 1783268753,
public: True,
limited: True
}
ฟรี ไม่ต้องใช้ API key สกัดโอกาส 10 อันดับแรกเท่านั้น มีการจำกัดและแคช (120 วินาที) หน้าจอสกรีนเนอร์สด: funding-arb.html.

GET  /smart-money/flow

ต้องมี: Trader Pro

ดัชนีทิศทางของวาฬแบบถ่วงน้ำหนักคุณภาพ whale directional index ต่อสัญลักษณ์ ให้คะแนน -100 (วาฬเงิน傾向 short) ถึง +100 (傾向 long) สร้างจากกระเป๋าเงินวาฬ Hyperliquid ที่ติดตามหลายพันรายการ — แต่ละรายการถ่วงน้ำหนักด้วยอัตราชนะและกำไรขาดทุนในอดีตของตัวเอง และลดน้ำหนักตามความใหม่ล่าสุด นี่คือ ดัชนีการจัดตำแหน่ง ไม่ใช่สัญญาณซื้อ/ขายหรือการคาดการณ์ราคา สัญลักษณ์ที่มีกระเป๋าเงินที่ร่วมให้น้อยจะถูกระบุว่า thin และให้คะแนนอย่างตรงไปตรงมา หน้าสด: smart-money-flow.html.

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symboloptionalstringสัญลักษณ์เดียว (เช่น BTC) เว้นไว้เพื่อรับสัญลักษณ์ที่ติดตามทั้งหมดจัดอันดับโดย |score|
window_hoursoptionalintหน้าต่างการให้คะแนน จำกัดอยู่ที่ 1..168 ค่าเริ่มต้น 24.

ตัวอย่างการตอบกลับ

JSON
{
symbols: [
{
symbol: SPX,
score: -90.93,
direction: strong_short,
n_wallets: 26,
long_usd: 184200.0, short_usd: 2410000.0,
quality_weighted: true,
"sample_quality": "rich",
"top_contributors": [ { "wallet": "0x31ca…974b", "direction": "short", "value_usd": 5338.25, "weight": 0.4948 } ]
}
],
"window_hours": 24,
"quality_weighted": true,
"ts": 1783270000,
"note": "ดัชนีทิศทางตำแหน่งของวาฬแบบถ่วงน้ำหนักด้วยคุณภาพ (-100..+100) ไม่ใช่การทำนายราคาหรือสัญญาณซื้อ/ขาย"
}
แผนเทรดเดอร์: สัญลักษณ์ 12 อันดับแรก, ไม่เปิดเผยรายละเอียดผู้ร่วมให้ข้อมูล แผนโปร: สัญลักษณ์ทั้งหมดพร้อมข้อมูลต่อสัญลักษณ์ top_contributors. น้ำหนักวอลเล็ตถูกจำกัดไว้ที่ [0.25,1.0]; PnL เป็นตัวแทนที่ยังไม่เกิดขึ้นจริงจากภาพรวมตำแหน่งล่าสุด

GET  "/v1/whales/crowding"

ใช้งานได้กับ: ฟรี ไม่ต้องยืนยันตัวตน — ผู้ใช้ไม่ระบุตัวตนจะได้รับสัญลักษณ์ 10 อันดับแรก, แพลนเทรดเดอร์+ ได้รับรายการทั้งหมด

รวมกัน บริบทตำแหน่งวาฬและความแออัด ต่อสัญลักษณ์, รวมข้อมูลจาก Hyperliquid + GMX v2 + Jupiter Perps. ส่งคืนมูลค่ารวม/สุทธิ, ความเบ้ทิศทาง, จำนวนวอลเล็ตและเวนิว, ความเข้มข้นของตำแหน่ง (ส่วนแบ่ง 3 อันดับแรก + HHI), ค่าเฉลี่ย leverage แบบถ่วงน้ำหนัก, และ "ถังระยะใกล้การล้างตำแหน่ง" (มูลค่าที่อยู่ภายใน 5% และ 10% ของราคาล้างตำแหน่งโดยประมาณ, แยก long/short) นี่คือ บริบท, ไม่ใช่สัญญาณทิศทาง ฟิลด์ที่ไม่สามารถคำนวณได้จะ null และแสดงผลเป็น — เช่น lev_wavg/crowding_index เมื่อไม่มีตำแหน่งที่ใช้ leverage ระยะทางล้างตำแหน่งเป็นประมาณการแบบ isolated-margin (pct_to_liq ≈ 1/lev + upnl/notional − mmr, mmr = 0.01), ไม่ใช่ ราคาล้างตำแหน่งที่รายงานโดย exchange

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
min_notionaloptionalfloatมูลค่ารวมขั้นต่ำ (USD) สำหรับรวมสัญลักษณ์ ค่าเริ่มต้น: 1000000.

ตัวอย่างคำขอ

GET (ไม่ต้องยืนยันตัวตน)
curl "https://api.smartmoneyapi.com/v1/whales/crowding?min_notional=1000000"

ตัวอย่างการตอบกลับ

JSON
{
"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: [ ระยะการล้างสต็อกเป็นค่าประมาณแบบ isolated-margin ไม่ใช่ข้อมูลที่รายงานโดย exchange ]
}
หมายเหตุสำคัญ: skew คือ net/gross ∈ [-1,1]; crowding_index = |skew|·conc_top3·min(lev/20,1). เฉพาะเว็บเทรดที่มีข้อมูลจริงเท่านั้นที่จะแสดงใน venues. ตำแหน่งที่ไม่มีเลเวอเรจจะถูกยกเว้นจากกลุ่ม liq แทนที่จะถูกสมมติ ผู้เรียกข้อมูลแบบไม่ระบุตัวตนจะได้รับสัญลักษณ์ 10 อันดับแรกตาม gross (พร้อม gated: true); ผู้ใช้ Trader+ จะได้รับรายการทั้งหมด

GET  /v1/options/gex

ใช้งานได้โดย: ฟรี ไม่ต้องยืนยันตัวตน (จำกัดการเรียกใช้ต่อ IP)

ดีลเลอร์ gamma exposure (GEX) การวิเคราะห์สำหรับ BTC & ETH, คำนวณสดจากสาย options ของ Deribit (ไม่ต้องยืนยันตัวตน) ส่งคืน GEX สุทธิของดีลเลอร์ต่อ strike (ตามธรรมเนียม SpotGamma dealer-short), ระดับ gamma-flip (strike ที่ GEX สุทธิสะสมข้ามศูนย์), โครงสร้างระยะเวลา IV (ความผันผวนโดยนัย ATM แบ่งตามวันถึงวันหมดอายุ), และความเอียง IV ของ expiration หน้า (ความแตกต่างของความผันผวนโดยนัย 25Δ-proxy risk reversal) ระบอบ GEX คือ positive (ดีลเลอร์ long gamma → กดความผันผวน) หรือ negative (ขยายความผันผวน) คำนวณใหม่ทุกครั้ง ไม่มี dependency กับฐานข้อมูล

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symbolไม่จำเป็นstringBTC หรือ ETH เท่านั้น ค่าเริ่มต้น: BTC.

ตัวอย่างคำขอ

GET (ไม่ต้องยืนยันตัวตน)
curl "https://api.smartmoneyapi.com/v1/options/gex?symbol=BTC"

ตัวอย่างการตอบกลับ

JSON
{
"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"
}
}
หมายเหตุสำคัญ: ตัวคูณสัญญาของ Deribit คือ 1 (OI แสดงเป็นเหรียญ) หากดึงข้อมูลล้มเหลว ระบบจะคืนค่า available: false พร้อมแผงว่าง — ไม่มีการสร้าง GEX ขึ้นเอง ความเอียง IV ใช้ strike proxy ±10% คงที่สำหรับ 25Δ (25-delta ที่แท้จริงต้องคำนวณ delta ต่อ strike) เหมาะสำหรับการแสดงผล และระบุว่าเป็นค่าประมาณ

GET  /v1/liquidations/simulate

ใช้งานได้โดย: ฟรี ไม่ต้องยืนยันตัวตน (จำกัดการเรียกใช้ต่อ IP)

อินเทอร์แอคทีฟ การทดสอบความเครียดจากการล้างพอร์ตแบบต่อเนื่อง. เมื่อกำหนดการเคลื่อนไหวของราคาแบบสมมติ จะส่งคืนตำแหน่งที่มีเลเวอเรจที่คาดว่าจะถูกบังคับให้ล้างพอร์ต ปริมาณการบังคับขายตามระดับราคา/ด้าน/ตลาด และรายงานความลึกของการล้างพอร์ตแบบต่อเนื่อง การเคลื่อนไหวของราคาลงจะล้างพอร์ต long ที่มีราคาล้างพอร์ตอยู่ที่หรือสูงกว่าเป้าหมาย การเคลื่อนไหวของราคาขึ้นจะล้างพอร์ต short ที่มีราคาล้างพอร์ตอยู่ที่หรือต่ำกว่าเป้าหมาย ผสานสองวิธีที่独立: ราคาล้างพอร์ตที่แน่นอนจากวาฬ Hyperliquid ที่ถูกติดตาม real เลเวอเรจ/จุดเข้า, รวมกลุ่มสถิติ OI-band ต่อตลาด (เลเวอเรจของฝูงชนที่อนุมานจาก funding) ทุกอย่างถูกระบุชัดเจน estimated: true — ไม่สามารถทราบ margin ของแต่ละบัญชี, cross vs isolated, margin ที่เพิ่ม, หรือ ADL ได้

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symboloptionalstringสัญลักษณ์สินทรัพย์ ค่าเริ่มต้น: BTC.
move_pctoptionalfloatการเคลื่อนไหวของราคาแบบสมมติเป็นเปอร์เซ็นต์ (ลบ = ลง, บวก = ขึ้น) ค่าเริ่มต้น: -5.

ตัวอย่างคำขอ

GET (ไม่ต้องตรวจสอบสิทธิ์)
curl "https://api.smartmoneyapi.com/v1/liquidations/simulate?symbol=BTC&move_pct=-5"

ตัวอย่างการตอบกลับ

JSON
{
"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": "ประมาณการ — ไม่สามารถทราบ margin ของแต่ละบัญชี, cross vs isolated, margin ที่เพิ่ม, หรือ ADL ได้" }
}
ข้อความจริงใจ: ทุกตัวเลขที่คาดการณ์มาจากการอ่านฐานข้อมูลจริง ไม่มีการสร้างข้อมูลปลอมเมื่อล้มเหลว สัญลักษณ์ที่ไม่ได้ติดตาม, ภาพรวมที่ล้าสมัย, หรือราคาที่ขาดหายไปจะส่งคืน ok: true, empty: true พร้อมข้อความภาษาอังกฤษง่าย ๆ ไม่ใช่แท่งเท็จ realized_context เป็นตัวอย่างเล็ก ๆ ที่เติบโตจากการล้างพอร์ตแบบบังคับแบบเรียลไทม์ แสดงเป็นบริบทเท่านั้น — ไม่เคยทำให้การคาดการณ์ "เกิดขึ้นจริง"

GET  /v1/wallet/{addr}/profile

พร้อมให้บริการสำหรับ: ฟรี ไม่ต้องตรวจสอบสิทธิ์ (จำกัดการใช้งานต่อ IP)

โปรไฟล์วอลเล็ต ข้ามตลาด สร้างจากภาพรวมตำแหน่งวาฬที่ถูกติดตามแบบเรียลไทม์ทั้งหมด สำหรับวาฬ Hyperliquid ที่ถูกติดตาม จะส่งคืนตำแหน่งที่เปิดอยู่ปัจจุบัน, อนุกรมเวลาของ PnL ที่ยังไม่เกิดขึ้นจริง/การเปิดเผย/จำนวนตำแหน่ง time series, ไทม์ไลน์กิจกรรม OPEN/CLOSE/FLIP (สร้างใหม่โดยการเปรียบเทียบภาพรวมต่อเนื่อง), ป้ายกำกับจาก HL-leaderboard ที่ถูกถอดรหัส, และบทสรุป open-book หน้าสด: wallet-profiler.html.

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
addrrequiredstringที่อยู่วอลเล็ต (ส่วนของเส้นทาง), เช่น /v1/wallet/0x3bcae23e…/profile.
daysoptionalintegerหน้าต่างเวลาย้อนกลับสำหรับอนุกรมเวลาและไทม์ไลน์ ค่าเริ่มต้น: 30.

ตัวอย่างคำขอ

GET (ไม่ต้องตรวจสอบสิทธิ์)
curl "https://api.smartmoneyapi.com/v1/wallet/0x3bcae23e8c380dab4732e9a159c0456f12d866f3/profile?days=30"

ตัวอย่างการตอบกลับ

JSON
{
"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, อัตราชนะ (%): 71, จำนวนการเทรด: 42 },
ตำแหน่ง: [
{ แพลตฟอร์ม: hyperliquid, สัญลักษณ์: ETH, ทิศทาง: short,
ขนาด: 1200.0, ราคาเข้า: 1800.0, กำไร/ขาดทุนยังไม่realized: 34800.0,
เลเวอเรจ: 20.0, มูลค่า (USD): 2160000.0 }
],
ซีรีส์: [ { เวลา: 1783330000, กำไร/ขาดทุนยังไม่realized: 42000.0, มูลค่าการเปิดเผย (USD): 18400000.0, ตำแหน่ง: 5 } ],
ไทม์ไลน์: [ { เวลา: 1783400000, เหตุการณ์: flip, สัญลักษณ์: ETH,
ทิศทาง: short, จากทิศทาง: long, มูลค่า (USD): 2160000.0 } ],
สรุป: {
ตำแหน่งที่เปิด: 5, ในกำไร: 3, ในขาดทุน: 2, longs: 0, shorts: 5,
กำไร/ขาดทุนยังไม่realized รวม: -12000.0, มูลค่าการเปิดเผยรวม (USD): 21000000.0, เลเวอเรจแบบผสม: 19.9,
จำนวนวันในหน้าต่าง: 30, จำนวนสแนปชอตในหน้าต่าง: 474,
กำไร/ขาดทุนที่realized: None, หมายเหตุกำไร/ขาดทุนที่realized: ไม่สามารถคำนวณได้ — จะเห็นเฉพาะสแนปชอตที่เปิดอยู่ ไม่เห็นการปิดตำแหน่ง
}
}
}
หมายเหตุสำคัญ: ทุกสิ่งที่แสดงคือ ข้อมูลจริง จากข้อมูลสแนปชอต — pnl เป็นมูลค่าตามตลาดที่ยังไม่realized ของ HL เอง value_usd คือมูลค่าการเปิดเผย ไม่สามารถแสดงกำไร/ขาดทุนที่realized ต่อรอบได้ (เราเห็นเฉพาะสแนปชอตที่เปิดอยู่ ไม่เห็นการปิดตำแหน่ง) และแสดงเป็น null / ; เหตุการณ์ CLOSE ในไทม์ไลน์ไม่มีข้อมูลกำไร/ขาดทุน ที่อยู่ที่ถูกต้องแต่ไม่ถูกติดตามจะคืนค่า tracked: false พร้อมหมายเหตุ; ที่อยู่ที่ไม่ถูกต้องจะคืนค่า ok: false, error: "invalid_address" (HTTP 400) ป้าย HL-leaderboard เป็นข้อมูลสถานะหน้าต่างของ HL เองเมื่อค้นพบ ไม่ได้คำนวณโดยเรา

GET  /flows

ต้องการ: Pro

คืนข้อมูลการไหลของทุนข้ามสินทรัพย์ แสดงรูปแบบการหมุนเวียนระหว่าง BTC, ETH และ SOL ในหลายช่วงเวลา มีประโยชน์สำหรับการระบุว่าสินทรัพย์ใดกำลังสะสมทุนและสินทรัพย์ใดกำลังถูกกระจายในขณะใดก็ตาม

ตัวอย่างการตอบกลับ

JSON
{
เวลา: 1710940821,
การไหล: {
BTC: { 1h: 142000000, 4h: 380000000, 12h: -90000000, 24h: 220000000 },
ETH: { 1h: -38000000, 4h: -110000000, 12h: 55000000, 24h: -80000000 },
SOL: { 1h: 12000000, 4h: 29000000, 12h: 18000000, 24h: 44000000 }
},
ตรวจพบการหมุนเวียน: [
ทุนกำลังหมุนจาก ETH ไป BTC ในหน้าต่าง 4 ชั่วโมง,
SOL สะสมอย่างสม่ำเสมอในทุกหน้าต่าง
]
}
ต้องใช้แผน Pro ค่าการไหลคือมูลค่าการไหลสุทธิเข้า (บวก) หรือออก (ลบ) ในแต่ละหน้าต่างเวลา เป็น USD

GET  /whale-events

ต้องการ: Trader Pro

คืนการเปลี่ยนแปลงตำแหน่งวาฬที่สำคัญ — การเปิด, การปิด และการเปลี่ยนทิศทาง — ที่ตรวจพบในกระเป๋าเงินและที่อยู่บนเชนที่ถูกติดตามภายในหน้าต่างเวลาที่กำหนด

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
สัญลักษณ์ไม่จำเป็นสตริงกรองตามสินทรัพย์ ไม่ระบุเพื่อดูสินทรัพย์ทั้งหมดที่ติดตาม
ความสำคัญไม่จำเป็นสตริงกรองตามความสำคัญของเหตุการณ์: high, medium, หรือ all. ค่าเริ่มต้น: all
ชั่วโมงไม่จำเป็นจำนวนเต็มหน้าต่างเวลาย้อนหลังเป็นชั่วโมง ค่าเริ่มต้น: 24

ตัวอย่างการตอบกลับ

JSON
{
สัญลักษณ์: BTC,
สรุป: {
เปลี่ยนเป็น long: 3,
เปลี่ยนเป็น short: 1,
เปิดใหม่: 7,
ปิด: 2
},
เหตุการณ์: [
{
"type": "flip_long",
"wallet": "0xWhale...a4f2",
"direction": "long",
"size_usd": 4200000,
"ts": 1710938400
}
]
}
แผนเทรดเดอร์: ส่งคืนเฉพาะ summary อ็อบเจ็กต์เท่านั้น แผนโปร: ฟีดแบบเต็ม events พร้อมตัวระบุกระเป๋าเงิน ขนาด และประทับเวลา

GET  /regimes/history

ต้องใช้: โปร

ส่งคืนข้อมูลการจำแนกระบอบการปกครองย้อนหลังสำหรับสินทรัพย์ที่กำหนด ใช้เพื่อทดสอบย้อนกลับว่าประเภทระบอบเฉพาะมีการดำเนินการในอดีตอย่างไร แต่ละประเภทระบอบมักจะอยู่นานแค่ไหน และการเปลี่ยนระบอบเกิดขึ้นอย่างไรเมื่อเวลาผ่านไป

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symboloptionalstringสัญลักษณ์สินทรัพย์ ค่าเริ่มต้น: BTC
regimeoptionalstringกรองตามประเภทระบอบเฉพาะ เช่น late_cycle_divergence ละเว้นสำหรับทุกระบอบ
daysoptionalintegerหน้าต่างย้อนหลังเป็นวัน ค่าเริ่มต้น: 30 สูงสุด: 365

ตัวอย่างการตอบสนอง

JSON
{
"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.2 }
},
"transitions": [
{ "from": "accumulation", "to": "breakout", "ts": 1710850000 },
{ "from": "breakout", "to": "late_cycle_divergence", "ts": 1710915000 }
]
}
ต้องใช้แผนโปร ผสมกับ /analysis เพื่อตรวจสอบสมมติฐานกลยุทธ์กับข้อมูลประสิทธิภาพระบอบย้อนหลัง

GET  /exchange-health

ใช้งานได้สำหรับ: ฟรี เทรดเดอร์ โปร

ส่งคืนสถานะสุขภาพแบบเรียลไทม์สำหรับทุกการแลกเปลี่ยนที่ตรวจสอบ รวมถึงความล่าช้า อัตราข้อผิดพลาด และตัวบ่งชี้ความเก่าของข้อมูลต่อการแลกเปลี่ยน ไม่จำเป็นต้องตรวจสอบสิทธิ์ — จุดปลายทางที่เข้าถึงได้สาธารณะ

ตัวอย่างการตอบสนอง

JSON
{
"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

ต้องใช้: เทรดเดอร์ โปร

ส่งคืนดัชนี Fear & Greed (0-100) แบบเรียลไทม์ที่คำนวณจากความรู้สึกอนุพันธ์ กิจกรรมวาฬ ความผันผวน และสัญญาณโซเชียล รวมถึงการแบ่งส่วนประกอบและประวัติ 24 ชั่วโมงสำหรับการวิเคราะห์แนวโน้ม

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symboloptionalstringสัญลักษณ์สินทรัพย์ ค่าเริ่มต้น: BTC

ตัวอย่างการตอบกลับ

JSON
{
"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
}
คู่แข่งที่เทียบเท่า: Santiment Social Volume + Alternative.me Fear & Greed — รวมเป็นจุดปลายทางเดียวพร้อมการแบ่งส่วนประกอบ

การเชื่อมต่อ

GET  /tradingview/setup

จำเป็นต้องใช้: Trader Pro

คืนค่าการตั้งค่าการเชื่อมต่อ TradingView ส่วนบุคคลของคุณ: URL เว็บฮุค, รหัสลับสำหรับการตรวจสอบ และตัวบ่งชี้ Pine Script ที่พร้อมใช้งานซึ่งเชื่อมต่อโดยตรงกับ Smart Money API คัดลอก-วาง Pine Script ลงใน TradingView เพื่อแสดงสัญญาณของเราเหนือแผนภูมิใดก็ได้

ตัวอย่างการตอบกลับ

JSON
{
"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

ใช้งานได้กับ: Trader Pro

รับการแจ้งเตือนจาก TradingView ตรวจสอบผ่าน /confirmและคืนค่าการยืนยัน TradingView ไม่สามารถส่งส่วนหัวแบบกำหนดเองได้ ดังนั้นให้ตรวจสอบสิทธิ์โดยรวมเว็บฮุคของคุณ secret ในเนื้อหา JSON (จุดปลายทางนี้ไม่ใช้ X-API-Key) การตอบกลับจะรวมการยืนยันและเพิ่มระดับบนสุด action ของ CONFIRMED (ความมั่นใจของ daemon HIGH/MEDIUM) หรือ VETOED.

เนื้อหาการร้องขอ

JSON
{
"secret": "your_webhook_secret",
"symbol": "BTC",
"direction": "long",
"timeframe": "1h",
"strategy": "EMA crossover",
"price": 67500.0
}

จำเป็นต้องใช้: secret, symbol, direction (long|short) ไม่จำเป็น: source, timeframe, strategy, price.

การกำหนดค่าเฉพาะบุคคล

GET  /preferences

จำเป็นต้องใช้: Trader Pro

คืนค่าการตั้งค่าการกำหนดค่าเฉพาะบุคคลปัจจุบันของคุณ รวมถึงพารามิเตอร์การเทรดเริ่มต้น โปรไฟล์ความเสี่ยง รายการสังเกตการณ์ และการตั้งค่าการแจ้งเตือน

PUT /v1/preferences

อัปเดตการตั้งค่าโดยส่งเนื้อหา JSON พร้อมช่องข้อมูลย่อยใดก็ได้ ช่องข้อมูลที่ละเว้นจะคงค่าปัจจุบันไว้

ช่องข้อมูลการตั้งค่า

ช่องข้อมูลประเภทคำอธิบาย
default_trade_size_usdfloatขนาดตำแหน่งเริ่มต้นใน USD สำหรับการคำนวณ Kelly และ smart-stop
risk_tolerancestringconservative, moderateหรือ aggressive
default_risk_pctfloatความเสี่ยงเริ่มต้นต่อการเทรดเป็น % ของบัญชี ใช้โดย /smart-stop เมื่อ risk_pct ถูกละเว้น
watchlistarrayรายการสัญลักษณ์สินทรัพย์ที่เรียงลำดับ เช่น ["BTC","ETH","SOL"]
notification_emailstringที่อยู่อีเมลสำหรับการส่งการแจ้งเตือน
timezonestringสตริงเขตเวลา IANA เช่น America/New_York
PUT — ตัวอย่างเนื้อหา
{
"default_trade_size_usd": 5000,
"risk_tolerance": "moderate",
"default_risk_pct": 1.5,
"watchlist": ["BTC", "ETH", "SOL"]
}

GET  /watchlist

ต้องการ: เทรดเดอร์ โปร

ส่งกลับสถานะการยืนยันและเมตริกความเสี่ยงหลักสำหรับทุกสัญลักษณ์ในวอชลิสต์ที่คุณกำหนดค่าไว้ ให้ภาพรวมหลายสินทรัพย์โดยไม่ต้องเรียก /confirm แยกกันสำหรับแต่ละสัญลักษณ์

ตัวอย่างการตอบกลับ

JSON
{
"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"
}
]
}

สตรีมมิ่งแบบเรียลไทม์ (สวอปสด)

สตรีมการสวอปบน DEX ≥ $500 ที่ตรวจจับได้แบบเรียลไทม์จากโหนด BSC และ Avalanche ของเราเอง มีสองช่องทางให้เลือก: สตรีม Server-Sent Events (SSE) สาธารณะสำหรับไคลเอนต์ฟรี/เบราว์เซอร์ และไฟร์โฮส WebSocket ความหน่วงต่ำสำหรับระดับที่ต้องชำระเงิน กิจกรรมจะถูกออกอากาศภายในไม่กี่วินาทีหลังจากรวมอยู่ในบล็อก

สตรีม SSE สาธารณะ (ฟรี)

ใช้งานได้กับ: ฟรี เทรดเดอร์ โปร
GET /v1/stream/public-swaps

ไม่จำเป็นต้องตรวจสอบสิทธิ์ รองรับ EventSource ในเบราว์เซอร์สมัยใหม่ทั้งหมด เซิร์ฟเวอร์จะส่ง swap กิจกรรมและสัญญาณเตือนเป็นระยะเพื่อรักษาการเชื่อมต่อ

JavaScript (เบราว์เซอร์)
const es = new EventSource("https://api.smartmoneyapi.com/v1/stream/public-swaps");
es.addEventListener("swap", e => {
  const swap = JSON.parse(e.data);
  console.log(swap.chain, swap.pair, swap.amount_usd);
});

ไฟร์โฮส WebSocket (ชำระเงิน)

ต้องการ: เทรดเดอร์ โปร
WSS /v1/ws/live-swaps?ticket=…

การตรวจสอบสิทธิ์ (แนะนำ): อย่าวางคีย์ที่ใช้งานยาวนานใน URL — มันจะถูกบันทึกโดยพร็อกซีและบันทึกในประวัติเบราว์เซอร์ แทนที่จะ POST คีย์ของคุณไปที่ /v1/ws/ticket ใช้ส่วนหัวที่ปลอดภัย X-API-Key จากนั้นเปิดซ็อกเก็ตด้วย ticket (ใช้งานได้ ~60 วินาที ใช้ได้ครั้งเดียว) ไคลเอนต์ฝั่งเซิร์ฟเวอร์ที่สามารถตั้งค่าส่วนหัวอาจส่ง X-API-Key โดยตรงในการเชื่อมต่อมือ คีย์ระดับฟรีจะได้รับ 402 payment_required ตอบกลับ เฟรม hello จะถูกส่งเมื่อเชื่อมต่อพร้อมระดับและเกณฑ์การออกอากาศของคุณ

JavaScript (เบราว์เซอร์)
// 1. แลกคีย์ของคุณเพื่อรับตั๋วชั่วคราว (คีย์ยังคงอยู่ในส่วนหัว)
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. เปิดซ็อกเก็ตด้วยตั๋วใช้ครั้งเดียว
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);
};

การตรวจสอบสิทธิ์ WebSocket (ตั๋ว)

เหตุผล: อย่าวางคีย์ API ของคุณใน URL WebSocket — สตริงคำสั่งจะถูกบันทึกโดยพร็อกซี โหลดบาลานเซอร์ และบันทึกในประวัติเบราว์เซอร์ แทนที่จะแลกคีย์ของคุณสำหรับ ตั๋ว ที่ใช้งานชั่วคราวและใช้ครั้งเดียวผ่าน POST ที่ตรวจสอบสิทธิ์ปกติ จากนั้นเชื่อมต่อด้วยตั๋วนั้น

ขั้นตอน: POST ไปที่ /v1/ws/ticket ด้วยส่วนหัว X-API-Key ของคุณ → รับ { "ticket": "…", "expires_in": 60 }จากนั้นเปิด wss://api.smartmoneyapi.com/v1/ws/live-swaps?ticket=<ticket>. The ticket is single-use and expires in ~60 seconds. Server-side clients that can set request headers may instead pass X-API-Key directly on the WebSocket handshake — no ticket needed.

POST /v1/ws/ticket
Requires: Trader Pro

Mints a one-time ticket for an authenticated WebSocket handshake. Authenticate with the X-API-Key header (your key never leaves the request headers). The returned ticket can be redeemed once on /v1/ws/live-swaps before it expires.

cURL
curl -X POST -H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/ws/ticket"

Example Response

JSON
{
"ticket": "wst_9f3c1a8e4b2d…",
"expires_in": 60
}

Response Fields

FieldTypeDescription
ticketstringSingle-use token to append as ?ticket= on the WebSocket URL. Redeemed once, then invalidated.
expires_innumberSeconds until the ticket expires (~60). Mint a fresh ticket per connection attempt.

Note: the legacy ?key= query-param authentication is no longer accepted on WebSocket endpoints for security reasons. Use a ticket (browser clients) or the X-API-Key handshake header (server-side clients).

REST Snapshot

GET /v1/live-swaps/recent?limit=20

Returns the last N broadcast swaps from the rolling buffer. Useful for first-paint on dashboards before the stream connection opens. Also available: /v1/live-swaps/status for broadcaster stats.

Event Schema

FieldTypeDescription
chainstringbsc or avalanche
dexstringRouter name (e.g. pancakeswap_v2, traderjoe) or unknown_dex
swapperstringFull 0x address of the wallet that executed the swap
swapper_shortstringAbbreviated form for display (e.g. 0xb300…028d)
swapper_urlstringDirect link to the swapper on the chain's block explorer
tx_hashstringTransaction hash
explorer_urlstringDirect link to the transaction on BscScan / Snowtrace
token_instringSymbol of the token sold (e.g. USDT)
token_outstringSymbol of the token bought
amount_usdnumberUSD value of the swap (minimum: $500)
pairstringFormatted pair label (e.g. USDT → USDC)
blocknumberBlock number where the swap was mined
timestampnumberUnix epoch seconds
significancestringlow / medium / high / critical based on USD size
seqnumberMonotonic broadcast sequence number — use for gap detection

POST  /alerts/conditions

Requires: Pro

Create custom alert rules that trigger when a specified metric crosses a threshold. Alerts are delivered via webhook, email, or the dashboard notification feed depending on your preferences.

GET /v1/alerts/conditions

Returns a list of all your configured alert conditions with their IDs, definitions, and current status.

DELETE /v1/alerts/conditions/{id}

Permanently removes an alert condition by its ID.

GET /v1/alerts/history

Returns recent alert trigger events with timestamps, matched conditions, and the metric value at the time of trigger.

Create Alert — Request Body

FieldTypeDescription
namerequiredstringป้ายกำกับที่มนุษย์อ่านเข้าใจได้สำหรับการแจ้งเตือนนี้ (สูงสุด 64 ตัวอักษร)
metricrequiredstringเมตริกที่ต้องการตรวจสอบ ดูตารางเมตริกที่มีได้ด้านล่าง
symboloptionalstringบริบทของสินทรัพย์ จำเป็นสำหรับเมตริกที่จำกัดด้วยสัญลักษณ์ เช่น funding_rate.
operatorrequiredstringตัวดำเนินการเปรียบเทียบ: gt, lt, eq, crosses_above, crosses_below
thresholdrequiredfloatค่าตัวเลขเพื่อเปรียบเทียบกับเมตริก
deliveryoptionalstringช่องทางการส่ง เช่น telegram (default) หรือ webhook
cooldown_minutesoptionalintegerจำนวนนาทีขั้นต่ำระหว่างการทริกเกอร์ซ้ำ (ค่าเริ่มต้น 60)

รายการเมตริกและตัวดำเนินการที่ถูกต้องจะถูกส่งกลับโดย GET /v1/alerts/conditions as available_metrics and available_operators.

เมตริกที่มีให้

เมตริกคำอธิบาย
funding_rateอัตรา funding ปัจจุบันสำหรับสัญลักษณ์ (เป็นทศนิยม)
global_lsrอัตราส่วน long/short ทั่วโลกสำหรับสัญลักษณ์
long_pctเปอร์เซ็นต์ของบัญชีที่ long สุทธิสำหรับสัญลักษณ์
top_trader_lsrอัตราส่วน long/short ของเทรดเดอร์ชั้นนำสำหรับสัญลักษณ์
taker_ratioอัตราส่วนการซื้อ/ขายของ taker สำหรับสัญลักษณ์
mvrvอัตราส่วน Market Value to Realized Value (BTC/ETH)
soprอัตราส่วนกำไรของผลลัพธ์ที่ใช้แล้ว (BTC/ETH)
exchange_net_flowสัญญาณการไหลสุทธิของ exchange บน-chain
accumulationสัญญาณการสะสมบน-chain
whale_long_pctเปอร์เซ็นต์ของวอลเล็ตปลาวาฬที่ติดตามซึ่งถือตำแหน่ง long สำหรับสัญลักษณ์
whale_n_walletsจำนวนวอลเล็ตปลาวาฬที่ติดตามที่มีตำแหน่งในสัญลักษณ์
composite_longคะแนนคอมโพสิตสำหรับสัญลักษณ์ที่สอบถามในทิศทาง long
composite_shortคะแนนคอมโพสิตสำหรับสัญลักษณ์ที่สอบถามในทิศทาง short
funding_spreadส่วนต่าง funding ข้ามเว็บสำหรับสัญลักษณ์
POST — ตัวอย่าง Body
{
"name": "BTC funding rate spike",
"metric": "funding_rate",
"symbol": "BTC",
"operator": "gt",
"threshold": 0.05
}

GET  /kelly

Requires: Pro

ส่งกลับคำแนะนำการกำหนดขนาดตำแหน่งตาม Kelly Criterion ที่ปรับเทียบกับประสิทธิภาพสัญญาณในอดีตสำหรับสัญลักษณ์ที่กำหนด ระดับความมั่นใจ และทิศทาง กำหนดขนาดตำแหน่งตามอัตราชนะเชิงประจักษ์เพื่อหลีกเลี่ยงการใช้เลเวอเรจมากเกินไป

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symbolrequiredstringสัญลักษณ์สินทรัพย์: BTC, ETH, หรือ SOL
confidenceoptionalstringระดับความมั่นใจของสัญญาณที่จะจำลอง: HIGH, MEDIUM, หรือ LOW. ค่าเริ่มต้น: HIGH
directionoptionalstringทิศทางการเทรด: long หรือ short. ค่าเริ่มต้น: long
account_sizeoptionalfloatขนาดบัญชีใน USD สำหรับการคำนวณ suggested_size_usd. ค่าเริ่มต้น: 10000

ตัวอย่างการตอบกลับ

JSON
{
"symbol": "BTC",
"confidence": "HIGH",
"direction": "long",
"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 สำหรับการเทรดจริงเพื่อรองรับข้อผิดพลาดในการประมาณการ"
}
ต้องใช้แผน Pro การคำนวณอิงตามตัวอย่างสัญญาณย้อนหลัง 90 วันที่ตรงกับพารามิเตอร์สัญลักษณ์, ความมั่นใจ, และทิศทางที่ร้องขอ

GET  /performance

ใช้งานได้โดย: Free Trader Pro

ส่งกลับสถิติความแม่นยำย้อนหลังของสัญญาณที่ออกโดย API แบ่งตามระดับความมั่นใจ มีประโยชน์สำหรับการทำความเข้าใจความน่าเชื่อถือของสัญญาณก่อนลงทุน

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
symboloptionalstringกรองตามสินทรัพย์ หากไม่ระบุจะแสดงสถิติรวมทั้งหมด
daysoptionalintegerช่วงเวลาย้อนหลังเป็นวัน ค่าเริ่มต้น: 30

ตัวอย่างการตอบกลับ

JSON
{
"symbol": "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 }
}
}

สถิติและสัญญาณ

GET  /v1/stats

ใช้งานได้โดย: Free Trader Pro ไม่ต้องยืนยันตัวตน

สถิติประสิทธิภาพโดยรวมของเว็บไซต์ที่มาจาก smart_money_confirm ผลลัพธ์การเรียกที่แตกต่างกัน ส่งกลับอัตราชนะในระดับความมั่นใจ HIGH และ MEDIUM, ความแม่นยำโดยรวม, ปัจจัยกำไร, และการแบ่งตามสัญลักษณ์ ตัวเลขทั้งหมดเป็นแบบ in-sample ในช่วงเวลาการให้คะแนน ดู calibration.html สำหรับบริบทและวิธีการ forward-holdout

ตัวอย่างการตอบกลับ

JSON
{
"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": "distinct confirm calls, 24h resolved outcomes",
"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
}
}
ข้อควรระวังแบบ in-sample ตัวเลขทั้งหมดในการตอบกลับนี้คำนวณจากช่วงเวลาเดียวกับที่ใช้ปรับแต่ง scorer โดย forward_holdout object เป็นตัวเลขเดียวที่รวบรวมจากข้อมูลที่ scorer ไม่เคยเห็นมาก่อน — คอยดูการเติบโตของมันเมื่อเวลาผ่านไป ดู calibration.html สำหรับวิธีการเต็มรูปแบบและขอบเขตระหว่าง in-sample / forward-test

GET  /v1/signals/performance

ใช้งานได้โดย: Free Trader Pro ไม่ต้องยืนยันตัวตน

การติดตามผลลัพธ์สัญญาณข้ามช่วงเวลาต่างๆ (4h, 12h, 24h, 72h) ส่งกลับอัตราการชนะต่อช่วงเวลา, จำนวนสัญญาณทั้งหมด, และการแบ่งตามประเภทสัญญาณ

พารามิเตอร์

พารามิเตอร์ประเภทคำอธิบาย
daysoptionalintegerช่วงเวลาย้อนหลังเป็นวัน ค่าเริ่มต้น: 30
signal_typeoptionalstringกรองตามประเภท เช่น smart_money_confirm หรือ regime_flip. หากไม่ระบุจะแสดงทั้งหมด
symboloptionalstringกรองตามสัญลักษณ์สินทรัพย์ เช่น BTC. หากไม่ระบุจะแสดงรวมทั้งหมด

ตัวอย่างการตอบกลับ

JSON
{
"signal_type": "smart_money_confirm",
"symbol": "BTC",
"days": 30,
"total_signals": 48,
horizons: {
4h: { hit_rate: 0.65, resolved: 46 },
12h: { hit_rate: 0.61, resolved: 44 },
24h: { hit_rate: 0.58, resolved: 40 },
72h: { hit_rate: 0.54, resolved: 32 }
},
type_breakdown: {
smart_money_confirm: { count: 35, hit_rate_24h: 0.61 },
regime_flip: { count: 13, hit_rate_24h: 0.47 }
}
}

GET  /v1/signals/recent

Available to: Free Trader Pro No authentication required

Feed of recently published HIGH and MEDIUM signals across all monitored symbols. Each entry includes the signal type, confidence tier, direction, and resolution status where available.

Example Response

JSON
{
signals: [
{
id: 1042,
symbol: BTC,
direction: long,
signal_type: smart_money_confirm,
confidence: HIGH,
composite: 0.74,
ts: 1710940821,
resolved: true,
outcome_24h: win
}
],
count: 50
}

GET  /v1/signals/{id}/outcome

Available to: Free Trader Pro No authentication required

Resolved outcome for a single signal by its numeric ID. Returns hit/miss at each resolution horizon (4h, 12h, 24h, 72h) along with the price at signal time and at resolution.

Parameters

ParameterTypeDescription
idrequiredintegerSignal ID (path segment), e.g. /v1/signals/1042/outcome

Example Response

JSON
{
id: 1042,
symbol: BTC,
direction: long,
confidence: HIGH,
entry_price: 63200.0,
ts: 1710940821,
outcomes: {
4h: { result: win, price: 64100.0, pct: 1.41 },
12h: { result: win, price: 65200.0, pct: 3.16 },
24h: { result: win, price: 65800.0, pct: 4.11 },
72h: { result: pending, price: null, pct: null }
}
}

GET  /v1/confirm-winrate

Requires: Free Trader Pro

Confirm-signal win-rate breakdown for the authenticated user's own API key. Returns distinct-call win rates at each confidence tier, profit factor, and per-symbol figures. Requires a valid X-API-Key header.

Example Request

cURL
curl -H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/confirm-winrate"

Example Response

JSON
{
high_winrate: 0.714,
high_n: 14,
medium_winrate: 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 }
}
}
ฐานการคำนวณแบบ Distinct-call อัตราชนะคำนวณต่อการยืนยันแต่ละครั้ง (หนึ่งครั้งต่อสัญลักษณ์ทุก 5 นาที) ไม่ใช่ทุกครั้งที่เรียก API — เพื่อป้องกันการเพิ่มขึ้นของ N จากบอทที่เรียกซ้ำ ๆ ตัวเลขเป็นข้อมูลในตัวอย่างในช่วงเวลา 30 วันเริ่มต้น โดยมีข้อจำกัดเช่นเดียวกับ /v1/stats ที่ระบุไว้

Shadow Gate

ต้องการ: Free Trader Pro

บันทึกการตัดสินใจส่วนบุคคลแบบไม่เปลี่ยนแปลงและเพิ่มเติมได้เท่านั้น ส่งการตัดสินใจซื้อขายของคุณก่อนหรือหลังการดำเนินการ ระบบจะคำนวณคะแนนยืนยันเทียบกับ Smart Money engine และเพิ่มเป็นแถวถาวร ใช้เพื่อสร้างประวัติการทำงานที่ตรงเวลาและซื่อสัตย์ว่าสัญญาณจาก API สอดคล้องกับการเข้าซื้อขายของคุณอย่างไร — โดยไม่เกี่ยวข้องกับอัตราชนะรวม global win-rate pool การตอบกลับระดับ Free และ Trader จะไม่มีข้อมูล evidence ส่วน Pro จะแสดงรายละเอียดทั้งหมด ข้อมูลระดับ Free จะมี delay ตาม tier

POST /v1/shadow-gate/decisions

ส่งการตัดสินใจ สามารถทำซ้ำได้โดยใช้ Idempotency-Key request header — การส่งคีย์เดิมซ้ำจะได้แถวที่มีอยู่โดยไม่สร้างซ้ำ ระบบจะเรียกใช้ confirm engine ทันทีและเพิ่มผลลัพธ์เป็นแถวในบันทึกที่ไม่เปลี่ยนแปลง

Request Body

FieldTypeDescription
symbolrequiredstringสัญลักษณ์สินทรัพย์ เช่น BTC
siderequiredstringทิศทางการซื้อขาย: long หรือ short
strategy_idoptionalstringป้ายกำกับกลยุทธ์ที่กำหนดโดยผู้เรียก (สูงสุด 64 ตัวอักษร) เก็บไว้ตามที่ระบุสำหรับการจัดกลุ่มและการกรอง

Example Request

cURL
curl -X POST \
-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"

Example Response

JSON
{
"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
}
หมายเหตุระดับ Tier การตอบกลับระดับ Free และ Trader จะไม่มี factors / adjustments ข้อมูล evidence ส่วน Pro จะแสดงรายละเอียดการยืนยันทั้งหมด ข้อมูลระดับ Free จะมี delay — แถวจะถูกเขียนทันทีแต่คะแนนยืนยันอาจใช้ข้อมูลแคชที่มีอายุสูงสุด 60 วินาที
GET /v1/shadow-gate/decisions

แสดงรายการการตัดสินใจ shadow-gate ของคุณ เรียงจากใหม่ที่สุด จำกัดเฉพาะผู้ใช้ — จะแสดงเฉพาะการตัดสินใจที่ส่งด้วย API key ของคุณ

Parameters

ParameterTypeDescription
limitoptionalintegerจำนวนแถวสูงสุดที่จะส่งกลับ ค่าเริ่มต้น: 50, สูงสุด: 200
cursoroptionalstringตัวแบ่งหน้าแบบไม่โปร่งใสจาก next_cursor field ใน response ก่อนหน้า ปล่อยว่างสำหรับหน้าแรก

Example Response

JSON
{
"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", "decision": "SKIP", "confidence": "LOW", "composite": -0.12, "size_mult": 0.0, "ts": 1710937000, "resolved": true }
],
"count": 2,
"next_cursor": null
}
GET /v1/shadow-gate/decisions/{id}

การตัดสินใจเดียวตาม ID รวมถึงหลักฐานยืนยันเต็มสำหรับระดับ Pro การตอบกลับของระดับ Free และ Trader จะมี factors และ adjustments ถูกตัดออก ส่งคืน 403 หากการตัดสินใจเป็นของ API key อื่น

ตัวอย่างการตอบกลับ (Pro)

JSON
{
"id": 318,
"symbol": "BTC",
"side": "long",
"strategy_id": "ema_crossover",
"decision": "CONFIRM",
"confidence": "HIGH",
"composite": 0.74,
"size_mult": 1.5,
"factors": {
"derivatives": { "score": 0.81, "weight": 0.40, "weighted": 0.324 },
"onchain": { "score": 0.68, "weight": 0.35, "weighted": 0.238 },
"whale": { "score": 0.73, "weight": 0.25, "weighted": 0.183 }
},
"ts": 1710940821,
"resolved": false,
"outcome": null
}
POST /v1/shadow-gate/decisions/{id}/resolve

แก้ไขผลลัพธ์ของการตัดสินใจด้วยตนเอง เรียกใช้หลังจากปิดการเทรดเพื่อบันทึกผลลัพธ์สุดท้ายกับแถวบัญชีแยกประเภท เมื่อแก้ไขแล้ว แถวจะไม่สามารถเปลี่ยนแปลงได้อีก

เนื้อหาคำขอ

ฟิลด์ประเภทคำอธิบาย
outcomerequiredstringผลลัพธ์การเทรด: win หรือ loss
exit_priceoptionalfloatราคาปิดการเทรด เก็บไว้สำหรับอ้างอิง ใช้ในการคำนวณ P&L % หากระบุ
pnl_pctoptionalfloatกำไรหรือขาดทุนที่เกิดขึ้นจริงเป็นเปอร์เซ็นต์ของขนาดตำแหน่ง เช่น 3.5 หรือ -1.2

ตัวอย่างการตอบกลับ

JSON
{
"id": 318,
"resolved": true,
"outcome": "win",
"exit_price": 65800.0,
"pnl_pct": 4.1,
"resolved_at": 1711027200
}
ความไม่เปลี่ยนแปลง แถวบัญชีแยกประเภทเป็นแบบเพิ่มเท่านั้น เมื่อส่งการตัดสินใจแล้วจะไม่สามารถลบได้ และเมื่อแก้ไขแล้วจะไม่สามารถแก้ไขซ้ำได้ สิ่งนี้ทำให้ประวัติที่คุณสร้างขึ้นมีความซื่อสัตย์และตรวจสอบได้

รหัสข้อผิดพลาด

สถานะรหัสคำอธิบาย
400invalid_paramsพารามิเตอร์คำขอขาดหรือไม่ถูกต้อง
401unauthorizedAPI key ขาดหรือไม่ถูกต้อง
403plan_restrictionจุดสิ้นสุดไม่พร้อมใช้งานในแผนปัจจุบันของคุณ
429rate_limit_exceededถึงขีดจำกัดรายวันหรือครั้งเดียว
500internal_errorข้อผิดพลาดเซิร์ฟเวอร์ — ตรวจสอบ /health สำหรับสถานะแหล่งที่มา
503data_staleแหล่งข้อมูลไม่พร้อมใช้งาน ส่งคืนด้วยข้อมูลล่าสุดที่รู้จัก

ตัวอย่างโค้ด

Python

Python
import requests

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"]) # HIGH / MEDIUM
print(data["size_mult"]) # 1.5 / 1.0
Python
import requests

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()

# ในลูปการเทรดของคุณ:
signal = confirm_trade("BTC", "long")
if signal["confidence"] not in ["HIGH", "MEDIUM"]:
print("ข้าม — ความมั่นใจไม่เพียงพอ")
else:
size = base_size * signal["size_mult"]
place_order(symbol, direction, size)

JavaScript / Node.js

JavaScript
const API_KEY = 'sm_your_key';

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 (!resok) throw new Error(`API error: ${resstatus}`);
return res.json();
}

// การใช้งาน
confirmTrade('BTC', 'long').then(data => {
console.log(dataconfidence, datasize_mult);
});

cURL

Shell
# ยืนยันการเทรด long
curl -X GET \
-H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/confirm?symbol=BTC&direction=long"

# รับข้อมูลวาฬ
curl -X GET \
-H "X-API-Key: sm_your_key" \
"https://api.smartmoneyapi.com/v1/whales?symbol=BTC"

# ตรวจสอบการใช้งาน
curl -X GET \
-H X-API-Key: sm_your_key \
https://api.smartmoneyapi.com/v1/usage

การรวม Freqtrade

เพิ่มการยืนยัน Smart Money ให้กับกลยุทธ์ Freqtrade ใดๆ โดยการแทนที่ confirm_trade_entry method.

Python — กลยุทธ์ Freqtrade
import requests
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 not in ["BTC", "ETH", "SOL"]:
return True # ข้ามการตรวจสอบสำหรับสัญลักษณ์ที่ไม่รองรับ
try:
r = requests.get(
f"{self.SM_BASE}/confirm",
params={"symbol": symbol, "direction": "long"},
headers={"X-API-Key": self.SM_API_KEY},
timeout=3
).json()
return r.get("confidence") in ["HIGH", "MEDIUM"]
except:
return True # ยอมให้ผ่านหากเกิดข้อผิดพลาดจาก API

CCXT + Smart Money

Python — CCXT
import ccxt, requests

exchange = ccxt.bybit({
"apiKey": "YOUR_BYBIT_KEY",
"secret": "YOUR_BYBIT_SECRET"
})

SM_KEY = "sm_your_key"

def smart_trade(symbol, side, amount):
# ตรวจสอบการยืนยันก่อน
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"ข้าม {symbol} {side} — ความมั่นใจไม่เพียงพอ")
return None

adj_amount = amount * conf["size_mult"]
order = exchange.create_market_order(
f"{symbol}/USDT", side, adj_amount
)
print(f"ส่งคำสั่งแล้ว: {adj_amount} {symbol} {side}")
return order
ต้องการความช่วยเหลือ?

ตรวจสอบ หน้าแสดงสถานะ API เพื่อดูข้อมูลสุขภาพแบบเรียลไทม์ หรือใช้ แบบฟอร์มติดต่อเรา.