Формирование трейдов api-bybit на node js
Товарищи разработчики! Я уже всю голову себе сломал с этим api-bybit. Вообщем ситуация такая: от bybit я могу получить вот такие массивы с объектами
const executionOrders = [{ // закрыли позицию #3
symbol: 'BTCUSDT',
orderId: 'e272745c-2b66-431a-828b-3cde0f6e55e1',
orderLinkId: '',
side: 'Buy',
orderPrice: '71187.10',
orderQty: '0.004',
leavesQty: '0.000',
orderType: 'Market',
stopOrderType: 'StopLoss',
execFee: '0.15410868',
execId: '9a059452-41ae-5fab-bc5c-b907debf627b',
execPrice: '70049.40',
execQty: '0.004',
execType: 'Trade',
execValue: '280.1976',
execTime: '1710140868472',
isMaker: false,
feeRate: '0.00055',
tradeIv: '',
markIv: '',
markPrice: '69982.11',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.004',
seq: 140114536150,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '633b6eb8-f3fb-4193-9d4d-22aca227d6f9',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.11577085',
execId: '3a6af072-142c-4997-bc92-b17e9a3a261f',
execPrice: '68999.94',
execQty: '0.004',
execType: 'Funding',
execValue: '275.99976',
execTime: '1710115200000',
isMaker: false,
feeRate: '-0.00041946',
tradeIv: '',
markIv: '',
markPrice: '68999.94',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 139955557786,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '31474db8-6d3e-45ff-a33f-08380d646880',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.18191681',
execId: 'ec9f3b33-1f0b-4fbb-8523-ca0f143375c7',
execPrice: '69253.10',
execQty: '0.004',
execType: 'Funding',
execValue: '277.0124',
execTime: '1710086400000',
isMaker: false,
feeRate: '-0.00065671',
tradeIv: '',
markIv: '',
markPrice: '69253.10',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 139801080128,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '0d79dbee-85b2-44d3-b969-2ea13e89342e',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.16328872',
execId: '04e731f7-325f-4f98-9758-d9c8a28e2d37',
execPrice: '69427.84',
execQty: '0.004',
execType: 'Funding',
execValue: '277.71136',
execTime: '1710057600000',
isMaker: false,
feeRate: '-0.00058798',
tradeIv: '',
markIv: '',
markPrice: '69427.84',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 139642142978,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '02bd857f-77d6-4887-b889-32253959da71',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.09060179',
execId: '4dac234d-7b93-4a1c-ad55-dc446e9d4bc8',
execPrice: '68370.46',
execQty: '0.004',
execType: 'Funding',
execValue: '273.48184',
execTime: '1710028800000',
isMaker: false,
feeRate: '-0.00033129',
tradeIv: '',
markIv: '',
markPrice: '68370.46',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 139478873811,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '047e9e15-a458-4821-b77b-b93e18abc896',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.07768887',
execId: '61ef5c2d-8451-4406-af49-240eb85d60b5',
execPrice: '68335.16',
execQty: '0.004',
execType: 'Funding',
execValue: '273.34064',
execTime: '1710000000000',
isMaker: false,
feeRate: '-0.00028422',
tradeIv: '',
markIv: '',
markPrice: '68335.16',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 139315258611,
createType: ''
},
{ // открыли позицию #3
symbol: 'BTCUSDT',
orderId: '3945cd57-9d76-49f5-9114-ffdd63801d6b',
orderLinkId: '',
side: 'Sell',
orderPrice: '66134.70',
orderQty: '0.004',
leavesQty: '0.000',
orderType: 'Market',
stopOrderType: 'UNKNOWN',
execFee: '0.15058824',
execId: 'd4afea48-bee9-5440-98cf-7caae8d616e8',
execPrice: '68449.20',
execQty: '0.004',
execType: 'Trade',
execValue: '273.7968',
execTime: '1709973696984',
isMaker: false,
feeRate: '0.00055',
tradeIv: '',
markIv: '',
markPrice: '68449.20',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 139163327034,
createType: ''
},
{ // закрыли позицию #2
symbol: 'BTCUSDT',
orderId: '87431f70-a687-4e24-b79e-38e9c1a96c97',
orderLinkId: '',
side: 'Buy',
orderPrice: '72270.00',
orderQty: '0.003',
leavesQty: '0.000',
orderType: 'Market',
stopOrderType: 'StopLoss',
execFee: '0.11456577',
execId: '7337f6b0-0ca5-55eb-9f8d-5c1481228a63',
execPrice: '69433.80',
execQty: '0.003',
execType: 'Trade',
execValue: '208.3014',
execTime: '1709911680146',
isMaker: false,
feeRate: '0.00055',
tradeIv: '',
markIv: '',
markPrice: '69173.42',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.003',
seq: 138774811607,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '61c5255c-86f2-4043-9726-307869ff0115',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.08249354',
execId: '2ca20065-5d61-4a8d-8a24-543a759c408a',
execPrice: '67317.49',
execQty: '0.003',
execType: 'Funding',
execValue: '201.95247',
execTime: '1709884800000',
isMaker: false,
feeRate: '-0.00040848',
tradeIv: '',
markIv: '',
markPrice: '67317.49',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 138600481201,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '3697ec00-012c-4e42-ba2f-07816944fd4a',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.0719326',
execId: '9e451211-c568-471f-aee9-3049a289846b',
execPrice: '66858.70',
execQty: '0.003',
execType: 'Funding',
execValue: '200.5761',
execTime: '1709856000000',
isMaker: false,
feeRate: '-0.00035863',
tradeIv: '',
markIv: '',
markPrice: '66858.70',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 138433545699,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '81b09621-8ac9-4578-a433-abae144998af',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.10157784',
execId: 'd16f4f61-134f-450c-9c38-c7e8aa9a73d4',
execPrice: '67312.00',
execQty: '0.003',
execType: 'Funding',
execValue: '201.936',
execTime: '1709827200000',
isMaker: false,
feeRate: '-0.00050302',
tradeIv: '',
markIv: '',
markPrice: '67312.00',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 138240380773,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: 'f823714a-8afc-4f5e-8fc5-4146f6af0680',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.04785519',
execId: 'd707a273-0d3b-4425-8238-354e14f18735',
execPrice: '66443.40',
execQty: '0.003',
execType: 'Funding',
execValue: '199.3302',
execTime: '1709798400000',
isMaker: false,
feeRate: '-0.00024008',
tradeIv: '',
markIv: '',
markPrice: '66443.40',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 138034139408,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '36c372ee-cb2a-4b6f-b4cf-521219420354',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.05459724',
execId: 'b2b5e2c6-54c0-47cf-a7bf-45507137520d',
execPrice: '66113.57',
execQty: '0.003',
execType: 'Funding',
execValue: '198.34071',
execTime: '1709769600000',
isMaker: false,
feeRate: '-0.00027527',
tradeIv: '',
markIv: '',
markPrice: '66113.57',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 137848200672,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: 'a0c499e8-85b8-4cb0-bd8d-a76642b3b37a',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.09558571',
execId: '5c028208-5867-4964-a518-0918057f4e30',
execPrice: '66523.10',
execQty: '0.003',
execType: 'Funding',
execValue: '199.5693',
execTime: '1709740800000',
isMaker: false,
feeRate: '-0.00047896',
tradeIv: '',
markIv: '',
markPrice: '66523.10',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 137669059081,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: 'aae00316-dd38-461a-8cf6-e33a8c5f50bc',
orderLinkId: '',
side: 'Sell',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '-0.04849651',
execId: '7e7f3a83-130e-4799-a08a-f88ea7d20c8b',
execPrice: '66760.99',
execQty: '0.003',
execType: 'Funding',
execValue: '200.28297',
execTime: '1709712000000',
isMaker: false,
feeRate: '-0.00024214',
tradeIv: '',
markIv: '',
markPrice: '66760.99',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 137441718415,
createType: ''
},
{ // открыли позицию #2
symbol: 'BTCUSDT',
orderId: '145bac70-1078-471c-9bcf-8ee806124254',
orderLinkId: '',
side: 'Sell',
orderPrice: '65700.00',
orderQty: '0.003',
leavesQty: '0.000',
orderType: 'Limit',
stopOrderType: 'UNKNOWN',
execFee: '0.03942',
execId: 'c31242ee-970a-5fc2-a85d-c769df449632',
execPrice: '65700.00',
execQty: '0.003',
execType: 'Trade',
execValue: '197.1',
execTime: '1709702568204',
isMaker: true,
feeRate: '0.0002',
tradeIv: '',
markIv: '',
markPrice: '63744.78',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 137376765758,
createType: ''
},
{ // закрыли позицию #1
symbol: 'BTCUSDT',
orderId: 'db87dd97-ed02-4306-ba43-ae57018001bb',
orderLinkId: '',
side: 'Sell',
orderPrice: '63576.70',
orderQty: '0.011',
leavesQty: '0.000',
orderType: 'Market',
stopOrderType: 'UNKNOWN',
execFee: '0.40488294',
execId: '16acefad-ef5c-5629-a0f1-33d0b039a525',
execPrice: '66922.80',
execQty: '0.011',
execType: 'Trade',
execValue: '736.1508',
execTime: '1709640388082',
isMaker: false,
feeRate: '0.00055',
tradeIv: '',
markIv: '',
markPrice: '66921.43',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.011',
seq: 136867774148,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: 'a89deeba-2b77-44af-a85b-96f8d3127cbb',
orderLinkId: '',
side: 'Buy',
orderPrice: '0.00',
orderQty: '0.000',
leavesQty: '0.000',
orderType: 'UNKNOWN',
stopOrderType: 'UNKNOWN',
execFee: '0.82174405',
execId: '77f0a2be-5b6f-4a98-bd62-890fdb88139e',
execPrice: '66234.00',
execQty: '0.011',
execType: 'Funding',
execValue: '728.574',
execTime: '1709625600000',
isMaker: false,
feeRate: '0.00112788',
tradeIv: '',
markIv: '',
markPrice: '66234.00',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 136759770703,
createType: ''
},
{
symbol: 'BTCUSDT',
orderId: '221eb0ae-aeaf-4a9c-9332-18ebe12fe7f8',
orderLinkId: '',
side: 'Buy',
orderPrice: '65165.00',
orderQty: '0.005',
leavesQty: '0.000',
orderType: 'Limit',
stopOrderType: 'UNKNOWN',
execFee: '0.065165',
execId: '0cd18945-85f1-5960-bacf-5c167e2e7702',
execPrice: '65165.00',
execQty: '0.005',
execType: 'Trade',
execValue: '325.825',
execTime: '1709615018101',
isMaker: true,
feeRate: '0.0002',
tradeIv: '',
markIv: '',
markPrice: '66170.00',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 136680428093,
createType: ''
},
{ // открыли позицию #1
symbol: 'BTCUSDT',
orderId: 'cb81069d-c450-4247-b230-6a33a16acae0',
orderLinkId: '',
side: 'Buy',
orderPrice: '65800.00',
orderQty: '0.006',
leavesQty: '0.000',
orderType: 'Limit',
stopOrderType: 'UNKNOWN',
execFee: '0.07896',
execId: '020ee5ac-1aa6-592f-a715-c6ed4ac9cc9d',
execPrice: '65800.00',
execQty: '0.006',
execType: 'Trade',
execValue: '394.8',
execTime: '1709615014608',
isMaker: true,
feeRate: '0.0002',
tradeIv: '',
markIv: '',
markPrice: '68355.61',
indexPrice: '',
underlyingPrice: '',
blockTradeId: '',
closedSize: '0.000',
seq: 136680352831,
createType: ''
}
];
const historycOrders = [{ // закрыли позицию #3
orderId: 'e272745c-2b66-431a-828b-3cde0f6e55e1',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '71187.10',
qty: '0.004',
side: 'Buy',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '70049.400000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.004',
cumExecValue: '280.1976',
cumExecFee: '0.15410868',
timeInForce: 'IOC',
orderType: 'Market',
stopOrderType: 'StopLoss',
orderIv: '',
triggerPrice: '70045.00',
takeProfit: '0.00',
stopLoss: '0.00',
tpTriggerBy: 'UNKNOWN',
slTriggerBy: 'UNKNOWN',
triggerDirection: 1,
triggerBy: 'LastPrice',
lastPriceOnCreated: '68614.00',
reduceOnly: true,
closeOnTrigger: true,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: 'Full',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByStopLoss',
createdTime: '1709973754346',
updatedTime: '1710140868474'
},
{ // открыли позицию #3
orderId: '3945cd57-9d76-49f5-9114-ffdd63801d6b',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '66134.70',
qty: '0.004',
side: 'Sell',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '68449.200000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.004',
cumExecValue: '273.7968',
cumExecFee: '0.15058824',
timeInForce: 'IOC',
orderType: 'Market',
stopOrderType: 'UNKNOWN',
orderIv: '',
triggerPrice: '0.00',
takeProfit: '0.00',
stopLoss: '0.00',
tpTriggerBy: 'UNKNOWN',
slTriggerBy: 'UNKNOWN',
triggerDirection: 0,
triggerBy: 'UNKNOWN',
lastPriceOnCreated: '0.00',
reduceOnly: false,
closeOnTrigger: false,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: '',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByUser',
createdTime: '1709973696984',
updatedTime: '1709973696986'
},
{ // закрыли позицию #2
orderId: '87431f70-a687-4e24-b79e-38e9c1a96c97',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '72270.00',
qty: '0.003',
side: 'Buy',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '69433.800000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.003',
cumExecValue: '208.3014',
cumExecFee: '0.11456577',
timeInForce: 'IOC',
orderType: 'Market',
stopOrderType: 'StopLoss',
orderIv: '',
triggerPrice: '69420.00',
takeProfit: '0.00',
stopLoss: '0.00',
tpTriggerBy: 'UNKNOWN',
slTriggerBy: 'UNKNOWN',
triggerDirection: 1,
triggerBy: 'LastPrice',
lastPriceOnCreated: '65694.50',
reduceOnly: true,
closeOnTrigger: true,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: 'Full',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByUser',
createdTime: '1709702568207',
updatedTime: '1709911680150'
},
{ // открыли позицию #2
orderId: '145bac70-1078-471c-9bcf-8ee806124254',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '65700.00',
qty: '0.003',
side: 'Sell',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '65700.000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.003',
cumExecValue: '197.1',
cumExecFee: '0.03942',
timeInForce: 'PostOnly',
orderType: 'Limit',
stopOrderType: 'UNKNOWN',
orderIv: '',
triggerPrice: '0.00',
takeProfit: '50450.00',
stopLoss: '69420.00',
tpTriggerBy: 'LastPrice',
slTriggerBy: 'LastPrice',
triggerDirection: 0,
triggerBy: 'UNKNOWN',
lastPriceOnCreated: '0.00',
reduceOnly: false,
closeOnTrigger: false,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: 'Full',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByUser',
createdTime: '1709674294168',
updatedTime: '1709702568207'
},
{ // закрыли позицию #1
orderId: 'db87dd97-ed02-4306-ba43-ae57018001bb',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '63576.70',
qty: '0.011',
side: 'Sell',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '66922.800000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.011',
cumExecValue: '736.1508',
cumExecFee: '0.40488294',
timeInForce: 'IOC',
orderType: 'Market',
stopOrderType: 'UNKNOWN',
orderIv: '',
triggerPrice: '0.00',
takeProfit: '0.00',
stopLoss: '0.00',
tpTriggerBy: 'UNKNOWN',
slTriggerBy: 'UNKNOWN',
triggerDirection: 0,
triggerBy: 'UNKNOWN',
lastPriceOnCreated: '0.00',
reduceOnly: true,
closeOnTrigger: true,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: '',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByClosing',
createdTime: '1709640388082',
updatedTime: '1709640388083'
},
{
orderId: '221eb0ae-aeaf-4a9c-9332-18ebe12fe7f8',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '65165.00',
qty: '0.005',
side: 'Buy',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '65165.00000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.005',
cumExecValue: '325.825',
cumExecFee: '0.065165',
timeInForce: 'PostOnly',
orderType: 'Limit',
stopOrderType: 'UNKNOWN',
orderIv: '',
triggerPrice: '0.00',
takeProfit: '69200.00',
stopLoss: '64570.00',
tpTriggerBy: 'LastPrice',
slTriggerBy: 'LastPrice',
triggerDirection: 0,
triggerBy: 'UNKNOWN',
lastPriceOnCreated: '0.00',
reduceOnly: false,
closeOnTrigger: false,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: 'Full',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByUser',
createdTime: '1709589085570',
updatedTime: '1709615018109'
},
{ // открыли позицию #1
orderId: 'cb81069d-c450-4247-b230-6a33a16acae0',
orderLinkId: '',
blockTradeId: '',
symbol: 'BTCUSDT',
price: '65800.00',
qty: '0.006',
side: 'Buy',
isLeverage: '',
positionIdx: 0,
orderStatus: 'Filled',
cancelType: 'UNKNOWN',
rejectReason: 'EC_NoError',
avgPrice: '65800.000',
leavesQty: '0.000',
leavesValue: '0',
cumExecQty: '0.006',
cumExecValue: '394.8',
cumExecFee: '0.07896',
timeInForce: 'PostOnly',
orderType: 'Limit',
stopOrderType: 'UNKNOWN',
orderIv: '',
triggerPrice: '0.00',
takeProfit: '69200.00',
stopLoss: '64570.00',
tpTriggerBy: 'LastPrice',
slTriggerBy: 'LastPrice',
triggerDirection: 0,
triggerBy: 'UNKNOWN',
lastPriceOnCreated: '0.00',
reduceOnly: false,
closeOnTrigger: false,
smpType: 'None',
smpGroup: 0,
smpOrderId: '',
tpslMode: 'Full',
tpLimitPrice: '',
slLimitPrice: '',
placeType: '',
createType: 'CreateByUser',
createdTime: '1709584710511',
updatedTime: '1709615014611'
}
]
, каждый объект - ордер (открытия\закрытия). Из этих ордеров (из первого массива или из второго не важно) мне нужно каким то образом сформировать трейд. Что то вроде такого Входных данных у меня никаких нет. То есть основываясь на каких то значениях ключей нужно понять когда открылся трейд и когда он закрылся. Если кто то пользовался npm bybit-api выручайте