[TOC]
حالیہ دنوں میں، ایف ایم زیڈ پلیٹ فارم نے ہائپر لیکوڈ ڈی ای ایکس کے اعلی کارکردگی والے غیر جانبدار تبادلے کی حمایت میں اضافہ کیا ہے، جس سے صارفین کو غیر جانبدار تجارت میں حصہ لینے کے لئے مزید اختیارات فراہم کیے گئے ہیں۔ فی الحال، ایف ایم زیڈ پلیٹ فارم کے مینیجر کی خصوصیات کو مکمل طور پر اپ ڈیٹ کیا گیا ہے، جو ہائپر لیکوڈ کے فوری اور مستقل معاہدے کی تجارت کی حمایت کرتا ہے اور ڈی ای ایکس کے تمام API کی خصوصیات کو ڈھکتا ہے۔
Hyperliquid پلیٹ فارم کا تعارف
Hyperliquid ایک اعلی کارکردگی والا L1 بلاکچین ہے جو شروع سے ہی بہتر بنایا گیا ہے ، جس کا وژن ایک مکمل طور پر منسلک اوپن فنانشل سسٹم کی تعمیر ہے۔ صارفین کو موثر مقامی اجزاء کے ساتھ تعامل کرکے آزادانہ طور پر ایپلی کیشنز بنانے کی اجازت دیتا ہے ، جبکہ اختتامی صارف کے تجربے کو ہموار بناتا ہے۔
Hyperliquid L1 کی کارکردگی ایک غیر مجاز مالیاتی ایپلی کیشنز ماحولیاتی نظام کی حمایت کرنے کے لئے کافی ہے۔ تمام احکامات، واپسی، لین دین اور تصفیہ مکمل طور پر شفاف طریقے سے چین پر مکمل ہوتے ہیں، بلاک تاخیر 1 سیکنڈ سے کم ہے۔ فی الحال، چین فی سیکنڈ 100،000 احکامات تک کی پروسیسنگ کی صلاحیت کی حمایت کرتا ہے۔
ہائپر لیکویڈ ایل ون نے ہاٹ اسٹاف اور اس کے بعد کے الگورتھم سے متاثر ہوکر ہائپر بی ایف ٹی نامی ایک کسٹم اتفاق رائے الگورتھم کو اپنایا ہے۔ اتفاق رائے کے میکانزم اور نیٹ ورک کی تعمیر دونوں کو نچلے درجے سے بہتر بنایا گیا ہے تاکہ اعلی کارکردگی والے بلاکچین کی ضروریات کو پورا کیا جاسکے۔
ہم امید کرتے ہیں کہ اس گائیڈ سے آپ کو FMZ پلیٹ فارم پر Hyperliquid DEX کے ساتھ تیزی سے منظم اور مقداری تجارت کرنے میں مدد ملے گی اور اس سے زیادہ تجارت کے مواقع تلاش کرنے میں مدد ملے گی۔
REST پروٹوکول - کام کرنے والے انٹرفیس کی مشقیں۔ - ٹرانزیکشن انٹرفیس کی مشقیں (آرڈر کرنا ، منسوخ کرنا) ؛ - ٹرانزیکشن سے متعلق پوچھ گچھ کی مشقیں (اکاؤنٹ ، آرڈر) ۔ - دیگر افعال ((نقد ، معاہدہ کی منتقلی ، خزانہ تک رسائی ، اثاثوں کو بٹوے میں منتقل کرنا وغیرہ) ]]
ویب ساکٹ پروٹوکول - تبادلہ خیال کی معلومات کی رکنیت کی مشق (ریسٹ انٹرفیس میں کوئی تجارت انٹرفیس نہیں ہے ، ویب سوکٹ انٹرفیس کے ساتھ مکمل)
ایف ایم زیڈ پلیٹ فارم کے ایکسچینج شامل کرنے کے صفحے پر ، ہائپر لیکویڈ فوری ، فیوچر ایکسچینج اشیاء کو تشکیل دیا جاسکتا ہے۔
ماحولیاتی تقسیم ہائپر لیکویڈ کے پاس ایک ٹیسٹنگ ماحول بھی ہے جیسا کہ زیادہ تر ایکسچینجز کے ساتھ ہوتا ہے۔
اس کے علاوہ ، ہم نے اس ویب سائٹ کو ایک بار پھر استعمال کیا ہے ، اور اس کے بارے میں مزید معلومات حاصل کرنے کی کوشش کر رہے ہیں۔
REST پروٹوکول API انٹرفیس کے لئے متعلقہ نوڈس ایڈریس:https://api.hyperliquid.xyz
◄
اس کے علاوہ، یہ بھی مختلف ہے کہ کس طرح دستخط کرنے کے بارے میں معلومات:source == "a"
,chainId = 42161
ٹیسٹنگ نیٹ ورک اکثر بند ہوجاتا ہے ، لیکن صرف ٹیسٹنگ انٹرفیس کے طور پر استعمال ہوتا ہے ، جو DEX پر تجارتی افعال سے واقف ہے۔
REST پروٹوکول API انٹرفیس کے لئے متعلقہ نوڈس ایڈریس:https://api.hyperliquid-testnet.xyz
◄
اس کے علاوہ، یہ بھی مختلف ہے کہ کس طرح دستخط کرنے کے بارے میں معلومات:source == "b"
,chainId = 421614
جیسا کہ زیادہ تر ڈی ای ایکس ایکسچینجز میں والیٹ سے منسلک ہوتا ہے ، والیٹ اے پی پی کا استعمال کرتے ہوئے دو جہتی کوڈ کو ہائپر لیکویڈ سے جوڑنا ممکن ہے (والٹ کو آربٹرم میں تبدیل کرنا ، اسکین لاگ ان ، ٹیسٹنگ نیٹ ورک ، ہوم نیٹ ورک) ۔
اگر آپ پہلے ٹیسٹ نیٹ سے واقف ہونے کے خواہشمند ہیں تو ، آپ اپنے بٹوے کو Hyperliquid سے مربوط کرنے کے بعد ، براہ راست Hyperliquid کے صفحے پر نل تلاش کرسکتے ہیں۔
ٹیسٹنگ اثاثے حاصل کرنے کے بعد ، ٹیسٹنگ کے لئے یو ایس ڈی سی حاصل کرنے کے بعد ، آپ Hyperliquid میں "ڈپازٹ" کے بٹن پر کلک کرکے جمع کر سکتے ہیں۔ (آربیٹرم ٹیسٹنگ نیٹ ، بہتر ہے تھوڑا سا ETH) ۔
اس کے بعد ، آپ کو اپنے اکاؤنٹ میں ای ٹی ایچ کی رقم جمع کروانے کی ضرورت ہوگی۔
ہائپر لیکویڈ اے پی پی کے صفحے پر جب دستی طور پر ٹرانزیکشن کیا جاتا ہے تو ، صفحہ خود بخود ایک ایجنٹ والیٹ ایڈریس اور نجی کلید تیار کرتا ہے ، جو براؤزر میں ریکارڈ کیا جاتا ہے ، براؤزر کے صفحے پر نیچے دیئے گئے احکامات وغیرہ کے لئے استعمال کیا جاتا ہے۔ اگر ہم پروگرام سازی ، مقدار کی تجارت کرنے جارہے ہیں تو ، اس ترتیب کی معلومات کو کیسے حاصل کیا جائے؟
Hyperliquid کے API صفحے پر مطلوبہ ایجنٹ والیٹ ایڈریس اور اس کے مطابق نجی کلید بنائی جاسکتی ہے۔
اس کے علاوہ ، ہم نے ایک اور ایجنٹ کو بھی شامل کیا ہے جو اس کے بارے میں سوچ رہا ہے۔
2، پتے اور نجی چابیاں پیدا کریں۔
3، ہائپر لیکویڈ سے منسلک والیٹ کا استعمال کرتے ہوئے ایجنٹ والیٹ کو اجازت دینا۔
ایف ایم زیڈ پر ایجنٹ والیٹ ایڈریس، پرائیویٹ کلید کو ترتیب دیں
اس کے بعد یہ معلومات ایف ایم زیڈ پلیٹ فارم پر تشکیل دی جاسکتی ہیں۔
ایکسپورٹ کی شے کی تشکیل کے لئے معلومات کی ضرورت ہے:
ایک بار جب ہم اپنی مرضی کے مطابق تشکیل دے چکے ہیں تو ہم اسے ایف ایم زیڈ پلیٹ فارم پر آزما سکتے ہیں ، اور ہم براہ راست ایف ایم زیڈ پلیٹ فارم کے "ڈیبگنگ ٹول" کا استعمال کرتے ہوئے اسے آزما سکتے ہیں۔
اگر آپ Hyperliquid Exchange کا استعمال کر رہے ہیں جس میں ٹیسٹ نیٹ ورک کی معلومات کی تشکیل کی گئی ہے تو ، اس کا استعمال کرتے وقت کچھ سوئچ آپریشن کرنے کی ضرورت ہوگی ، جیسے:
function main() {
// REST协议API地址切换到测试网
exchange.SetBase("https://api.hyperliquid-testnet.xyz")
// source : a 主网 , b 测试网
exchange.IO("source", "b")
return exchange.GetAccount()
}
ہائپر لیکویڈ ڈی ای ایکس ایکسچینج میں موجودہ اور مستقبل کی اقسام سے متعلق اے پی آئی انٹرفیس تقریبا ایک جیسی ہے ، صرف معمولی تفصیلات میں فرق ہے۔ہوم نیٹ ورک کی ترتیباورٹیسٹ نیٹ کی ترتیب کی معلوماتکےہائپر لیکوڈ فیوچراس کے علاوہ ، یہ بھی کہا جاتا ہے کہ یہ ایک بہت بڑا مسئلہ ہے۔
function main() {
var markets = exchange.GetMarkets()
if (!markets) {
throw "get markets error"
}
var tbl = {
type: "table",
title: "test markets",
cols: [
"key", "Symbol", "BaseAsset", "QuoteAsset", "TickSize", "AmountSize", "PricePrecision", "AmountPrecision", "MinQty",
"MaxQty", "MinNotional", "MaxNotional", "CtVal", "CtValCcy"
],
rows: []
}
for (var symbol in markets) {
var market = markets[symbol]
tbl.rows.push([
symbol, market.Symbol, market.BaseAsset, market.QuoteAsset, market.TickSize, market.AmountSize,
market.PricePrecision, market.AmountPrecision, market.MinQty, market.MaxQty, market.MinNotional, market.MaxNotional, market.CtVal, market.CtValCcy
])
}
LogStatus("`" + JSON.stringify(tbl) + "`")
}
function main() {
var depth = exchange.GetDepth("ETH_USD.swap")
var asks = depth.Asks
var bids = depth.Bids
Log("买3", bids[2])
Log("买2", bids[1])
Log("买1", bids[0])
Log("卖1", asks[0])
Log("卖2", asks[1])
Log("卖3", asks[2])
}
function main() {
var account = exchange.GetAccount()
return account
}
function main() {
var symbols = ["ETH_USD.swap", "XRP_USD.swap", "HYPE_USD.swap"]
var arrDir = ["market_buy", "sell", "buy"]
var markets = exchange.GetMarkets()
var ids = []
for (var i in symbols) {
var symbol = symbols[i]
var side = arrDir[i]
var ticker = exchange.GetTicker(symbol)
var info = markets[symbol]
exchange.SetPrecision(info.PricePrecision, info.AmountPrecision)
// USDC
var qty = 15
var price = null
var amount = null
if (side == "market_buy") {
price = -1
side = "buy"
amount = qty / ticker.Last
} else {
price = side == "buy" ? ticker.Last * 0.9 : ticker.Last * 1.1
amount = qty / price
}
var id = exchange.CreateOrder(symbol, side, price, amount)
ids.push(id)
}
var tbl = {type: "table", title: "test", cols: ["Symbol", "Id", "Price", "Amount", "DealAmount", "AvgPrice", "Status", "Type", "Offset", "ContractType"], rows: []}
for (var id of ids) {
var order = exchange.GetOrder(id)
tbl.rows.push([order.Symbol, order.Id, order.Price, order.Amount, order.DealAmount, order.AvgPrice, order.Status, order.Type, order.Offset, order.ContractType])
Sleep(500)
}
LogStatus("`" + JSON.stringify(tbl) + "`")
}
function main() {
var orders = exchange.GetOrders("USD.swap")
for (var order of orders) {
exchange.CancelOrder(order.Id, order)
Sleep(1000)
}
var tbl = {type: "table", title: "test", cols: ["Symbol", "Id", "Price", "Amount", "DealAmount", "AvgPrice", "Status", "Type", "Offset", "ContractType"], rows: []}
for (var order of orders) {
tbl.rows.push([order.Symbol, order.Id, order.Price, order.Amount, order.DealAmount, order.AvgPrice, order.Status, order.Type, order.Offset, order.ContractType])
}
LogStatus("`" + JSON.stringify(tbl) + "`")
}
function main() {
// 设置当前为全仓
exchange.IO("cross", true)
// 设置杠杆
exchange.SetMarginLevel("ETH_USD.swap", 10)
return exchange.GetRawJSON()
}
exchange.GetRawJSON (()) لیور سیٹ کرنے کی درخواست کا جواب واپس کرتا ہے:
{
status : ok , response :{ type : default }}
چونکہ ایکسچینج کے انٹرفیس پیرامیٹرز زیادہ پیچیدہ ہیں اور یو آر ایل انکوڈنگ کا استعمال نہیں کیا جاسکتا ہے ، لہذا اس کا استعمال کیا جارہا ہے۔exchange.IO
جب فنکشن کو بلایا جاتا ہے تو ، آپ صرف JSON سٹرنگ کو بطور پیرامیٹر منتقل کرسکتے ہیں۔ ذیل میں مختلف انٹرفیس کالز کی مثالیں ہیں۔
hyperliquid حوالہ جات:https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#place-an-order
var params = {"type": "scheduleCancel", "time": new Date().getTime()}
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
{
status 1000000۔ تجارت:174.57424.”}: err , response : جب تک کافی حجم کی تجارت نہیں کی جاتی تب تک شیڈول منسوخ کرنے کا وقت مقرر نہیں کیا جاسکتا۔ ضرورت:
اس فنکشن کی کچھ حدود ہیں: اکاؤنٹ کو ٹرانزیکشن لیول تک پہنچنے کے بعد ہی اس فنکشن کا استعمال کیا جا سکتا ہے۔
TWAP آرڈر بنائیں۔
function main() {
var params = {
"type": "twapOrder",
"twap": {
"a": 0,
"b": true,
"s": "1",
"r": false,
"m": 10,
"t": false
}
}
// SOL_USDT.swap , 订单量 : 1 , twapOrder 订单有头寸要求,最少100美元价值
// a : 0 , 即 SOL_USDT.swap 这个品种
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
}
ٹویا اے پی کے احکامات منسوخ کیے گئے ہیں۔
function main() {
var params = {
"type": "twapCancel",
"a": 0,
"t": 3805
}
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
}
ایک بار پھر ، ایک بار پھر ، ایک بار پھر ، ایک بار پھر ، ایک بار پھر ، ایک بار پھر ، ایک بار پھر۔
function main() {
var params = {
"type": "approveAgent",
"hyperliquidChain": "Testnet",
"signatureChainId": "0x66eee",
"agentAddress": "0xAAAA",
"agentName": "test02",
"nonce": new Date().getTime()
}
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
}
اجازت نامہ کامیابی کے ساتھ واپس آگیا:
{
status : ok , response :{ type : default }}
https://app.hyperliquid-testnet.xyz/API
مڈل۔اس کے علاوہ، اس نے اپنے پیسے کے ساتھ اپنے پیسے کا تبادلہ کیا.
function main() {
var params = {
"type": "vaultTransfer",
"vaultAddress": "0xAAA",
"isDeposit": true,
"usd": 5000000
}
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
}
اس کے علاوہ ، یہ بھی کہا جاتا ہے کہ یہ ایک بہت ہی اہم مسئلہ ہے۔
function main() {
var params = {
"type": "withdraw3",
"hyperliquidChain": "Testnet",
"signatureChainId": "0x66eee",
"amount": "5",
"time": new Date().getTime(),
"destination": "0xAAA"
}
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
}
اثاثوں کو فوری / فیوچر (مستقل معاہدے) کے درمیان تقسیم کرنا۔
function main() {
var params = {
"type": "usdClassTransfer",
"hyperliquidChain": "Testnet",
"signatureChainId": "0x66eee",
"amount": "5",
"toPerp": false,
"nonce": new Date().getTime()
}
return exchange.IO("api", "POST", "/exchange", null, JSON.stringify(params))
}
false
مستقبل -> جگہ کا اشارہ کرتا ہے۔true
اسپاٹ -> فیوچر کی طرف اشارہ کرتا ہے۔ڈبلیو ایس انٹرفیس کا پتہ:
مین نیٹ: wss://api.hyperliquid.xyz/ws
چونکہ REST پروٹوکول API انٹرفیس حالیہ ٹرانزیکشن کے اعداد و شمار کو حاصل نہیں کرتا ہے، لیکن ویب ساکٹ انٹرفیس میں یہ چینل سبسکرائب کیا جا سکتا ہے.
سبسکرائب کریں
{
"method": "subscribe",
"subscription": {
"type": "trades",
"coin": "SOL"
}
}
ڈیفالٹ ٹولز میں ٹیسٹ کی مثالیں:
function main() {
var loopCount = 20
var subMsg = {
"method": "subscribe",
"subscription": {
"type": "trades",
"coin": "SOL"
}
}
var conn = Dial("wss://api.hyperliquid.xyz/ws")
conn.write(JSON.stringify(subMsg))
if (conn) {
for (var i = 0; i < loopCount; i++) {
var msg = conn.read(1000)
if (msg) {
Log(msg)
}
}
}
conn.close()
Log("测试结束")
}
مندرجہ بالا ٹیسٹ، تازہ ترین مینیجر کی بنیاد پر، Hyperliquid DEX تبادلے کی حمایت کرنے کے لئے تازہ ترین مینیجر کو ڈاؤن لوڈ کرنے کی ضرورت ہے۔
آپ کی حمایت کا شکریہ اور پڑھنے کا شکریہ۔