..exchange.GetOrders()
कार्य का उपयोग बकाया आदेश प्राप्त करने के लिए किया जाता है।
..exchange.GetOrders()
function {@struct/Order Order} संरचनाओं की एक सरणी लौटाता है यदि डेटा के लिए अनुरोध सफल होता है, और यदि डेटा के लिए अनुरोध विफल होता है तो यह शून्य मान लौटाता है.
{@struct/Order Order} सरणी, शून्य मान
विनिमय.GetOrders ((() विनिमय.GetOrders ((प्रतीक)
पैरामीटरsymbol
सेट करने के लिए प्रयोग किया जाता हैलेनदेन चिह्नयालेन-देन प्रतीक श्रेणीपूछताछ की जाए।
स्पॉट एक्सचेंज ऑब्जेक्ट्स के लिए, यदिsymbol
पैरामीटर पारित नहीं किया जाता है, सभी स्पॉट उत्पादों के अधूरे आदेश डेटा का अनुरोध किया जाएगा।
वायदा विनिमय वस्तुओं के लिए, यदिsymbol
पैरामीटर पारित नहीं किया जाता है, डिफ़ॉल्ट रूप से वर्तमान ट्रेडिंग जोड़ी और अनुबंध कोड के आयाम सीमा में सभी किस्मों के अधूरे आदेश डेटा का अनुरोध करना है।
चिह्न झूठी स्ट्रिंग
/*backtest
start: 2024-05-21 00:00:00
end: 2024-09-05 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
function main() {
var arrSymbol = ["ETH_USDT", "BTC_USDT", "LTC_USDT", "SOL_USDT"]
for (var symbol of arrSymbol) {
var t = exchange.GetTicker(symbol)
exchange.CreateOrder(symbol, "buy", t.Last / 2, 0.01)
}
var spotOrders = exchange.GetOrders()
var tbls = []
for (var orders of [spotOrders]) {
var tbl = {type: "table", title: "test GetOrders", 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])
}
tbls.push(tbl)
}
LogStatus("`" + JSON.stringify(tbls) + "`")
// Print out the information once and then return to prevent the order from being executed during the subsequent backtest and affecting data observation
return
}
'''backtest
start: 2024-05-21 00:00:00
end: 2024-09-05 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
'''
import json
def main():
arrSymbol = ["ETH_USDT", "BTC_USDT", "LTC_USDT", "SOL_USDT"]
for symbol in arrSymbol:
t = exchange.GetTicker(symbol)
exchange.CreateOrder(symbol, "buy", t["Last"] / 2, 0.01)
spotOrders = exchange.GetOrders()
tbls = []
for orders in [spotOrders]:
tbl = {"type": "table", "title": "test GetOrders", "cols": ["Symbol", "Id", "Price", "Amount", "DealAmount", "AvgPrice", "Status", "Type", "Offset", "ContractType"], "rows": []}
for order in orders:
tbl["rows"].append([order.Symbol, order.Id, order.Price, order.Amount, order.DealAmount, order.AvgPrice, order.Status, order.Type, order.Offset, order.ContractType])
tbls.append(tbl)
LogStatus("`" + json.dumps(tbls) + "`")
return
/*backtest
start: 2024-05-21 00:00:00
end: 2024-09-05 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
void main() {
auto arrSymbol = {"ETH_USDT", "BTC_USDT", "LTC_USDT", "SOL_USDT"};
for (const auto& symbol : arrSymbol) {
auto t = exchange.GetTicker(symbol);
exchange.CreateOrder(symbol, "buy", t.Last / 2, 0.01);
}
auto spotOrders = exchange.GetOrders();
json tbls = R"([])"_json;
std::vector<std::vector<Order>> arr = {spotOrders};
for (const auto& orders : arr) {
json tbl = R"({
"type": "table",
"title": "test GetOrders",
"cols": ["Symbol", "Id", "Price", "Amount", "DealAmount", "AvgPrice", "Status", "Type", "Offset", "ContractType"],
"rows": []
})"_json;
for (const auto& order : orders) {
json arrJson = R"([])"_json;
arrJson.push_back("Symbol");
arrJson.push_back("Id");
arrJson.push_back(order.Price);
arrJson.push_back(order.Amount);
arrJson.push_back(order.DealAmount);
arrJson.push_back(order.AvgPrice);
arrJson.push_back(order.Status);
arrJson.push_back(order.Type);
arrJson.push_back(order.Offset);
arrJson.push_back(order.ContractType);
tbl["rows"].push_back(arrJson);
}
tbls.push_back(tbl);
}
LogStatus(_D(), "\n", "`" + tbls.dump() + "`");
return;
}
स्पॉट एक्सचेंज ऑब्जेक्ट का उपयोग करें वर्तमान मूल्य के आधे मूल्य पर कई अलग-अलग ट्रेडिंग जोड़े के लिए खरीद ऑर्डर रखने के लिए, और फिर बकाया ऑर्डर जानकारी की क्वेरी करें।
/*backtest
start: 2024-05-21 00:00:00
end: 2024-09-05 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
function main() {
var arrSymbol = ["BTC_USDT.swap", "BTC_USDT.quarter", "ETH_USDT.swap", "ETH_USDT.quarter"]
for (var symbol of arrSymbol) {
var t = exchange.GetTicker(symbol)
exchange.CreateOrder(symbol, "buy", t.Last / 2, 1)
exchange.CreateOrder(symbol, "sell", t.Last * 2, 1)
}
var defaultOrders = exchange.GetOrders()
var swapOrders = exchange.GetOrders("USDT.swap")
var futuresOrders = exchange.GetOrders("USDT.futures")
var btcUsdtSwapOrders = exchange.GetOrders("BTC_USDT.swap")
var tbls = []
var arr = [defaultOrders, swapOrders, futuresOrders, btcUsdtSwapOrders]
var tblDesc = ["defaultOrders", "swapOrders", "futuresOrders", "btcUsdtSwapOrders"]
for (var index in arr) {
var orders = arr[index]
var tbl = {type: "table", title: tblDesc[index], 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])
}
tbls.push(tbl)
}
LogStatus("`" + JSON.stringify(tbls) + "`")
// Print out the information once and then return to prevent the order from being executed during the subsequent backtest and affecting data observation
return
}
'''backtest
start: 2024-05-21 00:00:00
end: 2024-09-05 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
'''
import json
def main():
arrSymbol = ["BTC_USDT.swap", "BTC_USDT.quarter", "ETH_USDT.swap", "ETH_USDT.quarter"]
for symbol in arrSymbol:
t = exchange.GetTicker(symbol)
exchange.CreateOrder(symbol, "buy", t["Last"] / 2, 1)
exchange.CreateOrder(symbol, "sell", t["Last"] * 2, 1)
defaultOrders = exchange.GetOrders()
swapOrders = exchange.GetOrders("USDT.swap")
futuresOrders = exchange.GetOrders("USDT.futures")
btcUsdtSwapOrders = exchange.GetOrders("BTC_USDT.swap")
tbls = []
arr = [defaultOrders, swapOrders, futuresOrders, btcUsdtSwapOrders]
tblDesc = ["defaultOrders", "swapOrders", "futuresOrders", "btcUsdtSwapOrders"]
for index in range(len(arr)):
orders = arr[index]
tbl = {"type": "table", "title": tblDesc[index], "cols": ["Symbol", "Id", "Price", "Amount", "DealAmount", "AvgPrice", "Status", "Type", "Offset", "ContractType"], "rows": []}
for order in orders:
tbl["rows"].append([order["Symbol"], order["Id"], order["Price"], order["Amount"], order["DealAmount"], order["AvgPrice"], order["Status"], order["Type"], order["Offset"], order["ContractType"]])
tbls.append(tbl)
LogStatus("`" + json.dumps(tbls) + "`")
return
/*backtest
start: 2024-05-21 00:00:00
end: 2024-09-05 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
void main() {
auto arrSymbol = {"BTC_USDT.swap", "BTC_USDT.quarter", "ETH_USDT.swap", "ETH_USDT.quarter"};
for (const auto& symbol : arrSymbol) {
auto t = exchange.GetTicker(symbol);
exchange.CreateOrder(symbol, "buy", t.Last / 2, 1);
exchange.CreateOrder(symbol, "sell", t.Last * 2, 1);
}
auto defaultOrders = exchange.GetOrders();
auto swapOrders = exchange.GetOrders("USDT.swap");
auto futuresOrders = exchange.GetOrders("USDT.futures");
auto btcUsdtSwapOrders = exchange.GetOrders("BTC_USDT.swap");
json tbls = R"([])"_json;
std::vector<std::vector<Order>> arr = {defaultOrders, swapOrders, futuresOrders, btcUsdtSwapOrders};
std::string tblDesc[] = {"defaultOrders", "swapOrders", "futuresOrders", "btcUsdtSwapOrders"};
for (int index = 0; index < arr.size(); index++) {
auto orders = arr[index];
json tbl = R"({
"type": "table",
"cols": ["Symbol", "Id", "Price", "Amount", "DealAmount", "AvgPrice", "Status", "Type", "Offset", "ContractType"],
"rows": []
})"_json;
tbl["title"] = tblDesc[index];
for (const auto& order : orders) {
json arrJson = R"([])"_json;
arrJson.push_back(order.Symbol);
arrJson.push_back(to_string(order.Id)); // The Id attribute type in the Order structure is TId, which is encoded using a C++ function to_string built into the FMZ platform.
arrJson.push_back(order.Price);
arrJson.push_back(order.Amount);
arrJson.push_back(order.DealAmount);
arrJson.push_back(order.AvgPrice);
arrJson.push_back(order.Status);
arrJson.push_back(order.Type);
arrJson.push_back(order.Offset);
arrJson.push_back(order.ContractType);
tbl["rows"].push_back(arrJson);
}
tbls.push_back(tbl);
}
LogStatus(_D(), "\n", "`" + tbls.dump() + "`");
return;
}
कई अलग-अलग ट्रेडिंग जोड़े और अनुबंध कोडों के लिए ऑर्डर देने के लिए वायदा विनिमय वस्तुओं का उपयोग करें। प्रतिपक्ष मूल्य से दूर की कीमतों पर ऑर्डर दें, एक अपूर्ण स्थिति में ऑर्डर रखें, और कई तरीकों से क्वेरी ऑर्डर करें।
function main() {
var orders = exchange.GetOrders("BTC_USDT") // Examples of spot products
// var orders = exchange.GetOrders("BTC_USDT.swap") // Examples of futures products
Log("orders:", orders)
}
def main():
orders = exchange.GetOrders("BTC_USDT") # Examples of spot products
# orders = exchange.GetOrders("BTC_USDT.swap") # Examples of futures products
Log("orders:", orders)
void main() {
auto orders = exchange.GetOrders("BTC_USDT"); // Examples of spot products
// auto orders = exchange.GetOrders("BTC_USDT.swap"); // Examples of futures products
Log("orders:", orders);
}
जब कॉलexchange.GetOrders()
कार्य, में पारितSymbol
एक विशिष्ट ट्रेडिंग जोड़ी और अनुबंध कोड के लिए ऑर्डर डेटा का अनुरोध करने के लिए पैरामीटर।
मेंGetOrders
फंक्शन, प्रतीक पैरामीटर के उपयोग के परिदृश्यों को इस प्रकार संक्षेप में प्रस्तुत किया गया हैः
एक्सचेंज ऑब्जेक्ट वर्गीकरण | प्रतीक पैरामीटर | क्वेरी का दायरा | टिप्पणियाँ |
---|---|---|---|
स्पॉट | प्रतीक पैरामीटर पास न करें | सभी स्पॉट ट्रेडिंग जोड़े की क्वेरी करें | सभी कॉल परिदृश्यों के लिए, यदि एक्सचेंज इंटरफ़ेस इसका समर्थन नहीं करता है, तो एक त्रुटि की सूचना दी जाएगी और एक शून्य मान लौटाया जाएगा। कोई और स्पष्टीकरण नहीं दिया जाएगा। |
स्पॉट | व्यापार प्रकार निर्दिष्ट करें, प्रतीक पैरामीटर हैः |
निर्दिष्ट BTC_USDT ट्रेडिंग जोड़ी की क्वेरी करें | स्पॉट एक्सचेंज ऑब्जेक्ट्स के लिए प्रतीक पैरामीटर प्रारूप हैः |
वायदा | प्रतीक पैरामीटर पास न करें | वर्तमान ट्रेडिंग जोड़ी और अनुबंध कोड आयाम सीमा के भीतर सभी ट्रेडिंग उत्पादों को क्वेरी करें | यदि वर्तमान ट्रेडिंग जोड़ी BTC_USDT है और अनुबंध कोड स्वैप है, तो सभी USDT-मार्जिन वाले स्थायी अनुबंधों को क्वेरी किया जाएगा। यह कॉल करने के बराबर हैGetOrders("USDT.swap") |
वायदा | व्यापार प्रकार निर्दिष्ट करें, प्रतीक पैरामीटर हैः |
एक निर्दिष्ट बीटीसी के लिए यूएसडीटी आधारित स्थायी अनुबंध की क्वेरी करें | वायदा विनिमय वस्तुओं के लिए पैरामीटर प्रतीक प्रारूप हैःव्यापारिक जोड़ीऔरअनुबंध कोडएफएमजेड प्लेटफॉर्म द्वारा परिभाषित, अक्षरों से अलग". . |
वायदा | ट्रेडिंग उत्पादों की श्रेणी निर्दिष्ट करें, प्रतीक पैरामीटर हैः |
सभी USDT आधारित स्थायी अनुबंधों की क्वेरी करें | - |
विकल्पों का समर्थन करने वाले फ्यूचर्स एक्सचेंज | प्रतीक पैरामीटर पास न करें | वर्तमान ट्रेडिंग जोड़ी आयाम सीमा के भीतर सभी विकल्प अनुबंध पूछताछ करें | यदि वर्तमान ट्रेडिंग जोड़ी BTC_USDT है, तो अनुबंध एक विकल्प अनुबंध पर सेट किया जाता है, उदाहरण के लिए, Binance विकल्प अनुबंधः BTC-240108-40000-C |
विकल्पों का समर्थन करने वाले फ्यूचर्स एक्सचेंज | विशिष्ट व्यापारिक उत्पाद निर्दिष्ट करें | निर्दिष्ट विकल्प अनुबंध की क्वेरी करें | उदाहरण के लिए Binance Futures Exchange के लिए, प्रतीक पैरामीटर हैः BTC_USDT.BTC-240108-40000-C |
विकल्पों का समर्थन करने वाले फ्यूचर्स एक्सचेंज | ट्रेडिंग उत्पादों की श्रेणी निर्दिष्ट करें, प्रतीक पैरामीटर हैः |
सभी USDT आधारित विकल्प अनुबंधों की खोज करें | - |
मेंGetOrders
फ्यूचर्स एक्सचेंज ऑब्जेक्ट क्वेरी
आयाम सीमा का सार इस प्रकार हैः
प्रतीक पैरामीटर | अनुरोध सीमा परिभाषा | टिप्पणियाँ |
---|---|---|
USDT.swap | यूएसडीटी आधारित स्थायी अनुबंध सीमा। | के लिए |
आयाम जो एक्सचेंज एपीआई इंटरफ़ेस द्वारा समर्थित नहीं हैं, एक त्रुटि की सूचना दी जाएगी और शून्य मान लौटाया जाएगा जब बुला रहा है. ∙ ∙ USDT.futures ∙ ∙ USDT आधारित वितरण अनुबंध रेंज ∙ ∙ ∙ ∙ USD.swap ∙ मुद्रा आधारित स्थायी की सीमा अनुबंध। ∙ ∙ USD.futures ∙ मुद्रा आधारित वितरण की सीमा अनुबंध। ∙ ∙ USDT.option ∙ ∙ ∙ USDT आधारित विकल्प अनुबंध रेंज ∙ ∙ ∙ ∙ ∙ USD.option ∙ मुद्रा आधारित विकल्प अनुबंध रेंज ∙ USDT.futures_combo CFD संयोजनों की एक श्रृंखला। फ्यूचर्स_डेरिबिट एक्सचेंज USD.futures_ff मिश्रित मार्जिन वितरण अनुबंधों की एक श्रृंखला। फ्यूचर्स_क्रैकेन एक्सचेंज USD.swap_pf. मिश्रित मार्जिन स्थायी अनुबंधों की एक श्रृंखला। ∙∙ फ्यूचर्स_क्रैकेन एक्सचेंज
जब विनिमय वस्तु द्वारा दर्शाया गया खाताexchange
के भीतर कोई लंबित आदेश नहीं हैक्वेरी सीमायाविनिर्दिष्ट व्यापारिक साधन(अपूर्ति न हुई स्थिति में सक्रिय आदेश), इस फ़ंक्शन को कॉल करने से खाली सरणी लौटती है, अर्थातः[]
.
निम्नलिखित एक्सचेंजों को वर्तमान में अधूरे आदेशों की क्वेरी करते समय उपकरण को उपकरण पैरामीटर में पास करने की आवश्यकता होती है। इन एक्सचेंजों के साथ GetOrders फ़ंक्शन को कॉल करते समय, यदि उपकरण पैरामीटर पास नहीं किया जाता है, तो केवल वर्तमान उपकरण के अधूरे आदेशों का अनुरोध किया जाता है, सभी उपकरणों के अधूरे आदेशों का नहीं (क्योंकि एक्सचेंज इंटरफ़ेस इसका समर्थन नहीं करता है) ।
Zaif, MEXC, LBank, Korbit, Coinw, BitMart, Bithumb, BitFlyer, BigONE
एक्सचेंजों जो समर्थन नहीं करते हैंexchange.GetOrders()
कार्य:
फ़ंक्शन का नाम | असमर्थित स्पॉट एक्सचेंज | बिना समर्थन वाले फ्यूचर्स एक्सचेंज |
---|---|---|
GetOrders प्राप्त करें | – | वायदा_बिबॉक्स |
{@struct/Order Order}, {@fun/Trade/exchange.GetOrder exchange.GetOrder}, {@fun/Trade/exchange.GetHistoryOrders exchange.GetHistoryOrders}, {@struct/Trade/Order Order}, {@fun/Trade/exchange.GetOrder exchange.GetOrder}, {@fun/Trade/exchange.GetHistoryOrders exchange.GetHistoryOrders}, {@fun/Trade/exchange.GetOrder exchange.GetOrder}, {@fun/Trade/exchange.GetHistoryOrders exchange.GetHistoryOrders}, {@fun/Trade/exchange.GetOrder exchange.GetOrder exchange.GetOrder}, {@fun/Trade/exchange.GetHistoryOrders exchange.GetHistoryOrders}, {@fun/Trade/exchange.GetOrder exchange.GetOrder exchange.GetOrder exchange.GetOrder}, {@fun/Trade/exchange.GetHistoryOr
exchange.GetOrder exchange.GetHistoryOrders