/// <summary> /// Function: Add or remove strategy as a node in the Tree. /// </summary> /// <param name="day">reference day</param> public void AddRemoveSubStrategies(DateTime day) { foreach (Strategy strat in _strategyDB.Values.ToList()) { if (strat.InitialDate <= day && strat.FinalDate >= day && strat.Portfolio != null) { strat.Tree.AddRemoveSubStrategies(day); } } BusinessDay date_local = _parentStrategy.Calendar.GetBusinessDay(day); if (date_local != null) { _parentStrategy.AddRemoveSubStrategies(date_local); } }