دریافت معاملات انجامشده
کانال معاملات، اطلاعات لحظهای مربوط به معاملات انجامشده در بازار انتخابشده را فراهم میکند. این دادهها برای تحلیل رفتار بازار، ساخت نمودار تیک (Tick Chart) و الگوریتمهای معاملاتی با حساسیت بالا نسبت به قیمت بسیار کاربردی میباشند.
هر پیامی که در این کانال دریافت میکنید نمایانگر یک معامله میباشد که بین خریدار و فروشنده اتفاق افتاده است.
جهت دریافت این کانال سه روش وجود دارد.
ورژن ۱ (منسوخ شده)
ورژن ۱ (wss://api.wallex.ir/ws) منسوخ شده است. این ورژن هنوز کار میکند، اما کانالهای جدید مانند قیمت منصفانه و کندل چارت فقط روی ورژن ۲ (سنتریفیگو) در دسترس هستند.
برای پیادهسازی جدید از ورژن ۲ استفاده کنید. برای انتقال کد فعلی، راهنمای مهاجرت را ببینید.
آدرس اتصال WebSocket
برای اتصال باید از آدرس زیر استفاده کنید.
wss://api.wallex.ir/ws
فرمت پیام Subscribe
جهت دریافت معاملات انجامشده در هر بازار باید پیام خود را با فرمت زیر ارسال کنید و میتوانید هر مارکتی را جایگزین MARKET قرار دهید.
["subscribe", { "channel": "MARKET@trade" }]
مثال
["subscribe", { "channel": "BTCTMN@trade" }]
["subscribe", { "channel": "USDTTMN@trade" }]
نمونه پاسخ دریافتی
پس از ارسال پیام در سوکت، جوابهایی که دریافت میکنید بهصورت زیر میباشد که هر آبجکت بیانگر یک معامله انجامشده میباشد.
| فیلد | نوع | توضیح |
|---|---|---|
isBuyOrder | Boolean | نشان میدهد کدام سفارش میکر بوده است، یعنی از قبل در دفتر سفارشها قرار داشته است. true یعنی سفارش خرید میکر بوده و معامله با یک سفارش فروش انجام شده است. false یعنی سفارش فروش میکر بوده و معامله با یک سفارش خرید انجام شده است. |
quantity | String (decimal) | مقدار معاملهشده |
price | String (decimal) | قیمت انجام معامله |
timestamp | ISO 8601 String | زمان دقیق انجام معامله |
پاسخ یک آرایهی دوتایی میباشد که عضو اول آن نام کانال و عضو دوم آن بدنهی پیام است.
[
"BTCTMN@trade",
{
"isBuyOrder": true,
"quantity": "0.000243",
"price": "15791249224",
"timestamp": "2026-08-25T16:38:23Z"
}
]
نکتهها
- توجه داشته باشید که عضو شدن در این کانال هیچ معاملهای برای شما ارسال نمیکند و اولین پیام زمانی میرسد که معاملهی جدیدی انجام شود.
- محدودیتها، پیامهایی که دادهی کانال نیستند و نحوهی لغو عضویت در جزئیات ورژن ۱ (منسوخ شده) آمده است.
ورژن ۲ (سنتریفیگو) با SDK
آدرس اتصال WebSocket
برای اتصال باید از آدرس زیر استفاده کنید.
wss://api.wallex.ir/connection/websocket
نام کانال
میتوانید هر مارکتی را جایگزین <SYMBOL> قرار دهید.
public:<SYMBOL>@trade
نمونه کد عضویت
const trades = client.newSubscription("public:BTCTMN@trade");
trades.on("publication", (ctx) => console.log(ctx.data));
trades.subscribe();
نمونه پاسخ دریافتی
پس از عضویت، هر معاملهی جدید در رویداد publication به شما تحویل داده میشود و بدنهی آن در ctx.data قرار دارد.
| فیلد | نوع | توضیح |
|---|---|---|
isBuyOrder | Boolean | نشان میدهد کدام سفارش میکر بوده است، یعنی از قبل در دفتر سفارشها قرار داشته است. true یعنی سفارش خرید میکر بوده و معامله با یک سفارش فروش انجام شده است. false یعنی سفارش فروش میکر بوده و معامله با یک سفارش خرید انجام شده است. |
quantity | String (decimal) | مقدار معاملهشده |
price | String (decimal) | قیمت انجام معامله |
timestamp | ISO 8601 String | زمان دقیق انجام معامله |
{
"isBuyOrder": true,
"quantity": "0.000243",
"price": "15791249224",
"timestamp": "2026-08-25T16:38:23Z"
}
نکتهها
- توجه داشته باشید که عضو شدن در این کانال هیچ معاملهای برای شما ارسال نمیکند و فقط معاملات جدید از آن لحظه به بعد میآیند.
- این کانال تاریخچه نگه نمیدارد، بنابراین معاملاتی که در زمان قطعی اتصال رخ دادهاند دوباره ارسال نمیشوند.
- پاسخ دادن به ping سرور توسط SDK انجام میشود. جزئیات در اتصال و عضویت آمده است.
ورژن ۲ (سنتریفیگو) بدون SDK
آدرس اتصال WebSocket
برای اتصال باید از آدرس زیر استفاده کنید.
wss://api.wallex.ir/connection/websocket
نام کانال
میتوانید هر مارکتی را جایگزین <SYMBOL> قرار دهید.
public:<SYMBOL>@trade
فرمت پیام Subscribe
جهت دریافت معاملات انجامشده باید دستور زیر را ارسال کنید.
{ "id": 2, "subscribe": { "channel": "public:BTCTMN@trade" } }
پاسخ موفق این دستور خالی میباشد.
{ "id": 2, "subscribe": {} }
نمونه پاسخ دریافتی
پس از ارسال پیام در سوکت، جوابهایی که دریافت میکنید بهصورت زیر میباشد و بدنهی پیام داخل پوشش push قرار دارد.
| فیلد | نوع | توضیح |
|---|---|---|
isBuyOrder | Boolean | نشان میدهد کدام سفارش میکر بوده است، یعنی از قبل در دفتر سفارشها قرار داشته است. true یعنی سفارش خرید میکر بوده و معامله با یک سفارش فروش انجام شده است. false یعنی سفارش فروش میکر بوده و معامله با یک سفارش خرید انجام شده است. |
quantity | String (decimal) | مقدار معاملهشده |
price | String (decimal) | قیمت انجام معامله |
timestamp | ISO 8601 String | زمان دقیق انجام معامله |
{
"push": {
"channel": "public:BTCTMN@trade",
"pub": {
"data": {
"isBuyOrder": true,
"quantity": "0.000243",
"price": "15791249224",
"timestamp": "2026-08-25T16:38:23Z"
}
}
}
}
نکتهها
- توجه داشته باشید که عضو شدن در این کانال هیچ معاملهای برای شما ارسال نمیکند و فقط معاملات جدید از آن لحظه به بعد میآیند.
- این کانال تاریخچه نگه نمیدارد، بنابراین معاملاتی که در زمان قطعی اتصال رخ دادهاند دوباره ارسال نمیشوند.
- پاسخ دادن به ping سرور بر عهدهی خود شما میباشد. جزئیات در اتصال بدون SDK آمده است.