وسائل لوڈ ہو رہے ہیں... لوڈنگ...

exchange.IO

کےexchange.IO()تقریب تبادلہ اعتراض سے متعلق دیگر انٹرفیس کالز کے لئے استعمال کیا جاتا ہے.

کےexchange.IO()فنکشن ایکسچینج آبجیکٹ سے متعلق دیگر انٹرفیس کو کال کرتا ہے ، کامیاب کال پر مطلوبہ رسپانس ڈیٹا واپس کرتا ہے اور یہ ناکام کال پر null واپس کرتا ہے۔ string, number, bool, object, array, null, اور نظام کی طرف سے معاونت کسی بھی دوسری قسم

exchange.IO(k،...args)

کےkپیرامیٹر کال کی قسم مقرر کرنے کے لئے استعمال کیا جاتا ہے، اختیاری اقدار کے ساتھ"api", "currency", "base", "trade_margin", "trade_normal", "public_base", "mbase", selfTradePreventionMode, simulate, cross, dual, unifiedاور اسی طرح. k سچ سٹرنگ توسیع شدہ پیرامیٹرز، مخصوص کال منظر نامے کے مطابق منظور،argپیرامیٹرز ایک سے زیادہ منتقل کیا جا سکتا ہے.exchange.IO()فنکشن، مختلف پیرامیٹر کی ترتیبات مختلف افعال کے مطابق.exchange.IO()فنکشن غیر معینہ ہیں. ارگ سچ string, number, bool, object, array, null اور نظام کی طرف سے حمایت کی کسی بھی دیگر اقسام

function main() {
    var arrOrders = [
        {"instId":"BTC-USDT-SWAP","tdMode":"cross","side":"buy","ordType":"limit","px":"16000","sz":"1","posSide":"long"},
        {"instId":"BTC-USDT-SWAP","tdMode":"cross","side":"buy","ordType":"limit","px":"16000","sz":"2","posSide":"long"}
    ]
    
    // Call exchange.IO to access the exchange's bulk order interface directly
    var ret = exchange.IO("api", "POST", "/api/v5/trade/batch-orders", "", JSON.stringify(arrOrders))
    Log(ret)
}
import json
def main():
    arrOrders = [
        {"instId":"BTC-USDT-SWAP","tdMode":"cross","side":"buy","ordType":"limit","px":"16000","sz":"1","posSide":"long"}, 
        {"instId":"BTC-USDT-SWAP","tdMode":"cross","side":"buy","ordType":"limit","px":"16000","sz":"2","posSide":"long"}
    ]
    ret = exchange.IO("api", "POST", "/api/v5/trade/batch-orders", "", json.dumps(arrOrders))
    Log(ret)
void main() {
    json arrOrders = R"([
        {"instId":"BTC-USDT-SWAP","tdMode":"cross","side":"buy","ordType":"limit","px":"16000","sz":"1","posSide":"long"},
        {"instId":"BTC-USDT-SWAP","tdMode":"cross","side":"buy","ordType":"limit","px":"16000","sz":"2","posSide":"long"}
    ])"_json;
    auto ret = exchange.IO("api", "POST", "/api/v5/trade/batch-orders", "", arrOrders.dump());
    Log(ret);
}

کا استعمال کرتے ہوئےexchange.IO("api", httpMethod, resource, params, raw)کال فارمexchange.IO()یہ آپ کو FMZ پلیٹ فارم میں شامل نہیں کیا جاتا ہے کہ فعالیت کو بڑھانے کے لئے اجازت دے گا.POSTدرخواست آپ کو خفیہ کاری ، دستخط ، یا پیرامیٹرز کی توثیق کے بارے میں فکر کرنے کی ضرورت نہیں ہے ، جو پہلے ہی نیچے ایف ایم زیڈ کے ذریعہ سنبھالا جاتا ہے ، جب تک کہ آپ اسی پیرامیٹرز کو پُر کریں۔ آپ بیچ آرڈر کی مثال کا حوالہ دے سکتے ہیں۔OKX ایکسچینجمستقبل کے معاہدوں، اور پیرامیٹر کا استعمالrawآرڈر پیرامیٹرز کو منتقل کرنے کے لئے:

var amount = 1
var price = 10
var basecurrency = "ltc"
function main () {
    // Note that both amount.toString() and price.toString() have a ' character on the left and right side
    var message = "symbol=" + basecurrency + "&amount='" + amount.toString() + "'&price='" + price.toString() + "'&side=buy" + "&type=limit"
    var id = exchange.IO("api", "POST", "/v1/order/new", message)
}
amount = 1
price = 10
basecurrency = "ltc"
def main():
    message = "symbol=" + basecurrency + "&amount='" + str(amount) + "'&price='" + str(price) + "'&side=buy" + "&type=limit"
    id = exchange.IO("api", "POST", "/v1/order/new", message)
void main() {
    auto amount = 1.0;
    auto price = 10.0;
    auto basecurrency = "ltc";
    string message = format("symbol=%s&amount=\"%.1f\"&price=\"%.1f\"&side=buy&type=limit", basecurrency, amount, price);
    auto id = exchange.IO("api", "POST", "/v1/order/new", message);
}

اگر کلیدی قدر میںparamsپیرامیٹر (یعنی، Http درخواست پیرامیٹر) ایک تار ہے، یہ پیرامیٹر کی قیمت کو لپیٹنے کے لئے پیرامیٹر کی قیمت کے ارد گرد واحد کوٹس (یعنی، علامت ') میں لکھا جا کرنے کی ضرورت ہے.

function main() {
    var ret = exchange.IO("api", "GET", "https://www.okx.com/api/v5/account/max-withdrawal", "ccy=BTC")
    Log(ret)
}
def main():
    ret = exchange.IO("api", "GET", "https://www.okx.com/api/v5/account/max-withdrawal", "ccy=BTC")
    Log(ret)
void main() {
    auto ret = exchange.IO("api", "GET", "https://www.okx.com/api/v5/account/max-withdrawal", "ccy=BTC");
    Log(ret);
}

یہ مکمل یو آر ایل پیرامیٹرز میں منتقل کرنے کی حمایت کرتا ہے جو بیس ایڈریس سوئچنگ کے آپریشن کو چھوڑ سکتا ہے (بنیادی ایڈریس کو کال کرنا)exchange.SetBase()فنکشن).

function main(){
    var ret = exchange.IO("api", "GET", "/api/v5/trade/orders-pending", "instType=SPOT")
    Log(ret)
}
def main():
    ret = exchange.IO("api", "GET", "/api/v5/trade/orders-pending", "instType=SPOT")
    Log(ret)
void main() {
    auto ret = exchange.IO("api", "GET", "/api/v5/trade/orders-pending", "instType=SPOT");
    Log(ret);
}

پیرامیٹر کے بغیر کال کا مثالraw:

function main() {
    // For example, if you set the current trading pair of the exchange object to BTC_USDT at the beginning of the live trading, print the current trading pair tickers
    Log(exchange.GetTicker())
    // Switch the trading pair to LTC_BTC      
    exchange.IO("currency", "LTC_BTC")
    Log(exchange.GetTicker())
}
def main():
    Log(exchange.GetTicker())
    exchange.IO("currency", "LTC_BTC")
    Log(exchange.GetTicker())
void main() {
    Log(exchange.GetTicker());
    exchange.IO("currency", "LTC_BTC");
    Log(exchange.GetTicker());
}

موجودہ تبادلے کی ٹریڈنگ جوڑی سوئچ کریں، تاکہ یہ کوڈ کی طرف سے تشکیل ٹریڈنگ جوڑی سوئچ کرے گالائیو ٹریڈنگ تخلیق پریابیک ٹیسٹ میں.

function main () {
    // exchanges[0] is the first exchange object added when the live trading is created 
    exchanges[0].IO("base", "https://api.huobi.pro")
}
def main():
    exchanges[0].IO("base", "https://api.huobi.pro")
void main() {
    exchanges[0].IO("base", "https://api.huobi.pro");
}```
For example, the default base address when the exchange object is wrapped is ```https://api.huobipro.com```, and when you need to switch to ```https://api.huobi.pro```, use the following code to switch:
```javascript
function main() {
    exchange.SetBase("https://api.bitfinex.com")
    exchange.IO("mbase", "https://api-pub.bitfinex.com")
}
def main():
    exchange.SetBase("https://api.bitfinex.com")
    exchange.IO("mbase", "https://api-pub.bitfinex.com")
void main() {
    exchange.SetBase("https://api.bitfinex.com");
    exchange.IO("mbase", "https://api-pub.bitfinex.com");
}

ٹکر انٹرفیس اور تجارتی انٹرفیس کے لئے مختلف بیس ایڈریس والے تبادلے کے ل for ، مثال کے طور پر ، بٹ فائنکس فیوچر کے دو پتے ہیں ، ایک ٹکر انٹرفیس کے لئے اور دوسرا تجارتی انٹرفیس کے لئے۔ بٹ فائنکس فیوچر کا استعمال کرتے ہوئے نجی انٹرفیس بیس ایڈریس کو سوئچ کریں۔exchange.SetBase("xxx"). Bitfinex مستقبل عوامی انٹرفیس بیس ایڈریس کا استعمال کرتے ہوئے سوئچexchange.IO("mbase", "xxx").

I. کریپٹوکرنسی پر مبنی تبادلے کے لئے دیگر API انٹرفیس کالز جو یکساں طور پر نہیں ہیں، پیرامیٹر کے ساتھkمقرر کریں"api":

exchange.IO("api", httpMethod, resource, params, raw)
  • httpMethod : پیرامیٹر ایک تار کی قسم ہے، درخواست کی قسم میں بھریںPOST, GET، وغیرہ
  • وسائل: پیرامیٹر تار کی قسم کا ہے اور درخواست کے راستے میں بھرتا ہے۔ یہ مکمل درخواست کے راستوں کے استعمال کی حمایت کرتا ہے ، تفصیلات کے لئے حوالہ مثال دیکھیں۔
  • پیرامیٹرز: پیرامیٹر ایک تار کی قسم ہے، درخواست پیرامیٹرز کے ساتھ بھرا ہوا ہے،URL.
  • خام: پیرامیٹر خام تار پیرامیٹر ہے اور باہر چھوڑ دیا جا سکتا ہے.

کےexchange.IO("api", httpMethod, resource, params, raw)فنکشن کال ایکسچینج انٹرفیس تک رسائی حاصل کرے گا اور کال ناکام ہوجاتی ہے اور غلطی واقع ہوتی ہے تو null واپس کرے گا۔ صرف حقیقی ٹریڈنگ کی حمایت کرتا ہےexchange.IO("api", httpMethod, resource, params, raw) function.

II. ٹریڈنگ کے جوڑوں کو تبدیل کرنے کے لئے، پیرامیٹرkپر مقرر کیا گیا ہے"currency":

exchange.IO("currency", currency)
  • کرنسی: پیرامیٹر ایک یونیفارم بڑے حروف کی شکل کے ساتھ ایک تار کی قسم ہے، الگ کرنے کے لئے ایک underscore کا استعمال کرتے ہوئےbaseCurrencyسےquoteCurrency، جیسےBTC_USDT.

    1. بیک ٹیسٹنگ سسٹم اب ٹریڈنگ کے جوڑوں کو سوئچ کرنے کی حمایت کرتا ہے (صرف ڈیجیٹل کرنسی اسپاٹ ایکسچینج اشیاء کے لئے) ، بیک ٹیسٹنگ کرتے وقت ، آپ کو اس بات پر توجہ دینے کی ضرورت ہے کہ آپ صرف اسی denominated کرنسی کے ساتھ ٹریڈنگ کے جوڑوں پر سوئچ کرسکتے ہیں ، مثال کے طور پر ، موجودہ ٹریڈنگ جوڑی ہےETH_BTCصرف تبدیل کر سکتے ہیںLTC_BTC، نہیں کرناLTC_USDT.
    2. کریپٹوکرنسی فیوچر معاہدوں کے لئے ایکسچینج آبجیکٹ ٹریڈنگ جوڑوں کو سوئچ کرتا ہے اور معاہدے کا کوڈ دوبارہ طے کرنے کی ضرورت ہے کہ کون سا معاہدہ تجارت کیا جائے۔
    3. {@fun/Account/exchange.SetCurrency exchange.SetCurrency} فنکشن کا استعمال کرتے ہوئے ٹریڈنگ کے جوڑوں کو تبدیل کرنے کے لئے بالکل وہی ہے جو استعمال کرتے ہوئےexchange.IO("currency", currency)تجارت کے جوڑوں کو تبدیل کرنے کے لئے.

III۔ کریپٹوکرنسی اسپاٹ ایکسچینج آبجیکٹ لیورجڈ اکاؤنٹ موڈ کو سوئچ کرنے کے لئے استعمال کیا جاتا ہے:

  • پیرامیٹرkپر مقرر کیا گیا ہے"trade_margin"اسپاٹ لیوریج اکاؤنٹ موڈ پر سوئچ کرنے کے لئے۔ احکامات دینے اور اکاؤنٹ کے اثاثے حاصل کرنے سے ایکسچینج کے اسپاٹ لیوریج انٹرفیس تک رسائی حاصل ہوگی۔ اگر ایکسچینج اسپاٹ لیول میں مکمل مارجن اور الگ تھلگ مارجن میں فرق کرتا ہے تو:exchange.IO("trade_super_margin")لیورجڈ اکاؤنٹ کے لیے مکمل مارجن پر سوئچ کرنا، اورexchange.IO("trade_margin")لیورجڈ اکاؤنٹ کے لیے الگ تھلگ مارجن پر سوئچ کرنا۔
  • پیرامیٹرkپر مقرر کیا گیا ہے"trade_normal"معمول کے اسپاٹ اکاؤنٹ موڈ پر واپس جانے کے لیے۔

اسپاٹ ایکسچینجز جو لیورجڈ اکاؤنٹ ماڈلز کے درمیان سوئچنگ کی حمایت کرتے ہیں:

تبادلہ خصوصی تبصرے
OKX لیورجڈ اکاؤنٹ موڈ میں ٹریڈنگ جوڑے عام لوگوں سے مختلف ہیں ، کچھ ٹریڈنگ جوڑوں میں ان کا امکان نہیں ہوسکتا ہے۔ استعمال کریںexchange.IO("trade_super_margin")لیورجڈ اکاؤنٹس کے لئے مکمل پوزیشن پر سوئچ کرنے اور استعمال کرنے کے لئےexchange.IO("trade_margin")پوزیشن کی طرف سے پوزیشن پر سوئچ کرنے کے لئے.trade_normalمعمول کے اسپاٹ موڈ پر سوئچ کرنے کے لیے استعمال کریں۔exchange.IO("tdMode", "cross")براہ راست لیوریج موڈ کی وضاحت کرنے کے لئے.
ہوبی لیوریجڈ اکاؤنٹ موڈ ٹریڈنگ کے جوڑے عام سے مختلف ہوتے ہیں ، کچھ ٹریڈنگ جوڑوں میں ان کی کمی ہوسکتی ہے۔ ہووبی لیوریجڈ اکاؤنٹس میں مکمل پوزیشن اور پوزیشن کے لحاظ سے پوزیشن موجود ہیں۔ استعمال کریںtrade_marginلیوریج اکاؤنٹ کی پوزیشن پر پوزیشن کے مطابق سوئچ کرنے کے لئے، استعمالtrade_super_marginلیوریج اکاؤنٹ مکمل پوزیشن پر سوئچ کرنے کے لئے.trade_normalعام کرنسی کرنسی موڈ پر سوئچ کرنے کے لئے.
بائننس لیورجڈ اکاؤنٹ موڈ کو پوزیشن کے لحاظ سے پوزیشن اور مکمل پوزیشن میں تقسیم کیا گیا ہے، استعمالtrade_marginپوزیشن کی طرف سے پوزیشن پر سوئچ کرنے کے لئے، استعمالtrade_super_marginمکمل پوزیشن پر سوئچ کرنے کے لئے، استعمالtrade_normalعام کرنسی کرنسی موڈ پر سوئچ کرنے کے لئے.
دروازہ لیورجڈ اکاؤنٹ موڈ کو پوزیشن کے لحاظ سے پوزیشن اور مکمل پوزیشن میں تقسیم کیا گیا ہے، استعمالtrade_marginپوزیشن کی طرف سے پوزیشن پر سوئچ کرنے کے لئے، استعمالtrade_super_marginمکمل پوزیشن پر سوئچ کرنے کے لئے، استعمالtrade_normalعام کرنسی کرنسی موڈ پر سوئچ کرنے کے لئے.
AscendEx استعمالexchange.IO("trade_margin")لیوریج اکاؤنٹ موڈ پر سوئچ کرنے کے لئے اورexchange.IO("trade_normal")عام اکاؤنٹ موڈ پر واپس سوئچ کرنے کے لئے.
واہ استعمالexchange.IO("trade_margin")لیوریج اکاؤنٹ موڈ پر سوئچ کرنے کے لئے اورexchange.IO("trade_normal")عام اکاؤنٹ موڈ پر واپس سوئچ کرنے کے لئے.
CoinEx استعمالexchange.IO("trade_margin")لیوریجڈ اکاؤنٹ موڈ پر سوئچ کرنے کے لئے اورexchange.IO("trade_normal")عام اکاؤنٹ موڈ پر واپس سوئچ کرنے کے لئے.

دیگر سوئچنگ افعال:چیک کریںexchange.IO()کے لئے فنکشندیگر سوئچنگ افعالصارف گائیڈ میں.

{@fun/NetSettings/exchange.SetBase exchange.SetBase}، {@fun/Account/exchange.SetCurrency exchange.SetCurrency}، {@var EXCHANGE_OP_IO_CONTROL}

exchange.SetRate exchange.Log