ماذا لو كان بإمكانك استخدام واجهات برمجة تطبيقات (APIs) من الدرجة المؤسسية في بورصة منظمة من قبل لجنة تداول السلع الآجلة (CFTC) لتداول أسواق التنبؤ برمجيًا؟ يوفر Kalshi تمامًا ذلك، حيث يقدم واجهات REST و WebSocket و FIX 4.4 لأول سوق تنبؤ مرخص فيدراليًا في الولايات المتحدة. في النصف الأول من عام 2025 وحده، حققت الشركة إيرادات تجاوزت 200 مليون دولار.
لقد انفجرت أسواق التنبؤ في شعبيتها، ولكن المطورين يواجهون خيارًا بين البنية التحتية المنظمة والمرونة الأصلية للعملات المشفرة. تعمل المنصات غير المنظمة في مناطق قانونية رمادية، وتتطلب محافظ بلوكتشين، وتعرض المستخدمين لمخاطر العقود الذكية. يلغي Kalshi نقاط الاحتكاك هذه من خلال العمل كسوق عقود مخصص (Designated Contract Market) تحت إشراف CFTC، وتقديم تسوية قائمة على العملات الورقية، وأنماط API تقليدية، والامتثال للوائح المالية الأمريكية. يمكنك بناء تطبيقات تداول يمكن للمؤسسات استخدامها فعليًا.
جدول المحتويات:
- فهم بنية Kalshi
- المصادقة والإعداد
- نقاط نهاية API الأساسية
- البيانات في الوقت الفعلي باستخدام WebSocket
- Kalshi مقابل Polymarket للمطورين
- الخاتمة
فهم بنية Kalshi
يعمل Kalshi كبورصة مركزية مع عقود أحداث معتمدة ذاتيًا. يساعدك فهم هذه البنية على تصميم تكاملات قوية.
حالة سوق العقود المخصص (Designated Contract Market)
يحمل Kalshi ترخيص CFTC الذي يمكنه من تقديم عقود الأحداث بشكل قانوني في جميع الولايات الأمريكية الخمسين. على عكس المراهنات الرياضية المنظمة على مستوى الولاية، يعمل Kalshi تحت الولاية القضائية الفيدرالية، متجاوزًا الفسيفساء المجزأة لقوانين القمار الحكومية. تتطلب هذه الحالة امتثالًا صارمًا: يخضع كل سوق لمراجعة CFTC، وتتبع التسوية كتب القواعد المنشورة، وتحافظ البورصة على أنظمة مراقبة للكشف عن التلاعب.
دفتر أوامر الحد المركزي (CLOB)
يطابق Kalshi الأوامر من خلال CLOB تقليدي—تلبية عروض الشراء وعروض البيع بأسعار محددة مع عمق مرئي. يختلف هذا عن صانعي السوق الآليين (AMMs) الذين تستخدمهم البورصات اللامركزية. يوفر CLOB شفافية الأسعار، ويسمح بأوامر الحد، ويمكّن استراتيجيات صناعة السوق. يتلقى صناع السوق ما يقرب من 35,000 دولار يوميًا في حوافز السيولة (سنويًا حوالي 12.7 مليون دولار)، مما يضمن فروق أسعار ضيقة حتى في الأسواق الأقل نشاطًا.
هيكل عقود الأحداث
يمثل كل عقد نتيجة ثنائية: "نعم" يدفع 1.00 دولار، و "لا" يدفع 0.00 دولار. تتقلب الأسعار بين 0.01 دولار و 0.99 دولار، مما يعكس الاحتمالات الضمنية للسوق. العقد الذي يتم تداوله بسعر 0.63 دولار يعني احتمال 63% لحدوث الحدث. تتم التسوية بقيمة 1.00 دولار أو 0.00 دولار بعد التحقق من النتيجة.
تحدد العقود شروط التسوية الدقيقة: تعريف الحدث، ومصدر البيانات الموثوق، ومنهجية الحل. على سبيل المثال، عقد "هل سيتجاوز مؤشر أسعار المستهلك (CPI) 3.5% في يناير؟" يحدد إصدار مكتب إحصاءات العمل بالضبط وكيفية تفسير التعديلات الموسمية.
الأوراكل والتسوية
يستخدم Kalshi أوراكل مركزيًا يديره موظفو البورصة. يتم حل النتائج بناءً على المصادر الرسمية—التقارير الحكومية، ومقدمي البيانات الموثوقين، أو المؤسسات الإخبارية المعروفة. عادةً ما تكتمل التسوية في غضون ساعات من انتهاء الحدث. يعطي هذا النموذج المركزي الأولوية للسرعة والوضوح على اللامركزية، مع إشراف CFTC الذي يوفر المساءلة.

المصادقة والإعداد
تتطلب مصادقة Kalshi طلبات موقعة بتقنية RSA باستخدام مفاتيح خاصة تم إنشاؤها في لوحة تحكم حسابك. يوفر هذا التحقق التشفيري لمكالمات API.
إعداد البيئة
يوفر Kalshi بيئتين:
- البيئة التجريبية (Demo):
https://demo-api.kalshi.co/v1— للاختبار بالنقود الوهمية - بيئة الإنتاج (Production):
https://api.kalshi.com/v1— للتداول الحقيقي بالدولار الأمريكي
ابدأ دائمًا بالتطوير على البيئة التجريبية أولاً. البيئات متطابقة وظيفيًا، ولكن قد تحتوي الأسواق التجريبية على سيولة محاكاة.
توليد مفاتيح API
انتقل إلى الإعدادات (Settings) ← API في لوحة تحكم Kalshi الخاصة بك. أنشئ زوج مفاتيح جديدًا:
- انقر على "توليد مفتاح API"
- احفظ معرف مفتاح API (يبدأ بـ
kalshi_prod_أوkalshi_demo_) - قم بتنزيل المفتاح الخاص فورًا—لن يعرضه Kalshi مرة أخرى أبدًا
- قم بتأمين المفتاح الخاص باستخدام أذونات الملفات (
chmod 600)
يستخدم المفتاح الخاص توقيع RSA-PSS. يوفر Kalshi حزم SDKs رسمية تتعامل مع التوقيع تلقائيًا، أو يمكنك تنفيذها يدويًا باستخدام مكتبات تشفير قياسية.
تثبيت SDK
يقدم Kalshi حزم SDKs رسمية لـ Python (متزامن وغير متزامن) و TypeScript:
# Python synchronous
pip install kalshi-python-sync
# Python asynchronous
pip install kalshi-python-async
# TypeScript/Node.js
npm install @kalshi/sdk
توجد حزم SDKs مجتمعية لـ Go ولغات أخرى، لكن حزم SDKs الرسمية توفر تطبيقات التوقيع الأكثر موثوقية وسلامة النوع.

المصادقة اليدوية (بدون SDK)
إذا كنت تنفذ توقيعًا مخصصًا، فاتبع هذا التدفق:
import requests
from cryptography.hazmat.primitives import hashes, serialization
from cryptography.hazmat.primitives.asymmetric import padding
import base64
import json
from datetime import datetime, timezone
class KalshiAuth:
def __init__(self, api_key_id, private_key_path):
self.api_key_id = api_key_id
with open(private_key_path, "rb") as key_file:
self.private_key = serialization.load_pem_private_key(
key_file.read(),
password=None
)
self.base_url = "https://api.kalshi.com/v1"
def sign_request(self, method, path, body=None):
# Create timestamp
timestamp = datetime.now(timezone.utc).strftime("%Y-%m-%dT%H:%M:%S.%fZ")[:-3] + "Z"
# Build string to sign
string_to_sign = f"{timestamp}{method}{path}"
if body:
string_to_sign += json.dumps(body, separators=(',', ':'))
# Sign with RSA-PSS
signature = self.private_key.sign(
string_to_sign.encode('utf-8'),
padding.PSS(mgf=padding.MGF1(hashes.SHA256()), salt_length=32),
hashes.SHA256()
)
return {
"KALSHI-ACCESS-KEY": self.api_key_id,
"KALSHI-ACCESS-TIMESTAMP": timestamp,
"KALSHI-ACCESS-SIGNATURE": base64.b64encode(signature).decode('utf-8'),
"Content-Type": "application/json"
}
def request(self, method, path, body=None):
url = f"{self.base_url}{path}"
headers = self.sign_request(method, path, body)
if method == "GET":
response = requests.get(url, headers=headers)
elif method == "POST":
response = requests.post(url, headers=headers, json=body)
elif method == "DELETE":
response = requests.delete(url, headers=headers)
return response.json()
# Usage
kalshi = KalshiAuth(
api_key_id="kalshi_prod_abc123",
private_key_path="~/.kalshi/private_key.pem"
)
# Get markets
markets = kalshi.request("GET", "/markets")
print(markets)
تجمع سلسلة التوقيع بين الطابع الزمني، طريقة HTTP، المسار، وجسم JSON (إذا كان موجودًا). يوفر RSA-PSS مع SHA-256 تحققًا تشفيريًا بأن الطلبات تنبع من حسابك.
الجلسات القائمة على الرمز المميز
بعد المصادقة الأولية، احصل على رمز مميز للجلسة (session token) للطلبات اللاحقة:
# Login to get session token
login_response = kalshi.request("POST", "/log_in")
session_token = login_response["token"]
# Use token for subsequent requests (valid for 30 minutes)
headers = {
"Authorization": f"Bearer {session_token}",
"Content-Type": "application/json"
}
تنتهي صلاحية الرموز المميزة كل 30 دقيقة. قم بتنفيذ منطق التحديث التلقائي قبل انتهاء الصلاحية للحفاظ على جلسات مستمرة.
نصيحة احترافيةApidog
نقاط نهاية API الأساسية
تتبع واجهة برمجة تطبيقات REST الخاصة بـ Kalshi الاتفاقيات القياسية مع بنية نقطة نهاية منطقية حسب نوع المورد.
بيانات السوق (عامة)
استرجاع الأسواق المتاحة:
curl "https://api.kalshi.com/v1/markets" \
-H "Content-Type: application/json"
الحصول على تفاصيل سوق محددة:
curl "https://api.kalshi.com/v1/markets/INXCHI-25JAN31-T69.5" \
-H "Content-Type: application/json"
ينفذ تنسيق الرمز المشفر تفاصيل العقد: INXCHI-25JAN31-T69.5 يمثل سوقًا لمؤشر التضخم/الاحتياطي الفيدرالي الوطني في شيكاغو ينتهي في 31 يناير 2025، بحد 69.5.
الاستعلام عن عمق دفتر الأوامر:
curl "https://api.kalshi.com/v1/markets/INXCHI-25JAN31-T69.5/orderbook" \
-H "Content-Type: application/json"
تعيد الاستجابة مستويات الشراء والبيع بالكميات، مما يمكّنك من تقييم السيولة قبل وضع الأوامر.
نصيحةApidog
عمليات التداول (مصادق عليها)
وضع أمر شراء:
order = kalshi.request("POST", "/orders", {
"market_id": "INXCHI-25JAN31-T69.5",
"side": "yes",
"order_type": "limit",
"price": 6500, # $0.65 in cents
"quantity": 100, # Number of contracts
"client_order_id": "my-strategy-001" # Optional tracking ID
})
أسعار Kalshi بالسينتات (1 = 0.01 دولار). يتم تنفيذ أمر حد بسعر 6500 بسعر 0.65 دولار أو أفضل.
إلغاء أمر مفتوح:
kalshi.request("DELETE", f"/orders/{order['id']}")
عرض أوامرك المفتوحة:
curl "https://api.kalshi.com/v1/orders" \
-H "Authorization: Bearer $SESSION_TOKEN"
المحفظة والحساب
التحقق من رصيد الحساب:
curl "https://api.kalshi.com/v1/portfolio/balance" \
-H "Authorization: Bearer $SESSION_TOKEN"
استرجاع المراكز:
curl "https://api.kalshi.com/v1/portfolio/positions" \
-H "Authorization: Bearer $SESSION_TOKEN"
تعيد نقطة نهاية المراكز حيازاتك الحالية عبر جميع الأسواق، بما في ذلك الأرباح والخسائر غير المحققة بناءً على آخر الأسعار المتداولة.
الحصول على تاريخ التداول:
curl "https://api.kalshi.com/v1/portfolio/fills" \
-H "Authorization: Bearer $SESSION_TOKEN"
تشمل عمليات التنفيذ الأوامر المنفذة مع الطوابع الزمنية والأسعار والرسوم المدفوعة.
التسوية والحل
الاستعلام عن حالة التسوية للأسواق المنتهية الصلاحية:
curl "https://api.kalshi.com/v1/markets/INXCHI-25JAN31-T69.5/settlement" \
-H "Authorization: Bearer $SESSION_TOKEN"
بعد الحل، تقوم العقود الفائزة بإيداع 1.00 دولار لكل سهم في حسابك؛ وتتم تسوية المراكز الخاسرة بسعر 0.00 دولار.

البيانات في الوقت الفعلي باستخدام WebSocket
يؤدي الاستقصاء عبر REST إلى تأخير. تقوم واجهة برمجة تطبيقات WebSocket الخاصة بـ Kalshi ببث تحديثات دفتر الأوامر في الوقت الفعلي، وتنفيذ الصفقات، وتغييرات حالة السوق.
الاتصال بـ WebSocket
const WebSocket = require('ws');
const ws = new WebSocket('wss://api.kalshi.com/v1/ws', {
headers: {
'Authorization': `Bearer ${sessionToken}`
}
});
ws.on('open', () => {
console.log('Connected to Kalshi WebSocket');
// Subscribe to order book updates for specific market
ws.send(JSON.stringify({
type: 'subscribe',
channels: ['orderbook:INXCHI-25JAN31-T69.5']
}));
});
ws.on('message', (data) => {
const message = JSON.parse(data);
switch(message.type) {
case 'orderbook_update':
console.log('Order book changed:', message.data);
break;
case 'trade':
console.log('Trade executed:', message.data);
break;
case 'market_status':
console.log('Market status:', message.data);
break;
}
});
// Heartbeat to maintain connection
setInterval(() => {
ws.send(JSON.stringify({ type: 'ping' }));
}, 30000);
تتطلب اتصالات WebSocket نبضات قلب دورية (كل 30 ثانية) لمنع انتهاء المهلة. نفذ منطق إعادة الاتصال التلقائي لتطبيقات الإنتاج.
قنوات الاشتراك
تشمل القنوات المتاحة ما يلي:
orderbook:{market_id}— تحديثات عروض الشراء/البيعtrades:{market_id}— عمليات التنفيذ الأخيرةmarket_status:{market_id}— توقف التداول، التسوياتuser_orders— تغييرات حالة طلباتكuser_fills— عمليات تنفيذ صفقاتك
اشترك في قنوات متعددة في رسالة واحدة لتدفق البيانات الفعال.
Apidog

Kalshi مقابل Polymarket للمطورين
تقدم كلتا المنصتين واجهات برمجة تطبيقات لأسواق التنبؤ، ولكن بنيتيهما تخدمان حالات استخدام مختلفة.
الوضع التنظيمي
يعمل Kalshi كسوق عقود مخصص (Designated Contract Market) منظم من قبل CFTC. يوفر هذا وضوحًا قانونيًا للمستخدمين في الولايات المتحدة ولكنه يتطلب الامتثال لمعايير KYC/AML ويقيد الوصول إلى 42 ولاية (باستثناء أريزونا، إلينوي، ماساتشوستس، ماريلاند، ميشيغان، مونتانا، نيوجيرسي، أوهايو).
حصل Polymarket مؤخرًا على موافقة CFTC من خلال الاستحواذ على QCX LLC ويحمل ترخيص DCM مع خطاب عدم اعتراض (No-Action Letter). يعمل حاليًا دوليًا مع توفر محدود في الولايات المتحدة بانتظار الطرح الكامل. تم تغريمه سابقًا 1.4 مليون دولار للعمل بدون تسجيل (يناير 2022).
البنية التقنية
يستخدم Kalshi بنية تحتية مركزية مع مطابقة الأوامر خارج السلسلة وتسوية بالدولار الأمريكي الورقي. يتبع الوصول إلى API أنماطًا تقليدية: REST عبر HTTPS، و WebSocket للبث، و FIX 4.4 للتداول المؤسسي عالي التردد. يتم قياس أوقات الاستجابة بالمللي ثانية.
يعمل Polymarket على بلوكتشين Polygon ببنية CLOB هجينة—مطابقة الأوامر خارج السلسلة، وتسوية على السلسلة عبر إطار عمل الرموز الشرطية (Conditional Tokens Framework). يتطلب التكامل تفاعلًا مع البلوكتشين: أوامر موقعة EIP-712، مكالمات العقود الذكية، ومعاملات USDC. تتطلب نهائية التسوية تأكيد البلوكتشين (ثوانٍ إلى دقائق).
نماذج المصادقة
يستخدم Kalshi طلبات موقعة بتقنية RSA-PSS مع مفاتيح API، وجلسات قائمة على الرمز المميز تنتهي صلاحيتها كل 30 دقيقة. يتطلب تخزينًا آمنًا للمفتاح الخاص وتوقيعًا تشفيريًا.
يستخدم Polymarket توقيعات محفظة البلوكتشين (MetaMask، WalletConnect). يوقع المستخدمون الأوامر بمفاتيح خاصة تتحكم في عناوين Polygon الخاصة بهم. لا توجد رموز مميزة للجلسة—تتطلب كل معاملة توقيعًا جديدًا.
عملة التسوية
يتم تسوية Kalshi بالدولار الأمريكي عبر التحويل المصرفي، ACH، بطاقة الخصم، PayPal، Apple Pay، Google Pay. الحد الأدنى للسحب عادةً 10 دولارات. وقت المعالجة من 1-3 أيام عمل لـ ACH، وأسرع للتحويلات البنكية.
يسوي Polymarket بـ USDC على بلوكتشين Polygon. تسوية فورية عند الحل، ولكنها تتطلب محفظة عملات مشفرة وبنية تحتية للتحويل من وإلى العملات المشفرة. تنطبق رسوم الغاز على عمليات السحب.
بروتوكولات API
يقدم Kalshi ثلاثة بروتوكولات:
- REST: HTTP قياسي لجميع العمليات
- WebSocket: بث في الوقت الفعلي لبيانات السوق وتحديثات الأوامر
- FIX 4.4: بروتوكول قياسي صناعي للتداول المؤسسي عالي التردد
يتطلب Polymarket:
- GraphQL: استعلامات مرنة لبيانات البلوكتشين
- EIP-712: توقيع بيانات بنوع محدد للأوامر
- مكالمات العقود الذكية: تفاعل مباشر مع البلوكتشين للتسوية
توصيات حالات الاستخدام
اختر Kalshi لـ:
- مكاتب التداول المؤسسية التي تتطلب الامتثال التنظيمي
- التطبيقات التي تخدم مستخدمي التجزئة في الولايات المتحدة
- التحويل من وإلى العملات الورقية دون تعقيدات العملات المشفرة
- التداول الخوارزمي منخفض التأخير
- تكاملات التمويل التقليدية
اختر Polymarket لـ:
- بروتوكولات التمويل اللامركزي (DeFi) التي تتطلب قابلية تركيب العقود الذكية
- المستخدمين العالميين خارج الولايات القضائية الأمريكية
- تطبيقات العملات المشفرة الأصلية ذات البنية التحتية للمحفظة الحالية
- إنشاء سريع للسوق (ساعات مقابل أيام للموافقة)
- التحقق والشفافية على السلسلة
تعقيد التكامل
يتطلب تكامل Kalshi من 2-4 أسابيع لبيانات السوق الأساسية ووظائف التداول، بافتراض وجود خبرة في REST API. تقلل أنماط HTTP المألوفة من منحنى التعلم.
يتطلب تكامل Polymarket من 3-6 أشهر لأسواق العقود الذكية الجاهزة للإنتاج، بما في ذلك تدقيق الأمان (ميزانية تتراوح بين 50 ألف دولار و 200 ألف دولار)، وتكامل الأوراكل، وتوفير السيولة. خبرة البلوكتشين إلزامية.
هيكل التكلفة
يفرض Kalshi رسوم تداول بناءً على الأرباح المتوقعة (0.7-3.5%، بمتوسط 0.8%). الوصول إلى API مجاني—تدفع فقط رسوم التداول. لا توجد رسوم سحب لـ ACH.
يفرض Polymarket رسومًا بنسبة 0.01% على المشتري في الأسواق الأساسية، مع رسوم غاز لمعاملات البلوكتشين. لا توجد رسوم على بعض الأسواق، ولكن تنطبق تكاليف الشبكة.
الخاتمة
توفر واجهة برمجة تطبيقات Kalshi وصولاً منظمًا إلى أسواق التنبؤ من خلال بروتوكولات REST و WebSocket المألوفة. يمكنك المصادقة بطلبات موقعة بتقنية RSA، وتداول عقود الأحداث عبر دفتر أوامر الحد المركزي، والتسوية بالدولار الأمريكي من خلال الخدمات المصرفية التقليدية. يضمن إشراف CFTC الامتثال القانوني للتطبيقات الأمريكية، بينما يوضح معدل الإيرادات الذي يبلغ 200 مليون دولار الجدوى المؤسسية.
ابدأ بالبيئة التجريبية لاختبار أنماط التكامل. نفذ إدارة المفاتيح الصحيحة وتوقيع الطلبات قبل الانتقال إلى الإنتاج. استخدم بث WebSocket للتطبيقات في الوقت الفعلي التي تتطلب زمن استجابة منخفضًا. راقب انتهاء صلاحية الرمز المميز الذي يبلغ 30 دقيقة ونفذ منطق التحديث للتشغيل المستمر.
ابدأ مع Apidog اليوم—استورد نقاط نهاية Kalshi API الخاصة بك في ثوانٍ وابدأ في اختبار استراتيجيات سوق التنبؤ الخاصة بك بدون أي تهيئة.
