|
...
|
...
|
@@ -117,20 +117,25 @@ class WsDataTrade |
|
|
|
public static function TransferBybitTrade($data, $symbolInfos, callable $toSymbolSt): WsDataTrade|null
|
|
|
|
{
|
|
|
|
$platform = 'bybit';
|
|
|
|
$order = $data['data'];
|
|
|
|
$symbol = call_user_func($toSymbolSt, $order['symbol']);
|
|
|
|
$posSide = strtoupper($order['side']);
|
|
|
|
$side = strtoupper($order['side']);
|
|
|
|
$price = (float)$order['price'];
|
|
|
|
$qty = (float)$order['qty'];
|
|
|
|
$symbol = call_user_func($toSymbolSt, $data['symbol']);
|
|
|
|
$posSide = "";
|
|
|
|
$side = strtoupper($data['side']);
|
|
|
|
$price = (float)$data['execPrice'];
|
|
|
|
$qty = (float)$data['execQty'];
|
|
|
|
$lot = $qty;
|
|
|
|
$pnl = (float)$order['realised_pnl'];
|
|
|
|
$fee = (float)$order['fee'];
|
|
|
|
$pnl = (float)$data['execPnl'];
|
|
|
|
if (($pnl == 0 && $side == "BUY") || ($pnl != 0 && $side == "SELL")) {
|
|
|
|
$posSide = "LONG";
|
|
|
|
}
|
|
|
|
if (($pnl == 0 && $side == "SELL") || ($pnl != 0 && $side == "BUY")) {
|
|
|
|
$posSide = "SHORT";
|
|
|
|
}
|
|
|
|
$fee = (float)$data['execFee'];
|
|
|
|
$quoteVol = $price * $qty;
|
|
|
|
$ts = $order['transact_time'];
|
|
|
|
$tradeId = $order['order_id'];
|
|
|
|
$ordId = $order['order_id'];
|
|
|
|
$cliOrdId = $order['order_link_id'];
|
|
|
|
$ts = $data['execTime'];
|
|
|
|
$tradeId = $data['execId'];
|
|
|
|
$ordId = $data['orderId'];
|
|
|
|
$cliOrdId = $data['orderLinkId'];
|
|
|
|
$lever = 0;
|
|
|
|
return new WsDataTrade($platform, $posSide, $symbol, $side, $price, $qty, $lot, $pnl, $fee, $quoteVol, $ts, $tradeId, $ordId, $cliOrdId, $lever);
|
|
|
|
}
|
...
|
...
|
|