internal object RetrieveRecordedInformation(Interface.Strategics strategics, string account, string code) { if (Array.Exists(Enumerable, o => o.Code.Equals(code))) { foreach (var find in Enumerable.Where(o => o.Trend == (int)strategics && o.Code.Equals(code))) { var date = new DateTime(find.Date); switch (find) { case Catalog.Rotation ro when ro.Account.Equals(account): string[] comma = new string[4], percent = new string[6]; for (int i = 0; i < percent.Length; i++) { switch (i) { case 0: comma[i] = ro.Short.ToString("N0"); percent[i] = ro.AlphaRevenue.ToString("P3").Replace("%", string.Empty); continue; case 1: comma[i] = ro.Long.ToString("N0"); percent[i] = ro.BetaRevenue.ToString("P3").Replace("%", string.Empty); continue; case 2: comma[i] = ro.PerDay.ToString("N0"); percent[i] = ro.Revenue.ToString("P3").Replace("%", string.Empty); continue; case 3: comma[i] = ro.Accumulate.ToString("N0"); percent[i] = ro.AlphaStopLoss.ToString("P3").Replace("%", string.Empty); continue; case 4: percent[i] = ro.BetaStopLoss.ToString("P3").Replace("%", string.Empty); continue; case 5: percent[i] = ro.StopLoss.ToString("P3").Replace("%", string.Empty); continue; } } return(new Tuple <string, string[], string, string[]>(ro.Date > 0 ? string.Concat(date.ToLongDateString(), " ", date.ToLongTimeString()) : string.Empty, comma, ro.Date > 0 ? string.Concat(20, ro.Liquidation.Insert(4, "-").Insert(2, "-")) : string.Empty, percent)); case Catalog.LongPosition lp when lp.Account.Equals(account): return(new Tuple <string, string, string>(lp.Underweight.ToString("P5").Replace("%", string.Empty), lp.Overweight.ToString("N0"), lp.Date > 0 ? string.Concat(date.ToLongDateString(), " ", date.ToLongTimeString()) : string.Empty)); case Catalog.Scenario scenario when scenario.Account.Equals(account): return(new Tuple <int, int, string, string, string, string>(scenario.Short, scenario.Long, scenario.Maximum.ToString("N0"), scenario.Hope.ToString("N0"), scenario.Target.ToString("P5").Replace("%", string.Empty), scenario.Date > 0 ? string.Concat(date.ToLongDateString(), " ", date.ToLongTimeString()) : string.Empty)); } } } return(null); }
internal object RetrieveRecordedInformation(Interface.Strategics strategics, string account, string code) { if (Array.Exists(Enumerable, o => o.Code.Equals(code))) { foreach (var find in Enumerable.Where(o => o.Trend == (int)strategics && o.Code.Equals(code))) { var date = new DateTime(find.Date); switch (find) { case Catalog.LongPosition lp when lp.Account.Equals(account): return(new Tuple <string, string, string>(lp.Underweight.ToString("P5").Replace("%", string.Empty), lp.Overweight.ToString("N0"), lp.Date > 0 ? string.Concat(date.ToLongDateString(), " ", date.ToLongTimeString()) : string.Empty)); case Catalog.Scenario scenario when scenario.Account.Equals(account): return(new Tuple <int, int, string, string, string, string>(scenario.Short, scenario.Long, scenario.Maximum.ToString("N0"), scenario.Hope.ToString("N0"), scenario.Target.ToString("P5").Replace("%", string.Empty), scenario.Date > 0 ? string.Concat(date.ToLongDateString(), " ", date.ToLongTimeString()) : string.Empty)); } } } return(null); }