ویترین سرور برنامه CCXT: دسترسی به مبادلات رمزنگاری از طریق کتابخانه MQL5 از Metatrader 5 – دیگر – 3 ژوئیه 2025
CCXT یک کتابخانه JavaScript برای همکاری با همه صرافی های رمزنگاری برتر 100 است. برای اطلاعات بیشتر در مورد CCXT ، لطفاً به اسناد مشترک CCXT و CCXT Pro پیشرفته تر مراجعه کنید. ccxtappserverlib یک کتابخانه MQL5 برای همکاری با مبادلات رمزنگاری از طریق Node.js و سرور برنامه CCXT ساخته شده در بالای CCXT است.

آخرین بتا نسخه از ccxtappserver کتابخانه شامل ذخیره سازی بهینه شده از مبادله “بازارها” (مشخصات ابزار و سایر شرایط معاملاتی) ، ردپای حافظه کمتر در هنگام جدا کردن پرونده های عظیم JSON ، رسیدگی به خطای بهتر و نمونه های جدید است.
این Blogpost یک نمایشگاه مقدماتی با مهمترین کارکردهای API های عمومی – فیلمنامه ارائه می دهد ccxtappsrvshowcase.mq5بشر
ابتدا عنوان ها را درج کنید.
#include "ccxtjsmtlib.mqh" #include "ccxtutil.mqh"
در ورودی ها ، راه اندازی سرور گره باید انجام شود (به طور پیش فرض ، LocalHost و Port 8124).
input group "Connection settings" input string NodeServer = "http://127.0.0.1:8124"; input string NodeAuth = "";
در مرحله بعد ، مبادله خاصی را که می خواهید با آن کار کنید ارائه دهید. ورودی را خالی بگذارید تا یک چاپ را با لیستی از همه مبادلات پشتیبانی شده مشاهده کنید.
input string Exchange = "";
همچنین یک تیکت مورد علاقه خود را تهیه کنید. اگر نام را نمی دانید ، اولین بار اسکریپت را اجرا کنید و به آن نگاه کنید MQL5/FILE/CCXT/ پوشه ای که تمام داده های دریافت شده به طور پیش فرض ریخته می شوند ، بنابراین می توانید JSON-FILES را با اطلاعات کامل بازارهای پیدا کنید.
input string Ticker = "BCH/USDT";
برای تماشای تست (اشتراک از طریق وب سایت) مدت زمان آنها را مشخص کنید:
input uint WatchingDuration = 10;
این اسکریپت نحوه تنظیم اعتبار برای API های خصوصی را نشان می دهد ، اما از هیچ عملکرد خصوصی استفاده نمی کند.
input group "Exchange settings (Private API)" input string ApiKey = ""; input string Secret = ""; input string Uid = ""; input string Login = ""; input string Password = "";
تنظیمات اضافی به شما امکان می دهد تا سطح ورود به سیستم ، دامپینگ کلیه داده های دریافت شده و زمان بندی را کنترل کنید.
input group "Auxiliary settings" input ushort Logging = 1; input bool Dumping = true; input uint Timeout = 5;
سپس کنترل کننده رویداد اصلی بر امدگی بازی می شود توابع ، کلاس ها و روش های وارداتی از کتابخانه به رنگ زرد برجسته می شوند. برخی از قسمت ها برای کوتاه بودن حذف شده اند (برای جزئیات بیشتر به کد منبع کامل ، توزیع شده با کتابخانه).
فکر می کنم نظرات درون خطی خود توضیحی است.
اگر اسکریپت برای اولین بار در حال اجرا است ، می خواهد سرور برنامه CCXT را باز کنید (به صورت دستی) ccxtappsrvbundle.jsc از یک منبع داخلی) ، و Node.js را با آن اجرا کنید.
void OnStart() { PrintFormat("CCXT AppSrvLibrary version: %.2f", AppSrvLibraryVersion()); const static string status[] = {"Can't deploy", "App server ZIP is deployed, but not extracted", "App server files are deployed"}; const int d = DeployCcxtAppServer(); Print(status[d + 1]); if(d <= 0) { return; } SetNodeServer(NodeServer, NodeAuth); CcxtLink::Settings settings = {Logging, Dumping, Testing, Timeout, 0}; CcxtLink *link = GetLink(); link.applySettings(settings); if(!StringLen(Exchange)) { Print("Complete list of exchanges:"); Print(ListExchanges().stringify()); Print("Pro list of exchanges with websockets support:"); Print(ListExchanges(true).stringify()); Print("App Server Version: ", AppSrvVersion().stringify()); Print("CCXT lib version: ", CcxtVersion()["version"].stringify()); return; } CCXT::Credentials credentials = {ApiKey, Secret, Uid, Login, Password}; CcxtJsExchangeProIntf *ccxt = CreateExchangePro(Exchange, credentials, false); AutoPtrauto(ccxt); if(link.getLastHttpCode() != 200) { return; } const bool isPro = !!*ccxt["pro"]; if(ShowExchangeProperties) { Print("Is pro: ", isPro); Print("Required Credentials:"); ccxt["requiredCredentials"].print(); Print("Supported features:"); ccxt["has"].print(); AutoPtr f = ccxt.get("facilities"); Print("Facilities: ", f[].stringify()); } AutoPtr check = ccxt.get(); if(Dumping) DumpJsonToFile("CCXT/check-" + Exchange, check[]); if(ccxt.call("now").t != JS_PRIMITIVE) { ccxt.loadMarkets(false , false ); JsValue *info = ccxt.get("markets"); if(Dumping) DumpJsonToFile("CCXT/onlymarkets-" + Exchange, info); } else { Print("Markets are already loaded on Node"); } JsValue *orderbook = ccxt.fetchOrderBook(Ticker, 10); if(Dumping) DumpJsonToFile("CCXT/orderbook-" + Exchange + "-" + Escape(Ticker), orderbook); JsValue *ticker = ccxt.fetchTicker(Ticker); if(Dumping) DumpJsonToFile("CCXT/ticker-" + Exchange + "-" + Escape(Ticker), ticker); JsValue *ohlcv = ccxt.fetchOHLCV(Ticker, "1m", t ? t - 1000 * 60 * 10 : 0, 10); if(Dumping) DumpJsonToFile("CCXT/ohlcv-" + Exchange + "-" + Escape(Ticker), ohlcv); JsValue *trades = ccxt.fetchTrades(Ticker, t ? t - 10000 : 0, 10); if(Dumping) DumpJsonToFile("CCXT/trades-" + Exchange + "-" + Escape(Ticker), trades); if(!!*ccxt["has"]["fetchBidsAsks"]) { string array[] = {Ticker}; JsValue *bidsasks = ccxt.fetchBidsAsks(array); if(Dumping) DumpJsonToFile("CCXT/bidsasks-" + Exchange + "-" + Escape(Ticker), bidsasks); } ccxt.fetchAnything(NULL); ...
URL های درخواست شده و نام های مربوط به پرونده های ذخیره شده در سیاهه نشان داده شده است.
و اکنون قسمت CCXT PRO را بر اساس WebSockets و اشتراک های اعلان زنده می رود.
if(isPro && ccxt.upgrade()) { ccxt.watchOrderBook(Ticker); ccxt.watchTrades(Ticker); string tickers[] = {Ticker}; ccxt.watchBidsAsks(tickers); ccxt.watchTrades(Ticker); const uint start = GetTickCount(); while(!IsStopped() && ccxt.isConnected() && (!WatchingDuration || GetTickCount() - start < WatchingDuration * 1000)) { AutoPtrj = ccxt.readMessage(); if(j[]) { Comment(j[].stringify()); } else { } } } else { if(isPro && ccxt.isConnected()) { Print("Can't upgrade to websockets"); string headers[][2]; if(ccxt.ws().getHeaders(headers)) { } ccxt.ws().close(); } } if(ccxt.isConnected()) { Print("Unsubscribing..."); ccxt.un().watchOrderBook(Ticker); ccxt.un().watchTrades(Ticker); ccxt.un().watchBidsAsks(); ccxt.un().watchTrades(Ticker); const uint start = GetTickCount(); while(!IsStopped() && ccxt.isConnected() && (GetTickCount() - start < 5 * 1000)) { Print("reading..."); AutoPtr j = ccxt.readMessage(); if(j[]) { Comment(j[].stringify()); } else { break; } } Print("Closing..."); ccxt.close(); while(!IsStopped()) { AutoPtr j = ccxt.readMessage(); if(j[]) { Comment(j[].stringify()); } else { break; } } } }
هنگامی که اسکریپت در حال اجرا است ، تمام داده های ورودی WebSocket به عنوان نظرات در مورد نمودار نشان داده می شوند (اگرچه اطلاعات می توانند خیلی سریع به روز شوند).
کتابخانه سرور برنامه CCXT در حال حاضر در مرحله بتا قرار دارد و در صورت درخواست برای آزمایش در دسترس است.
آموزش مجازی مدیریت عالی حرفه ای کسب و کار Post DBA+ مدرک معتبر قابل ترجمه رسمی با مهر دادگستری و وزارت امور خارجه | آموزش مجازی مدیریت عالی و حرفه ای کسب و کار DBA+ مدرک معتبر قابل ترجمه رسمی با مهر دادگستری و وزارت امور خارجه | آموزش مجازی مدیریت کسب و کار MBA+ مدرک معتبر قابل ترجمه رسمی با مهر دادگستری و وزارت امور خارجه |
![]() مدیریت حرفه ای کافی شاپ | ![]() حقوقدان خبره | ![]() سرآشپز حرفه ای |
آموزش مجازی تعمیرات موبایل | ![]() آموزش مجازی ICDL مهارت های رایانه کار درجه یک و دو | آموزش مجازی کارشناس معاملات املاک_ مشاور املاک |
برچسب ها :ccxt ، MetaTrader ، MQL5 ، node.js ، از ، برنامه ، به ، دسترسی ، دیگر ، رمز ، رمزنگاری ، ژوئیه ، سرور ، طریق ، فیلمنامه ، کتابخانه ، مبادلات ، مبادله ، نسخه آزمایشی ، ویترین
- نظرات ارسال شده توسط شما، پس از تایید توسط مدیران سایت منتشر خواهد شد.
- نظراتی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
- نظراتی که به غیر از زبان فارسی یا غیر مرتبط با خبر باشد منتشر نخواهد شد.



آموزش مجازی مدیریت عالی و حرفه ای کسب و کار DBA









ارسال نظر شما
مجموع نظرات : 0 در انتظار بررسی : 0 انتشار یافته : ۰