public async Task CreateAsync(string clientId, string assetPair, decimal volume, OrderType orderType)
        {
            string exchangeName = _settingsService.GetExchangeName();

            AssetPairModel assetPairSettings = _marketInstrumentService.GetAssetPair(assetPair, exchangeName);

            if (assetPairSettings == null)
            {
                throw new FailedOperationException("Asset pair not supported");
            }

            if (volume < assetPairSettings.MinVolume)
            {
                throw new FailedOperationException("Volume is too small");
            }

            var marketOrder = new MarketOrder(clientId, assetPair, orderType, volume);

            await _marketOrderRepository.InsertAsync(marketOrder);

            _log.InfoWithDetails("Market order created", marketOrder);
        }