Elexchange.GetFundings()
La función se utiliza para obtener los datos de las tasas de financiación del período en curso.
Elexchange.GetFundings()
función devuelve un conjunto de estructuras {@struct/Funding Funding} cuando la solicitud de datos es exitosa, y devuelve un valor nulo cuando la solicitud de datos falla.
{@struct/Funding Funding} matriz, valor nulo
En cambio.GetFundings ((() intercambio.GetFundings (símbolo)
El parámetrosymbol
se utiliza para establecer elsímbolo de la transaccióno bienrango de símbolos de transacciónEn el caso de lossymbol
Si el parámetro no se pasa, se solicitarán por defecto los datos de la tasa de financiación actual de todos los instrumentos en el rango de dimensiones del par de negociación actual y el código del contrato.
el símbolo falsos la cuerda
/*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() + "`");
}
Utilice el objeto de intercambio de futuros para llamar a laexchange.GetFundings()
Antes de llamar a cualquier función de mercado, GetFundings solo devuelve los datos de financiamiento del par de operaciones por defecto actual. Después de llamar a la función de mercado, devuelve los datos de financiamiento de todas las variedades solicitadas. Puede consultar el siguiente ejemplo de prueba:
Para los intercambios de futuros que no admiten la consulta por lotes de datos de tasas de financiación, si elsymbol
el parámetro se especifica como el rango de consulta, por ejemplo:USDT.swap
o elsymbol
Si el parámetro no se pasa, la interfaz informará un error.GetFundings()
función utilizando este tipo de objeto de intercambio de futuros, debe especificar elsymbol
Parámetro como tipo específico de contrato perpetuo para consultar los datos actuales de tasas de financiación del tipo.
Elexchange.GetFundings()
La función soporta sistemas reales de trading y backtesting.
Intercambios que no admiten la adquisición por lotes de datos de tasas de financiación: Futures_Bitget, Futures_OKX, Futures_MEXC, Futures_Deribit, Futures_Crypto.symbol
Parámetro con el código de símbolo específico, por ejemplo:ETH_USDT.swap
.
Los intercambios que no apoyan laexchange.GetFundings()
Función:
Nombre de la función | Intercambios al contado sin soporte | Exchanges de futuros no respaldados |
---|---|---|
Obtener fondos | – | Los futuros_DigiFinex |
¿Qué es lo que está pasando?
exchange.GetContractType Configuración de la red