17 using System.Collections.Generic;
34 private readonly IReadOnlyList<Symbol> _symbols;
42 : this(Enumerable.Empty<
Symbol>())
53 : this(symbols.ToArray())
64 : this (symbols?.AsEnumerable(), null)
78 throw new ArgumentNullException(nameof(symbols));
81 _symbols = symbols.Where(s => !s.IsCanonical()).ToList();
82 _universeSettings = universeSettings;
84 foreach (var symbol
in _symbols)
102 foreach (var grp
in _symbols.GroupBy(s =>
new { s.ID.Market, s.SecurityType }))
106 var market = grp.Key.Market;
107 var securityType = grp.Key.SecurityType;
109 foreach (var symbol
in grp)
111 hashCode = hashCode * 31 + symbol.GetHashCode();
113 var universeSymbol =
Symbol.
Create($
"manual-universe-selection-model-{securityType}-{market}-{hashCode}", securityType, market);
121 entry = MarketHours.SetEntry(market, symbolString, securityType, alwaysOpen,
TimeZones.
NewYork);
125 entry = MarketHours.GetEntry(market, (
string)
null, securityType);
128 var config =
new SubscriptionDataConfig(type, universeSymbol, resolution, entry.DataTimeZone, entry.ExchangeHours.TimeZone,
false,
false,
true);