using CryptoExchange.Net.Objects;
using System.Text;
namespace CryptoExchange.Net.SharedApis
{
///
/// Options for requesting recent trades
///
public class GetRecentTradesOptions : EndpointOptions
{
///
/// The max number of trades that can be requested
///
public int MaxLimit { get; set; }
///
/// ctor
///
public GetRecentTradesOptions(int limit, bool authenticated) : base(authenticated)
{
MaxLimit = limit;
}
///
public Error? Validate(GetRecentTradesRequest request)
{
if (request.Limit > MaxLimit)
return ArgumentError.Invalid(nameof(GetRecentTradesRequest.Limit), $"Only the most recent {MaxLimit} trades are available");
return null;
}
///
public override string ToString(string exchange)
{
var sb = new StringBuilder(base.ToString(exchange));
sb.AppendLine($"Max data points: {MaxLimit}");
return sb.ToString();
}
}
}