using System; using System.Text.Json.Serialization; namespace FinlyticCore.Models.Trades; public class TradeAcceptanceDto { [JsonPropertyName("tradeId")] public string TradeId { get; set; } = string.Empty; [JsonPropertyName("analysisId")] public string AnalysisId { get; set; } = string.Empty; [JsonPropertyName("isin")] public string Isin { get; set; } = string.Empty; [JsonPropertyName("userId")] public string? UserId { get; set; } = "default_user"; [JsonPropertyName("companyName")] public string? CompanyName { get; set; } [JsonPropertyName("sector")] public string? Sector { get; set; } [JsonPropertyName("actualEntryPrice")] public decimal? ActualEntryPrice { get; set; } [JsonPropertyName("positionSize")] public decimal? PositionSize { get; set; } [JsonPropertyName("leverageUsed")] public decimal? LeverageUsed { get; set; } = 1; [JsonPropertyName("entryFee")] public decimal? EntryFee { get; set; } = 0; [JsonPropertyName("exitFee")] public decimal? ExitFee { get; set; } = 0; [JsonPropertyName("symbol")] public string? Symbol { get; set; } [JsonPropertyName("signalType")] public string? SignalType { get; set; } [JsonPropertyName("entryPrice")] public decimal? EntryPrice { get; set; } [JsonPropertyName("stopLoss")] public decimal? StopLoss { get; set; } [JsonPropertyName("takeProfit")] public decimal? TakeProfit { get; set; } [JsonPropertyName("instrumentType")] public string? InstrumentType { get; set; } [JsonPropertyName("derivativeIsin")] public string? DerivativeIsin { get; set; } [JsonPropertyName("timeframe")] public string? Timeframe { get; set; } [JsonPropertyName("reasoning")] public string? Reasoning { get; set; } [JsonPropertyName("executionTimestamp")] public DateTime? ExecutionTimestamp { get; set; } [JsonPropertyName("quantity")] public decimal? Quantity { get; set; } [JsonPropertyName("knockoutThreshold")] public decimal? KnockoutThreshold { get; set; } [JsonPropertyName("isRecurring")] public bool IsRecurring { get; set; } = false; }