using CryptoExchange.Net.Objects; using System; using System.Collections.Generic; using System.Text; using System.Threading; using System.Threading.Tasks; namespace CryptoExchange.Net.SharedApis { /// /// Operation for placing a futures order on an exchange. /// public interface IPlaceFuturesOrder : ISharedApiCapability { /// /// How the trading fee is deducted /// SharedFeeDeductionType FuturesFeeDeductionType { get; } /// /// How the asset is determined in which the trading fee is paid /// SharedFeeAssetType FuturesFeeAssetType { get; } /// /// Supported order types for futures orders /// SharedOrderType[] FuturesSupportedOrderTypes { get; } /// /// Supported time in force types for futures orders /// SharedTimeInForce[] FuturesSupportedTimeInForce { get; } /// /// Supported quantity types for futures orders /// SharedQuantitySupport FuturesSupportedOrderQuantity { get; } /// /// Generate a new random client order id /// /// string GenerateClientOrderId(); /// /// Futures place order request options.
/// Use and to check for required and optional parameters for the request.
/// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object. ///
PlaceFuturesOrderOptions PlaceFuturesOrderOptions { get; } /// /// Place a new futures order, see for request options and exchange specific required/optional parameters.
///
/// Request info /// Cancellation token Task> PlaceFuturesOrderAsync(PlaceFuturesOrderRequest request, CancellationToken ct = default); } /// /// Operation for placing a futures order on an exchange via the REST API. /// public interface IPlaceFuturesOrderRest : IPlaceFuturesOrder, ISharedRest { /// new Task> PlaceFuturesOrderAsync(PlaceFuturesOrderRequest request, CancellationToken ct = default); } /// /// Operation for placing a futures order on an exchange via the WebSocket API. /// public interface IPlaceFuturesOrderSocket : IPlaceFuturesOrder, ISharedSocket { /// new Task> PlaceFuturesOrderAsync(PlaceFuturesOrderRequest request, CancellationToken ct = default); } }