Binance mendapatkan daftar semua kontrak yang dipegang sekaligus dan diformat sebagai Array Struktur Posisi Penemu

Penulis:Musim panas tidak bisa mengalahkanmu., Tanggal: 2021-09-11 11:34:46
Tag:


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

Lebih banyak

Eth8888ReferenceError:'main' is not defined Menanyakan jawaban

[Sunting]Sangat berguna, terima kasih!

LJG658658Bagaimana Anda tidak melihat komentar saya?

LJG658658Saya tidak mengerti, apakah ini adalah ruang untuk melihat semua posisi yang dibuka di platform untuk mata uang ini?

Awan ringanSaya sangat membutuhkannya, terimakasih!!!!

Kekerasan PlusYang pertama, Anda dapat mengoptimalkannya, banyak ruang kosong, dua arah penyimpanan.

Musim panas tidak bisa mengalahkanmu.Seluruh kepemilikan kontrak Binance U

Musim panas tidak bisa mengalahkanmu.Sudah banyak ruang kosong di dua arah.