/// <summary>
        /// Adjust cross collateral LTV
        /// </summary>
        /// <param name="collateralCoin">The collateral coin</param>
        /// <param name="amount">The amount</param>
        /// <param name="direction">The direction</param>
        /// <param name="receiveWindow">The receive window for which this request is active. When the request takes longer than this to complete the server will reject the request</param>
        /// <param name="ct">Cancellation token</param>
        /// <returns>Adjust result</returns>
        public async Task <WebCallResult <BinanceCrossCollateralAdjustLtvResult> > AdjustCrossCollateralLoanToValueAsync(string collateralCoin, decimal amount, AdjustRateDirection direction, long?receiveWindow = null, CancellationToken ct = default)
        {
            var timestampResult = await _baseClient.CheckAutoTimestamp(ct).ConfigureAwait(false);

            if (!timestampResult)
            {
                return(new WebCallResult <BinanceCrossCollateralAdjustLtvResult>(timestampResult.ResponseStatusCode, timestampResult.ResponseHeaders, null, timestampResult.Error));
            }

            var parameters = new Dictionary <string, object>
            {
                { "timestamp", _baseClient.GetTimestamp() },
                { "collateralCoin", collateralCoin },
                { "amount", amount },
                { "direction", JsonConvert.SerializeObject(direction, new AdjustRateDirectionConverter(false)) },
            };

            parameters.AddOptionalParameter("recvWindow", receiveWindow?.ToString(CultureInfo.InvariantCulture) ?? _baseClient.DefaultReceiveWindow.TotalMilliseconds.ToString(CultureInfo.InvariantCulture));

            return(await _baseClient.SendRequestInternal <BinanceCrossCollateralAdjustLtvResult>(_baseClient.GetUrlSpot(futuresAdjustCrossCollateralEndpoint, api, publicVersion), HttpMethod.Post, ct, parameters, true).ConfigureAwait(false));
        }
 /// <summary>
 /// Adjust cross collateral LTV
 /// </summary>
 /// <param name="collateralCoin">The collateral coin</param>
 /// <param name="amount">The amount</param>
 /// <param name="direction">The direction</param>
 /// <param name="receiveWindow">The receive window for which this request is active. When the request takes longer than this to complete the server will reject the request</param>
 /// <param name="ct">Cancellation token</param>
 /// <returns>Adjust result</returns>
 public WebCallResult <BinanceCrossCollateralAdjustLtvResult> AdjustCrossCollateralLoanToValue(string collateralCoin, decimal amount, AdjustRateDirection direction, long?receiveWindow = null, CancellationToken ct = default) => AdjustCrossCollateralLoanToValueAsync(collateralCoin, amount, direction, receiveWindow, ct).Result;