দ্যexchange.GetPositions()
অবস্থান তথ্য পেতে ফাংশন ব্যবহার করা হয়;GetPositions()
ফাংশনটি এক্সচেঞ্জ অবজেক্ট {@var/EXCHANGE exchange} এর সদস্য ফাংশন।GetPositions()
ফাংশন বিনিময় বস্তুর সাথে আবদ্ধ বিনিময় অ্যাকাউন্টের অবস্থান তথ্য পায়exchange
. সদস্যদের কার্যাবলীর উদ্দেশ্য (পদ্ধতি)exchange
বস্তুর শুধুমাত্র সম্পর্কিত হয়exchange
এবং এখানে পুনরাবৃত্তি হবে না।
দ্যexchange.GetPositions()
ফাংশন {@struct/Position Position} স্ট্রাকচারগুলির একটি অ্যারে ফেরত দেয় যদি তথ্যের অনুরোধ সফল হয়, এবং এটি তথ্যের অনুরোধ ব্যর্থ হলে শূন্য মান ফেরত দেয়।
{@struct/Position Position} অ্যারে, শূন্য মান
বিনিময়.GetPositions ((() exchange.GetPositions (প্রতীক)
প্যারামিটারsymbol
সেট করতে ব্যবহৃত হয়ট্রেডিং সিম্বলঅথবাট্রেডিং সিম্বল পরিসীমাজিজ্ঞাসাবাদ করা হবে।
যদিsymbol
প্যারামিটারটি পাস করা না হলে, ডিফল্টরূপে বর্তমান ট্রেডিং জোড়া এবং চুক্তির কোডের মাত্রা পরিসরের সমস্ত প্রতীকগুলির অবস্থান তথ্য অনুরোধ করা হয়।
প্রতীক মিথ্যা স্ট্রিং
/*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) {
exchange.CreateOrder(symbol, "buy", -1, 1)
exchange.CreateOrder(symbol, "sell", -1, 1)
}
var defaultPositions = exchange.GetPositions()
var swapPositions = exchange.GetPositions("USDT.swap")
var futuresPositions = exchange.GetPositions("USDT.futures")
var btcUsdtSwapPositions = exchange.GetPositions("BTC_USDT.swap")
var tbls = []
var arr = [defaultPositions, swapPositions, futuresPositions, btcUsdtSwapPositions]
var tblDesc = ["defaultPositions", "swapPositions", "futuresPositions", "btcUsdtSwapPositions"]
for (var index in arr) {
var positions = arr[index]
var tbl = {type: "table", title: tblDesc[index], cols: ["Symbol", "MarginLevel", "Amount", "FrozenAmount", "Price", "Profit", "Type", "ContractType", "Margin"], rows: [] }
for (var pos of positions) {
tbl.rows.push([pos.Symbol, pos.MarginLevel, pos.Amount, pos.FrozenAmount, pos.Price, pos.Profit, pos.Type, pos.ContractType, pos.Margin])
}
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:
exchange.CreateOrder(symbol, "buy", -1, 1)
exchange.CreateOrder(symbol, "sell", -1, 1)
defaultPositions = exchange.GetPositions()
swapPositions = exchange.GetPositions("USDT.swap")
futuresPositions = exchange.GetPositions("USDT.futures")
btcUsdtSwapPositions = exchange.GetPositions("BTC_USDT.swap")
tbls = []
arr = [defaultPositions, swapPositions, futuresPositions, btcUsdtSwapPositions]
tblDesc = ["defaultPositions", "swapPositions", "futuresPositions", "btcUsdtSwapPositions"]
for index in range(len(arr)):
positions = arr[index]
tbl = {"type": "table", "title": tblDesc[index], "cols": ["Symbol", "MarginLevel", "Amount", "FrozenAmount", "Price", "Profit", "Type", "ContractType", "Margin"], "rows": []}
for pos in positions:
tbl["rows"].append([pos["Symbol"], pos["MarginLevel"], pos["Amount"], pos["FrozenAmount"], pos["Price"], pos["Profit"], pos["Type"], pos["ContractType"], pos["Margin"]])
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) {
exchange.CreateOrder(symbol, "buy", -1, 1);
exchange.CreateOrder(symbol, "sell", -1, 1);
}
auto defaultPositions = exchange.GetPositions();
auto swapPositions = exchange.GetPositions("USDT.swap");
auto futuresPositions = exchange.GetPositions("USDT.futures");
auto btcUsdtSwapPositions = exchange.GetPositions("BTC_USDT.swap");
json tbls = R"([])"_json;
std::vector<std::vector<Position>> arr = {defaultPositions, swapPositions, futuresPositions, btcUsdtSwapPositions};
std::string tblDesc[] = {"defaultPositions", "swapPositions", "futuresPositions", "btcUsdtSwapPositions"};
for (int index = 0; index < arr.size(); index++) {
auto positions = arr[index];
json tbl = R"({
"type": "table",
"cols": ["Symbol", "MarginLevel", "Amount", "FrozenAmount", "Price", "Profit", "Type", "ContractType", "Margin"],
"rows": []
})"_json;
tbl["title"] = tblDesc[index];
for (const auto& pos : positions) {
json arrJson = R"([])"_json;
arrJson.push_back(pos.Symbol);
arrJson.push_back(pos.MarginLevel);
arrJson.push_back(pos.Amount);
arrJson.push_back(pos.FrozenAmount);
arrJson.push_back(pos.Price);
arrJson.push_back(pos.Profit);
arrJson.push_back(pos.Type);
arrJson.push_back(pos.ContractType);
arrJson.push_back(pos.Margin);
tbl["rows"].push_back(arrJson);
}
tbls.push_back(tbl);
}
LogStatus(_D(), "\n", "`" + tbls.dump() + "`");
return;
}
একাধিক বিভিন্ন ট্রেডিং জোড়া এবং চুক্তি কোডের জন্য বাজার অর্ডার স্থাপন করার জন্য ফিউচার এক্সচেঞ্জ বস্তু ব্যবহার করুন। একাধিক উপায়ে অবস্থান অনুসন্ধান করুন।
ক্রিপ্টোকারেন্সি ফিউচার চুক্তিগুলি ক্রিপ্টোকারেন্সি স্পট থেকে পৃথক, যার কেবল অবস্থানটির যৌক্তিক ধারণা রয়েছে। এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের সিস্টেমে, নির্দিষ্ট ধরণের ক্রিপ্টোকারেন্সি ফিউচার চুক্তিগুলি দ্বারা চিহ্নিত করা হয়ট্রেডিং জোড়া, চুক্তির কোড{@fun/Account/exchange.SetCurrency exchange.SetCurrency}, {@fun/Futures/exchange.SetContractType exchange.SetContractType} ফাংশনগুলো দেখুন।
এ বিষয়েGetPositions
ফাংশন, প্রতীক পরামিতি ব্যবহারের দৃশ্যাবলী নিম্নরূপ সংক্ষিপ্ত করা হয়ঃ
এক্সচেঞ্জ অবজেক্ট শ্রেণীবিভাগ | প্রতীক পরামিতি | কোয়েরি পরিধি | মন্তব্য |
---|---|---|---|
ফিউচার | প্রতীক পরামিতি পাস করবেন না | বর্তমান ট্রেডিং জোড়া এবং চুক্তি কোড মাত্রা পরিসীমা মধ্যে সমস্ত ট্রেডিং পণ্য অনুসন্ধান | যদি বর্তমান ট্রেডিং জোড়াটি BTC_USDT হয় এবং চুক্তির কোডটি swap হয়, তাহলে USDT-ভিত্তিক সকল চিরস্থায়ী চুক্তি অনুসন্ধান করা হবে। এটি কল করার সমতুল্যGetPositions("USDT.swap") |
ফিউচার | ট্রেডিং প্রোডাক্টটি নির্দিষ্ট করুন, প্রতীক প্যারামিটারটি হলঃ |
একটি নির্দিষ্ট বিটিসির ইউএসডিটি ভিত্তিক চিরস্থায়ী চুক্তি অনুসন্ধান করুন | ফিউচার এক্সচেঞ্জ অবজেক্টের জন্য প্যারামিটার প্রতীকের বিন্যাস হলঃট্রেডিং জুটিএবংচুক্তির কোডFMZ প্ল্যাটফর্ম দ্বারা সংজ্ঞায়িত, চিহ্ন দ্বারা পৃথক". . |
ফিউচার | ট্রেডিং পণ্যের পরিসীমা উল্লেখ করুন, প্রতীক পরামিতি হলঃ |
সমস্ত ইউএসডিটি ভিত্তিক স্থায়ী চুক্তি অনুসন্ধান করুন | - |
বিকল্প সমর্থনকারী ফিউচার এক্সচেঞ্জ | প্রতীক পরামিতি পাস করবেন না | বর্তমান ট্রেডিং জোড়া মাত্রা পরিসীমা মধ্যে সমস্ত বিকল্প চুক্তি অনুসন্ধান | যদি বর্তমান ট্রেডিং জোড়াটি BTC_USDT হয়, তবে চুক্তিটি একটি বিকল্প চুক্তিতে সেট করা হয়, উদাহরণস্বরূপ, Binance বিকল্প চুক্তিঃ BTC-240108-40000-C |
বিকল্প সমর্থনকারী ফিউচার এক্সচেঞ্জ | নির্দিষ্ট ট্রেডিং পণ্য উল্লেখ করুন | নির্দিষ্ট বিকল্প চুক্তির অনুসন্ধান করুন | উদাহরণস্বরূপ, বিন্যান্স ফিউচার এক্সচেঞ্জের জন্য, প্রতীক পরামিতি হলঃ BTC_USDT.BTC-240108-40000-C |
বিকল্প সমর্থনকারী ফিউচার এক্সচেঞ্জ | ট্রেডিং প্রোডাক্টের পরিসীমা উল্লেখ করুন, প্রতীক প্যারামিটারটি হলঃ |
সমস্ত ইউএসডিটি ভিত্তিক বিকল্প চুক্তি অনুসন্ধান করুন | - |
এ বিষয়েGetPositions
ফাংশন, ফিউচার এক্সচেঞ্জ অবজেক্ট
প্রশ্নের মাত্রা পরিসীমা নিম্নরূপ সংক্ষিপ্ত করা হয়ঃ
প্রতীক পরামিতি | অনুরোধের পরিসরের সংজ্ঞা | মন্তব্য |
---|---|---|
USDT.swap | ইউএসডিটি ভিত্তিক চিরস্থায়ী চুক্তি পরিসীমা। | জন্য |
এক্সচেঞ্জ এপিআই ইন্টারফেস দ্বারা সমর্থিত নয় এমন মাত্রা, একটি ত্রুটি রিপোর্ট করা হবে এবং একটি শূন্য মান ফিরে আসবে যখন ডাকছে।
ইউএসডিটি ভবিষ্যৎ ইউএসডিটি ভিত্তিক ডেলিভারি চুক্তির পরিসীমা।
ইউএসডি.সোয়াপ। মুদ্রাভিত্তিক চিরস্থায়ী মুদ্রার পরিধি চুক্তি।
ইউএসডি.ভবিষ্যত। মুদ্রা ভিত্তিক বিতরণের পরিধি চুক্তি।
ইউএসডিটি.অপশন ইউএসডিটি-ভিত্তিক বিকল্প চুক্তি পরিসীমা।
ইউএসডি.অপশন। মুদ্রা ভিত্তিক বিকল্প চুক্তি পরিসীমা।
USDT.futures_combo। CFD সমন্বয়ের পরিসীমা। ফিউচার_ডেরিবিট এক্সচেঞ্জ।
USD.futures_ff। মিশ্র মার্জিন ডেলিভারি চুক্তির পরিধি। ফিউচারস_ক্রাকেন এক্সচেঞ্জ।
ইউএসডি.সোয়াপ_পিএফ মিশ্র মার্জিন চিরস্থায়ী চুক্তি পরিসীমা। ফিউচারস_ক্রাকেন এক্সচেঞ্জ।
সামঞ্জস্যপূর্ণexchange.GetPosition()
কল করুন,GetPosition
ঠিক একইGetPositions
.
যখন অ্যাকাউন্ট বিনিময় বস্তু দ্বারা প্রতিনিধিত্ব করা হয়exchange
কোন পজিশন নেইঅনুসন্ধান পরিসীমাঅথবানির্দিষ্ট ট্রেডিং ইনস্ট্রুমেন্ট,exchange.GetPositions()
ফাংশন একটি খালি অ্যারে ফেরত দেয়, উদাহরণস্বরূপঃ[]
.
{@struct/Position Position}, {@fun/Account/exchange.SetCurrency exchange.SetCurrency}, {@fun/Futures/exchange.SetContractType exchange.SetContractType}
অ্যাকাউন্ট exchange.SetMarginLevel