Binance lấy một lần danh sách tất cả các hợp đồng nắm giữ và định dạng thành nhà phát minh

Tác giả:Mùa hè không đánh bạn., Ngày: 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;
}

Thêm nữa

eth8888ReferenceError:'main' is not defined Đặt câu trả lời

Exodus [Tiêu dịch chiến lược]Rất hữu ích, cảm ơn!

LJG658658Tại sao bạn không nhìn thấy bình luận của tôi?

LJG658658Tôi không hiểu, đây là khoảng trống để xem tất cả các giao dịch trên nền tảng cho đồng tiền này?

Những đám mây nhẹĐúng là cần, rất cảm ơn!!!!

+Một, có thể tối ưu hóa, nhiều không gian hai chiều giữ

Mùa hè không đánh bạn.Tất cả các hợp đồng tại Binance U

Mùa hè không đánh bạn.Có nhiều không gian và hai chiều.