দ্যexchange.GetOrders()
এই ফাংশনটি অপ্রত্যাশিত অর্ডার পেতে ব্যবহৃত হয়।
দ্যexchange.GetOrders()
ফাংশন {@struct/Order Order} স্ট্রাকচারগুলির একটি অ্যারে ফেরত দেয় যদি ডেটা অনুরোধ সফল হয়, এবং যদি ডেটা অনুরোধ ব্যর্থ হয় তবে এটি শূন্য মান ফেরত দেয়।
{@struct/Order Order} অ্যারে, শূন্য মান
বিনিময়.GetOrders ((() exchange.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 হয় এবং চুক্তির কোডটি swap হয়, তাহলে সমস্ত USDT-মার্জিনযুক্ত চিরস্থায়ী চুক্তি অনুসন্ধান করা হবে। এটি কল করার সমতুল্যGetOrders("USDT.swap") |
ফিউচার | ট্রেডিং টাইপ উল্লেখ করুন, প্রতীক প্যারামিটার হলঃ |
একটি নির্দিষ্ট বিটিসির জন্য ইউএসডিটি ভিত্তিক চিরস্থায়ী চুক্তি অনুসন্ধান করুন | ফিউচার এক্সচেঞ্জ অবজেক্টের জন্য প্যারামিটার প্রতীক বিন্যাস হলঃট্রেডিং জুটিএবংচুক্তির কোডFMZ প্ল্যাটফর্ম দ্বারা সংজ্ঞায়িত, চিহ্ন দ্বারা পৃথক". . |
ফিউচার | ট্রেডিং পণ্যের পরিসীমা উল্লেখ করুন, প্রতীক পরামিতি হলঃ |
সমস্ত ইউএসডিটি ভিত্তিক স্থায়ী চুক্তি অনুসন্ধান করুন | - |
বিকল্প সমর্থনকারী ফিউচার এক্সচেঞ্জ | প্রতীক পরামিতি পাস করবেন না | বর্তমান ট্রেডিং জোড়া মাত্রা পরিসীমা মধ্যে সমস্ত বিকল্প চুক্তি অনুসন্ধান | যদি বর্তমান ট্রেডিং জোড়াটি BTC_USDT হয়, তবে চুক্তিটি একটি বিকল্প চুক্তিতে সেট করা হয়, উদাহরণস্বরূপ, Binance বিকল্প চুক্তিঃ BTC-240108-40000-C |
বিকল্প সমর্থনকারী ফিউচার এক্সচেঞ্জ | নির্দিষ্ট ট্রেডিং পণ্য নির্দিষ্ট করুন | নির্দিষ্ট বিকল্প চুক্তির অনুসন্ধান করুন | উদাহরণস্বরূপ, বিন্যান্স ফিউচার এক্সচেঞ্জের জন্য, প্রতীক পরামিতি হলঃ BTC_USDT.BTC-240108-40000-C |
বিকল্প সমর্থনকারী ফিউচার এক্সচেঞ্জ | ট্রেডিং প্রোডাক্টের পরিসীমা উল্লেখ করুন, প্রতীক প্যারামিটারটি হলঃ |
সমস্ত ইউএসডিটি ভিত্তিক বিকল্প চুক্তি অনুসন্ধান করুন | - |
এ বিষয়েGetOrders
ফাংশন, ফিউচার এক্সচেঞ্জ বস্তু অনুসন্ধান
পরিমাপ পরিসীমা নিম্নরূপ সংক্ষিপ্ত করা হয়ঃ
প্রতীক পরামিতি | অনুরোধ পরিসীমা সংজ্ঞা | মন্তব্য |
---|---|---|
USDT.swap | ইউএসডিটি ভিত্তিক চিরস্থায়ী চুক্তি পরিসীমা। | জন্য |
এক্সচেঞ্জ এপিআই ইন্টারফেসে সমর্থিত নয় এমন মাত্রা, একটি ত্রুটি রিপোর্ট করা হবে এবং একটি শূন্য মান ফিরে আসবে যখন ডাকছে। ইউএসডিটি ভবিষ্যৎ ইউএসডিটি ভিত্তিক ডেলিভারি চুক্তির পরিসীমা। ∙ ∙ ইউএসডি.সোয়াপ ∙ ∙ ∙ মুদ্রা ভিত্তিক স্থায়ী চুক্তি। ইউএসডি.ভবিষ্যৎ। মুদ্রা ভিত্তিক ডেলিভারি পরিসীমা চুক্তি। ইউএসডিটি.অপশন ইউএসডিটি-ভিত্তিক বিকল্প চুক্তি পরিসীমা। ইউএসডি.অপশন। মুদ্রা ভিত্তিক বিকল্প চুক্তি পরিসীমা। USDT.futures_combo। CFD সমন্বয়ের পরিসীমা। ফিউচার_ডেরিবিট এক্সচেঞ্জ। ইউএসডি.ফ্যুচারস_এফএফ। মিশ্র মার্জিন ডেলিভারি চুক্তির পরিসর। ফিউচারস_ক্রাকেন এক্সচেঞ্জ। ইউএসডি.সোয়াপ_পিএফ। মিশ্র মার্জিন স্থায়ী চুক্তির পরিসীমা। ∙∙ ফিউচার_ক্র্যাকেন এক্সচেঞ্জ ∙
যখন অ্যাকাউন্ট বিনিময় বস্তু দ্বারা প্রতিনিধিত্ব করা হয়exchange
এর মধ্যে কোন অপেক্ষমান অর্ডার নেইঅনুসন্ধান পরিসীমাঅথবানির্দিষ্ট ট্রেডিং ইনস্ট্রুমেন্ট(একটি অ্যাক্টিভ অর্ডার একটি অসম্পূর্ণ অবস্থায়), এই ফাংশন কলিং একটি খালি অ্যারে ফেরত দেয়, অর্থাৎঃ[]
.
নিম্নলিখিত এক্সচেঞ্জগুলির জন্য বর্তমানে অসম্পূর্ণ অর্ডারগুলি অনুসন্ধান করার সময় ইনস্ট্রুমেন্ট প্যারামিটারে পাস করা প্রয়োজন। এই এক্সচেঞ্জগুলির সাথে গেটঅর্ডার্স ফাংশনটি কল করার সময়, যদি ইনস্ট্রুমেন্ট প্যারামিটারটি পাস না করা হয় তবে কেবলমাত্র বর্তমান ইনস্ট্রুমেন্টের অসম্পূর্ণ অর্ডারগুলি অনুরোধ করা হয়, সমস্ত ইনস্ট্রুমেন্টের অসম্পূর্ণ অর্ডারগুলি নয় (কারণ এক্সচেঞ্জ ইন্টারফেস এটি সমর্থন করে না) ।
জাইফ, এমইএক্সসি, এলব্যাঙ্ক, কর্বিত, কয়েন, বিটমার্ট, বিথাম্ব, বিটফ্লায়ার, বিগোন।
এক্সচেঞ্জ যে সমর্থন করে নাexchange.GetOrders()
ফাংশনঃ
ফাংশনের নাম | সমর্থিত না হওয়া স্পট এক্সচেঞ্জ | সমর্থিত নয় এমন ফিউচার এক্সচেঞ্জ |
---|---|---|
অর্ডার পান | – | ফিউচার_বিবক্স |
{@struct/Order Order}, {@fun/Trade/exchange.GetOrder exchange.GetOrder}, {@fun/Trade/exchange.GetHistoryOrders exchange.GetHistoryOrders}
exchange.GetOrder exchange.GetHistoryOrders