كتاب الطبخ
كتاب وصفات API
وصفات عملية جاهزة للنسخ واللصق لأكثر الطرق شيوعًا لربط واجهة برمجة تطبيقات تأكيد التداول Smart Money بالبوت. كل وصفة تستدعي GET /v1/confirm وتتصرف بناءً على action, confidence، و size_multiplier. أرسل مفتاحك في رأس X-API-Key — انظر الوثائق الكاملة.
الوصفة 1
تأكيد قبل الدخول (Python)
الحلقة الأساسية. قبل أن تفتح استراتيجيتك مركزًا، اسأل واجهة البرمجة عما إذا كانت بنية السوق توافق. ادخل فقط عندما action == "CONFIRM".
import requests "sm_your_key"
"https://api.smartmoneyapi.com/v1" def
confirm (symbol, direction):get(f"{BASE}/confirm","symbol": symbol, "direction": direction},"X-API-Key": API_KEY},5timeout=,()
raise_for_status returnjson() confirm("BTC", "long")
if sig["action"] == "CONFIRM":
place_order("BTC", "long")
else:
print("تخطي:", sig["reasons"])
{
"symbol": "BTC",
"direction": "long",
"action": "CONFIRM",
"confidence": "HIGH",
"composite": 0.74,
"size_mult": 1.5,
"reasons": ["التمويل إيجابي عبر المنصات", "الحيتان 67% شراء"]
}
الوصفة 2
بوابة إشارة Freqtrade
تجاوز confirm_trade_entry حتى يأخذ Freqtrade فقط الصفقات التي يؤكدها API. فشل فتح عند أخطاء API حتى لا يحظر المهلة كل التداول.
import requests
from freqtrade.strategy import IStrategy
class SmartMoneyStrategy(IStrategy):
SM_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
حاول:r = requests.({self.SM_BASE}/confirm,{"symbol": الرمز "الاتجاه": "شراء"}،
رؤوس="X-API-Key": self.SM_KEY}،
مهلة=3,
).json()
إرجاع ص.احصل على("إجراء") == "تأكيد"
باستثناء استثناء:
إرجاع صحيح
وصفة 3
الحجم حسب مضاعف الحجم
دع القناعة تحدد حجم المركز. اضرب حجمك الأساسي في size_mult (0.0–1.5) بحيث تحصل الصفقات ذات الثقة العالية على رأس مال أكثر والضعيفة على أقل.
BASE_SIZE_USD = 1000
sig = تأكيد("ETH", شراءمضاعف = إشارة.احصل على(مضاعف الحجم, 0.0الحجم = BASE_SIZE_USD * mult
إذا الحجم > 0:
وضع الطلب(ETH, شراء, size_usd=size)
print(f"دخل ${size:.0f} (مضاعف {mult})")
A size_mult القيمة 0.0 تعني عدم الدخول — نفس نتيجة تخطي الأمر. عالج أي شيء أقل من الحد الأدنى الخاص بك كتخطي.
الوصفة 4
تخطي عند SKIP / تقليل عند REDUCE
تعامل مع جميع الإجراءات الثلاثة بشكل صريح. CONFIRM يدخل بالحجم الكامل، REDUCE يدخل بالمضاعف (الأصغر)، SKIP يبقى جانبًا.
sig = تأكيد(symbol, direction)
action = sig["action"]
إذا action == "CONFIRM":
place_order(symbol, direction, BASE_SIZE_USD * sig["size_mult"])
elif action == "REDUCE":
place_order(symbol, direction, BASE_SIZE_USD * sig["size_mult"])
else:
log(f"تخطي {symbol} {direction}: {sig['reasons']}")
الوصفة 5
التعامل مع 402 / 429
A 402 يعني أن الرمز أو النقطة النهائية تحتاج إلى خطة أعلى؛ 429 يعني أنك وصلت إلى حد المعدل. تعامل مع 429/5xx على أنها مؤقتة (تراجع)، و402/401/403 على أنها نهائية (قم بإصلاح الخطة أو المفتاح).
استيراد الوقت، الطلبات
دالة تأكيد_الأمان(الرمز، الاتجاه، المحاولات=3):
لـ المحاولة في النطاق(إعادة المحاولات):
r = requests.get( f"{BASE}/confirm", params={
"symbol" الاتجاه: الاتجاه},X-API-Key: API_KEY}, timeout=5,
)
إذا r.status_code == 200:
إرجاع r.json()
إذا r.status_code في (401, 402, 403):
أطلق RuntimeError(r.json())
إذا r.status_code == 429: reset =int(r.headers.(get, 2)) الوقت.النوم(دقيقة(إعادة الضبط, 2 ** محاولة))
استمر
الوقت.النوم(2 ** محاولة)
إرجاع لا شيء
الوصفة 6
استخدم مع وكيل الترميز
أعطِ كلود كود أو كودكس أو كورسور المراجع القابلة للقراءة آليًا ودعها تقوم بتوصيل التكامل. وجهها إلى /llms.txt للحصول على النظرة العامة ومواصفات OpenAPI للأشكال الدقيقة.
اقرأ https://smartmoneyapi.com/llms.txt ومواصفات OpenAPI في github.com/tashiardit/smartmoneyapi-docs، ثم أضف فحصًا ما قبل التداول إلى بوتي: استدعاء GET /v1/confirm باستخدام مفتاح X-API-Key الخاص بي، وتخطي أي دخول ما لم يكن action == "CONFIRM". قم بقياس الحجم باستخدام size_multiplier.
الموارد: /llms.txt · مواصفات OpenAPI · عميل Python.
هل أنت مستعد لإجراء أول صفقة لك؟
احصل على مفتاح مجاني واقرأ مرجع نقاط النهاية الكامل.
دعم القرار، وليس نصيحة تنفيذية. ليست نصيحة مالية. يتضمن تداول العملات المشفرة مخاطر كبيرة للخسارة.