This commit is contained in:
mis_mueller committed 2026-05-19 16:28:49 +02:00
1 parent 3845bf12c1
commit 351289dcdc
3 files changed
+67 -12

No files matched your search

+16 -4
View File
@@ -18,26 +18,38 @@ use Msr\LaravelBitunixApi\Requests\Header;
use Msr\LaravelBitunixApi\Requests\PlaceOrderRequestContract;
use Msr\LaravelBitunixApi\Requests\PlacePositionTpSlOrderRequestContract;
use Msr\LaravelBitunixApi\Requests\PlaceTpSlOrderRequestContract;
use Msr\LaravelBitunixApi\Support\BitunixAccountConfig;
use Psr\Http\Message\ResponseInterface;
class LaravelBitunixApi implements ChangeLeverageRequestContract, ChangeMarginModeRequestContract, FlashClosePositionRequestContract, FutureKLineRequestContract, GetHistoryPositionsRequestContract, GetHistoryTradesRequestContract, GetPendingPositionsRequestContract, GetSingleAccountRequestContract, GetTradingPairsRequestContract, PlaceOrderRequestContract, PlacePositionTpSlOrderRequestContract, PlaceTpSlOrderRequestContract
{
private Client $publicFutureClient;
protected BitunixAccountConfig $config;
public function __construct(protected RateLimiter $rateLimiter)
{
$this->config = BitunixAccountConfig::fromConfig();
$this->publicFutureClient = new Client([
'base_uri' => config('bitunix-api.future_base_uri').'/api/v1/futures/market/',
'base_uri' => ($this->config->baseUrl ?? config('bitunix-api.future_base_uri')).'/api/v1/futures/market/',
]);
}
public function forAccount(BitunixAccountConfig $config): self
{
$this->config = $config;
return $this;
}
protected function getPrivateFutureClient(array $queryParams = [], array $body = []): Client
{
$bodyString = count($body) ? json_encode($body) : '';
$headers = Header::generateHeaders($queryParams, $bodyString);
$headers = Header::generateHeaders($queryParams, $bodyString, $this->config);
return new Client([
'base_uri' => config('bitunix-api.future_base_uri').'/api/v1/futures/',
'base_uri' => ($this->config->baseUrl ?? config('bitunix-api.future_base_uri')).'/api/v1/futures/',
'headers' => $headers,
]);
}
@@ -409,6 +421,6 @@ class LaravelBitunixApi implements ChangeLeverageRequestContract, ChangeMarginMo
protected function resolveRateLimitIdentity(): string
{
return (string) config('bitunix-api.api_key');
return (string) ($this->config->accountKey ?? $this->config->apiKey);
}
}