Add user to position + fix few things

This commit is contained in:
2025-04-24 19:46:21 +07:00
parent 76b8b7ebb6
commit c22c925087
17 changed files with 357 additions and 238 deletions

View File

@@ -7,9 +7,10 @@ namespace Managing.Domain.Trades
{
public class Position
{
public Position(string accountName, TradeDirection originDirection, Ticker ticker, MoneyManagement moneyManagement, PositionInitiator positionInitiator, DateTime date)
public Position(string identifier, string accountName, TradeDirection originDirection, Ticker ticker,
MoneyManagement moneyManagement, PositionInitiator positionInitiator, DateTime date, User user)
{
Identifier = Guid.NewGuid().ToString();
Identifier = identifier;
AccountName = accountName;
OriginDirection = originDirection;
Ticker = ticker;
@@ -17,34 +18,24 @@ namespace Managing.Domain.Trades
Initiator = positionInitiator;
Date = date;
Status = Initiator == PositionInitiator.PaperTrading ? PositionStatus.Filled : PositionStatus.New;
User = user;
}
[Required]
public string AccountName { get; }
[Required]
public DateTime Date { get; set; }
[Required]
public TradeDirection OriginDirection { get; }
[Required]
public Ticker Ticker { get; }
[Required]
public MoneyManagement MoneyManagement { get; }
[Required]
public Trade Open { get; set; }
[Required]
public Trade StopLoss { get; set; }
[Required]
public Trade TakeProfit1 { get; set; }
[Required] public string AccountName { get; }
[Required] public DateTime Date { get; set; }
[Required] public TradeDirection OriginDirection { get; }
[Required] public Ticker Ticker { get; }
[Required] public MoneyManagement MoneyManagement { get; }
[Required] public Trade Open { get; set; }
[Required] public Trade StopLoss { get; set; }
[Required] public Trade TakeProfit1 { get; set; }
public Trade TakeProfit2 { get; set; }
public ProfitAndLoss ProfitAndLoss { get; set; }
[Required]
public PositionStatus Status { get; set; }
[Required] public PositionStatus Status { get; set; }
public string SignalIdentifier { get; set; }
[Required]
public string Identifier { get; set; }
[Required]
public PositionInitiator Initiator { get; }
public User User { get; set; }
[Required] public string Identifier { get; set; }
[Required] public PositionInitiator Initiator { get; }
[Required] public User User { get; set; }
public bool IsFinished()
{
@@ -56,4 +47,4 @@ namespace Managing.Domain.Trades
};
}
}
}
}