Binance erhält eine einmalige Liste aller Vertragsholdungen und formatiert sie als Erfinder-Positionsstruktur-Array

Schriftsteller:Der Sommer schlägt dich nicht., Datum: 2021-09-11 11:34:46
Tags:


// 从持仓列表中获取特定币种的持仓
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;
}

Mehr

Eth8888ReferenceError:'main' ist nicht definiert

[Übersetzt von Exodus]Das ist sehr nützlich, danke!

LJG658658Wie kommt es, dass du meine Kommentare nicht siehst?

LJG658658Ich verstehe nicht, ist das der Platz, um zu sehen, wie viele Positionen in dieser Währung auf der Plattform geöffnet sind?

Leichte WolkenIch brauche sie, ich will sie!

Ein scharfer MannEiner von ihnen, der optimiert werden kann, ist ein Multi-Space-Binary-Holding.

Der Sommer schlägt dich nicht.Die gesamte Haltbarkeit der Binance-U-Botschaft

Der Sommer schlägt dich nicht.Es ist jetzt mehr als nur eine zweiseitige Lagerhaltung.