private async Task <bool> ValidateInstrumentAsync(InternalOrder internalOrder)
        {
            Instrument instrument = await _instrumentService.TryGetByAssetPairIdAsync(internalOrder.AssetPairId);

            string error = null;

            if (instrument == null)
            {
                error = Errors.AssetPairNotSupported;
            }
            else if (Math.Round(internalOrder.Volume, instrument.VolumeAccuracy) < instrument.MinVolume)
            {
                error = Errors.TooSmallVolume;
            }
            else if (Math.Abs(internalOrder.Volume) % 1 * (decimal)Math.Pow(10, instrument.VolumeAccuracy) % 1 != 0)
            {
                error = Errors.InvalidVolume;
            }

            if (!string.IsNullOrEmpty(error))
            {
                internalOrder.Status       = InternalOrderStatus.Rejected;
                internalOrder.RejectReason = error;

                await _internalOrderRepository.UpdateAsync(internalOrder);

                return(false);
            }

            return(true);
        }