public Trade(ISavedTrade savedTrade) { StrategyEntryLevel = savedTrade.StrategyEntryLevel; StopLevel = savedTrade.StopLevel; Target = savedTrade.Target; OpenLevel = savedTrade.OpenLevel; Direction = Target > StopLevel ? TradeDirection.Long : TradeDirection.Short; CloseLevel = savedTrade.CloseLevel == -1 ? Option.None <double>() : Option.Some(savedTrade.CloseLevel); OpenTime = savedTrade.OpenTime; CloseTime = savedTrade.CloseTime == DateTime.MinValue ? Option.None <DateTime>() : Option.Some(savedTrade.CloseTime); Size = savedTrade.Size; MaximumAdverseExcursionPoints = savedTrade.MaximumAdverseExcursion == -1 ? Option.None <double>() : Option.Some(savedTrade.MaximumAdverseExcursion); MaximumFavourableExcursionPoints = savedTrade.MaximumFavourableExcursion == -1 ? Option.None <double>() : Option.Some(savedTrade.MaximumFavourableExcursion); CalculateResult(); }
public JournalTrade(ISavedTrade savedTrade) : base(savedTrade) { Strategy = new Strategy <FibonacciLevel, FibonacciLevel>(savedTrade.StrategyName, savedTrade.StrategyShortName); Market = new SelectableMarket(savedTrade.MarketName); }