کتاب آشپزی
کتاب آشپزی API
دستورالعملهای عملی و قابل کپیپیست برای رایجترین روشهای اتصال API تأیید معاملات Smart Money به یک ربات. هر دستورالعمل فراخوانی میکند GET /v1/confirm و بر روی آن عمل میکند action, confidence، و size_multiplier. کلید خود را در هدر X-API-Key ارسال کنید — به مستندات کامل.
دستور 1
تأیید قبل از ورود (پایتون)
حلقه استاندارد. قبل از اینکه استراتژی شما یک پوزیشن باز کند، از API بپرسید که آیا ساختار بازار موافق است یا خیر. فقط زمانی وارد شوید که action == "CONFIRM".
import requests
API_KEY = sm_your_key
BASE = https://api.smartmoneyapi.com/v1
def تایید(symbol, direction):
r = requests.get(
f{BASE}/confirm,
params={"symbol": symbol, "direction": direction},
headers={"X-API-Key": API_KEY}،
timeout=5،
)
r.raise_for_status()
return r.json() تأیید(BTC, لانگ)
اگر سیگنال[اکشن] == تایید:
سفارش_گذاری(BTC, لانگ)
در غیر این صورت:
چاپ(رد کردن:, سیگنال[دلایل])
{
"نماد": "BTC",
"جهت": "بلند",
"عمل": "تایید",
"اعتماد": "بالا",
"ترکیبی": 0.74,
"ضریب اندازه": 1.5,
"دلایل": ["تامین مالی مثبت در تمامی پلتفرمها", "نهنگها 67% بلند"]
}
"دستورالعمل 2"
"گیت یک سیگنال Freqtrade"
"جایگزینی" confirm_trade_entry "بنابراین Freqtrade فقط ورودیهایی را که API تایید میکند، میپذیرد. شکست" "باز" "در خطاهای API تا یک تایماوت هرگز تمام معاملات را مسدود نکند."
"وارد کردن" "درخواستها"
"از" "freqtrade.strategy" "وارد کردن" "IStrategy"
"کلاس" "استراتژی SmartMoney"(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
تلاش کنید:دریافت("{self.SM_BASE}/confirm","symbol"نماد جهت: طولانی},X-API-Key: self.SM_KEY},3,
).زمانسقف()
برگشت r.get("action") == "CONFIRM"
except Exception:
return True
Recipe 3
Size by size_multiplier
Let conviction set position size. Multiply your base size by size_mult (0.0–1.5) so HIGH-confidence trades get more capital and weak ones get less.
BASE_SIZE_USD = 1000
sig = تایید("ETH", لانگ)دریافت(size_mult, 0.0)
اندازه = BASE_SIZE_USD * چند برابر اندازه > 0:
ثبت سفارش(ETH, لانگ, size_usd=size)
چاپ کن(f"وارد شد ${size:.0f} (ضریب {mult})")
A size_mult مقدار 0.0 به معنای عدم ورود است — نتیجهای مشابه با SKIP. هر مقدار کمتر از حداقل تعیینشده خود را به عنوان SKIP در نظر بگیرید.
دستورالعمل 4
در صورت SKIP رد کنید / در صورت REDUCE کاهش دهید
هر سه اقدام را به صورت صریح مدیریت کنید. CONFIRM با حجم کامل وارد میشود، REDUCE با ضریب (کوچکتر) وارد میشود، SKIP به معنای عدم ورود است.
sig = تأیید(symbol, direction)
action = sig["action"]
اگر action == "CONFIRM":
place_order(symbol, direction, BASE_SIZE_USD * sig["size_mult"])
اگرنه action == "REDUCE":
place_order(symbol, direction, BASE_SIZE_USD * sig["size_mult"])
در غیر این صورت:
log(f"رد کردن {symbol} {direction}: {sig['reasons']}")
دستور العمل 5
مدیریت 402 / 429
A 402 به معنای این است که نماد یا نقطه پایانی نیاز به یک پلن بالاتر دارد؛ 429 به معنای این است که شما به محدودیت نرخ رسیدهاید. با 429/5xx به عنوان موقت رفتار کنید (کاهش سرعت)، و با 402/401/403 به عنوان پایانی (اصلاح پلن یا کلید).
وارد کردن زمان، درخواستها
تعریف تأیید ایمنی(نماد، جهت، تلاشهای مجدد=3):
برای تلاش در محدوده(تلاشهای مجدد):دریافت("{BASE}/confirm","symbol": symbol, "direction": direction},"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 ** تلاش)
برگرداندن None
دستور 6
استفاده با یک عامل کدنویسی
به Claude Code، Codex، یا Cursor مراجع ماشینخوان را بدهید و اجازه دهید یکپارچهسازی را انجام دهد. آن را به /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 · کلاینت پایتون.
آماده انجام اولین معامله خود هستید؟
یک کلید رایگان دریافت کنید و مستندات کامل را مطالعه نمایید.
پشتیبانی تصمیمگیری، نه مشاوره اجرایی. توصیه مالی محسوب نمیشود. معاملات ارز دیجیتال با ریسک قابلتوجهی همراه است.