Binance obtient une fois sur place une liste de tous les contrats détenus et formatée en arithmétique de structure de position des inventeurs

Auteur:L'été ne vous frappe pas., Date: 11 septembre 2021 à 11 h 34 min 46 s
Les étiquettes:


// 从持仓列表中获取特定币种的持仓
function getPositionBySymbol(positions, symbol) {
    var index = -1;

    if (positions && positions.length > 0) {
        for (var i = 0; i < positions.length; i++) {
            if (positions[i][0].Symbol == symbol) {
                index = i;
                break;
            }
        }
    }

    return index == -1 ? null : positions[index];
}

// 获取所有持仓列表
function getAllPositionInBinance() {
    var ret = exchange.IO("api", "GET", "/fapi/v2/account");
    var positions = [];
    var i = 0;

    if (!ret || !ret.positions) {
        return null;
    }
    // 获取所有持仓
    for (i = 0; i < ret.positions.length; i++) {
        if (ret.positions[i].positionAmt != 0 && ret.positions[i].symbol.endsWith("USDT")) {
            positions.push([{
                Symbol: ret.positions[i].symbol.substring(0, ret.positions[i].symbol.lastIndexOf("USDT")) + "_USDT",
                Amount: Number(Math.abs(ret.positions[i].positionAmt)),
                FrozenAmount: 0,
                Price: Number(ret.positions[i].entryPrice),
                Profit: Number(ret.positions[i].unrealizedProfit),
                Type: ret.positions[i].positionAmt < 0 ? PD_SHORT : PD_LONG,
                ContractType: "swap",
                Margin: Number(ret.positions[i].positionInitialMargin),
                LevelRate: Number(ret.positions[i].leverage)
            }]);
        }
    }
    // 合并相同币种的持仓(同一币种,多空双向持仓)
    if (positions.length >= 2) {
        for (i = 0; i < positions.length; i++) {
            for (var j = i + 1; j < positions.length; j++) {
                if (positions[i][0].Symbol == positions[j][0].Symbol) {
                    positions[i].push(JSON.parse(JSON.stringify(positions[j][0])));
                    positions.splice(j, 1);                     // 删除相同币种
                    break;
                }
            }
        }
    }

    return positions;
}

Plus de

et8888Débogage suggéré ReferenceError:'main' n'est pas défini

Le film a été réalisé par le réalisateur et réalisateur de la série.C'est très bien, merci!

LJG658658Comment ne pas voir mes commentaires?

LJG658658Je ne comprends pas, est-ce que c'est un espace pour voir toutes les positions ouvertes de cette monnaie sur la plateforme?

Des nuages légersJ'avais besoin de ça, merci!!!

Le plus durSi vous avez un, vous pouvez l'optimiser, le stockage multi-espaces bidirectionnel

L'été ne vous frappe pas.Tous les titres détenus par Binance U

L'été ne vous frappe pas.C'est déjà un stockage à double sens.