作者 karlet

feat:查询某个具体仓位

@@ -269,4 +269,17 @@ class CmBroker @@ -269,4 +269,17 @@ class CmBroker
269 } 269 }
270 return $newPositions; 270 return $newPositions;
271 } 271 }
  272 + //获取某个品种的某个方向仓位
  273 + public function getPos($symbol, $posSide)
  274 + {
  275 + $symbolOri = $this->getSymbolOri($symbol, $this->plat);
  276 + if ($this->plat == 'okx') {
  277 + $posSide = strtolower($posSide);
  278 + $symbolInfo = $this->symbolInfos[$symbol];
  279 + $lot = $this->exBroker->getPos($symbolOri, $posSide);
  280 + $qty = round($lot * $symbolInfo->ctVal, $symbolInfo->qtyPrec);
  281 + return $qty;
  282 + }
  283 + return -1;
  284 + }
272 } 285 }
@@ -327,4 +327,25 @@ class ExBroker @@ -327,4 +327,25 @@ class ExBroker
327 } 327 }
328 return $newPositions; 328 return $newPositions;
329 } 329 }
  330 + //查询获取某个品种方向具体仓位
  331 + public function getPos($symbol, $posSide)
  332 + {
  333 + $param = [
  334 + 'instType' => 'SWAP',
  335 + 'instId' => $symbol,
  336 + ];
  337 + $res = $this->api->getPositions($param);
  338 + if ($res['code'] == 0) {
  339 + $positions = $res['data'];
  340 + foreach ($positions as $key => $value) {
  341 + if ($value['posSide'] == $posSide) {
  342 + return abs($value['pos']);
  343 + }
  344 + }
  345 + return 0;
  346 + } else {
  347 + output($res);
  348 + }
  349 + return -1;
  350 + }
330 } 351 }