Dieexchange.GetFundings()
Diese Funktion wird verwendet, um die Finanzierungsraten für den laufenden Zeitraum zu ermitteln.
Dieexchange.GetFundings()
Funktion gibt ein Array von {@struct/Funding Funding} Strukturen zurück, wenn die Datenanfrage erfolgreich ist, und gibt einen Nullwert zurück, wenn die Datenanfrage fehlschlägt.
{@struct/Funding Funding}-Array, Nullwert
Auswechselung.GetFundings Ausgleichszahlungen (Symbol)
Der Parametersymbol
wird verwendet, um dieTransaktionssymboloderTransaktionssymbolbereichDie Kommission ist der Auffassung, daß diesymbol
Wenn der Parameter nicht übergeben wird, werden standardmäßig die aktuellen Finanzierungsquoten aller Instrumente im Dimensionsbereich des aktuellen Handelspaares und des Kontraktcodes angefordert.
Symbol falsche String
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-23 00:05:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDC"}]
*/
function main() {
// LPT_USDT.swap 4-hour period
var symbols = ["SOL_USDT.swap", "ETH_USDT.swap", "LTC_USDT.swap", "SOL_USDC.swap", "ETH_USDC.swap", "BTC_USD.swap", "BTC_USDT.quarter", "LPT_USDT.swap"]
for (var symbol of symbols) {
exchange.GetTicker(symbol)
}
var arr = []
var arrParams = ["no param", "LTC_USDT.swap", "USDT.swap", "USD.swap", "USDC.swap", "USDT.futures", "BTC_USDT.quarter"]
for (p of arrParams) {
if (p == "no param") {
arr.push(exchange.GetFundings())
} else {
arr.push(exchange.GetFundings(p))
}
}
var tbls = []
var index = 0
for (var fundings of arr) {
var tbl = {
"type": "table",
"title": arrParams[index],
"cols": ["Symbol", "Interval", "Time", "Rate"],
"rows": [],
}
for (var f of fundings) {
tbl["rows"].push([f.Symbol, f.Interval / 3600000, _D(f.Time), f.Rate * 100 + " %"])
}
tbls.push(tbl)
index++
}
LogStatus(_D(), "\n Requested market types:", symbols, "\n`" + JSON.stringify(tbls) + "`")
}
'''backtest
start: 2024-10-01 00:00:00
end: 2024-10-23 00:05:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDC"}]
'''
import json
def main():
# LPT_USDT.swap 4-hour period
symbols = ["SOL_USDT.swap", "ETH_USDT.swap", "LTC_USDT.swap", "SOL_USDC.swap", "ETH_USDC.swap", "BTC_USD.swap", "BTC_USDT.quarter", "LPT_USDT.swap"]
for symbol in symbols:
exchange.GetTicker(symbol)
arr = []
arrParams = ["no param", "LTC_USDT.swap", "USDT.swap", "USD.swap", "USDC.swap", "USDT.futures", "BTC_USDT.quarter"]
for p in arrParams:
if p == "no param":
arr.append(exchange.GetFundings())
else:
arr.append(exchange.GetFundings(p))
tbls = []
index = 0
for fundings in arr:
tbl = {
"type": "table",
"title": arrParams[index],
"cols": ["Symbol", "Interval", "Time", "Rate"],
"rows": [],
}
for f in fundings:
tbl["rows"].append([f["Symbol"], f["Interval"] / 3600000, _D(f["Time"]), str(f["Rate"] * 100) + " %"])
tbls.append(tbl)
index += 1
LogStatus(_D(), "\n Requested market types:", symbols, "\n`" + json.dumps(tbls) + "`")
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-23 00:05:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"SOL_USDC"}]
*/
void main() {
// LPT_USDT.swap 4-hour period
json arrSymbol = R"([])"_json;
std::string symbols[] = {"SOL_USDT.swap", "ETH_USDT.swap", "LTC_USDT.swap", "SOL_USDC.swap", "ETH_USDC.swap", "BTC_USD.swap", "BTC_USDT.quarter", "LPT_USDT.swap"};
for (const std::string& symbol : symbols) {
exchange.GetTicker(symbol);
arrSymbol.push_back(symbol);
}
std::vector<std::vector<Funding>> arr = {};
std::string arrParams[] = {"no param", "LTC_USDT.swap", "USDT.swap", "USD.swap", "USDC.swap", "USDT.futures", "BTC_USDT.quarter"};
for (const std::string& p : arrParams) {
if (p == "no param") {
arr.push_back(exchange.GetFundings());
} else {
arr.push_back(exchange.GetFundings(p));
}
}
json tbls = R"([])"_json;
int index = 0;
for (int i = 0; i < arr.size(); i++) {
auto fundings = arr[i];
json tbl = R"({
"type": "table",
"cols": ["Symbol", "Interval", "Time", "Rate"],
"rows": []
})"_json;
tbl["title"] = arrParams[index];
for (int j = 0; j < fundings.size(); j++) {
auto f = fundings[j];
// json arrJson = {f.Symbol, f.Interval / 3600000, _D(f.Time), string(f.Rate * 100) + " %"};
json arrJson = {f.Symbol, f.Interval / 3600000, _D(f.Time), f.Rate};
tbl["rows"].push_back(arrJson);
}
tbls.push_back(tbl);
index++;
}
LogStatus(_D(), "\n Requested market types:", arrSymbol.dump(), "\n`" + tbls.dump() + "`");
}
Verwenden Sie das Futures Exchange Objekt, um dieexchange.GetFundings()
Vor dem Aufruf einer Marktfunktion gibt GetFundings nur die Finanzierungsdaten des aktuellen Standard-Handelspaares zurück. Nach dem Aufruf der Marktfunktion gibt es die Finanzierungsdaten aller angeforderten Varianten zurück. Sie können sich auf das folgende Testbeispiel beziehen:
Für Futures-Börsen, die keine Chargenanfragen von Finanzierungsraten unterstützen, wenn diesymbol
Parameter wird als Abfragebereich angegeben, z. B.:USDT.swap
oder dersymbol
Wenn der Parameter nicht übergeben wird, wird die Schnittstelle einen Fehler melden.GetFundings()
Funktion mit dieser Art von Futures Exchange Objekt, müssen Sie diesymbol
Parameter als spezifische Dauervertragsart, um die aktuellen Finanzierungsquoten des Typs abzufragen.
Dieexchange.GetFundings()
Die Funktion unterstützt echte Handels- und Backtesting-Systeme.
Börsen, die keine Chargenakquisition von Finanzierungsraten unterstützen: Futures_Bitget, Futures_OKX, Futures_MEXC, Futures_Deribit, Futures_Crypto.symbol
Parameter mit dem spezifischen Symbolcode, beispielsweise:ETH_USDT.swap
.
Dieexchange.GetFundings()
Funktion:
Funktionsname | Nicht unterstützte Spotbörsen | Nicht abgesicherte Futures-Börsen |
---|---|---|
GetFundings | – | Futures_DigiFinex |
- Das ist nicht wahr.
exchange.GetContractType Netzeinstellungen