Hello all,

I have a custom data file that looks like:

Ticker,Sector
A,XLV
AA,XLB
AAC,XLV
...

Basically trying to add Sector data to my data set for underlying stocks.

The following code, however, does not seem to pull in the data.  I get "no Sectors data" in the log file.

Please take a look:

from clr import AddReference AddReference("System") AddReference("QuantConnect.Common") AddReference("QuantConnect.Algorithm") from System import * from QuantConnect import * from QuantConnect.Algorithm import * from QuantConnect.Data import SubscriptionDataSource from QuantConnect.Python import PythonData class BasicTemplateAlgorithm(QCAlgorithm): def Initialize(self): self.SetStartDate(2018,5,25) #Set Start Date self.SetEndDate(2018,5,29) #Set End Date self.SetCash(20000) #Set Strategy Cash self.AddEquity("SPY", Resolution.Second) # add the custom set of sector data from an outside file self.AddData(SectorData, "SECTORS", Resolution.Daily) # we know the file is available, because the below works #file = self.Download("https://www.dropbox.com/sh/vf8dp7snigw7j9x/AADniLYgjeV0GTamCI3DTCb9a/Sector_Lookup.csv?dl=1") #self.Debug(file) # get the universe of stocks every morning self.UniverseSettings.Resolution = Resolution.Daily self.AddUniverse(self.CoarseSelectionFunction, self.FineSelectionFunction) # Universe selection - coarse def CoarseSelectionFunction(self, coarse): # price > 5 and volume > 500k selected = [x for x in coarse if (float(x.Price) >= 5 and x.Volume > 500000) ] return [ x.Symbol for x in selected ] # Universe selection - fine def FineSelectionFunction(self, fine): self.Debug("starting fine selection") # check that "fine" stocks are available in downloaded Ticker/Sector combinations return [ x.Symbol for x in fine ] # intraday trading def OnData(self, data): if data.ContainsKey("SECTORS"): self.Debug("SECTORS has been added to data") else: self.Debug("no SECTORS data") if not self.Portfolio.Invested: self.SetHoldings("SPY", 1) # Custom data download description class SectorData(PythonData): def GetSource(self, config, date, isLiveMode): url = "https://www.dropbox.com/sh/vf8dp7snigw7j9x/AADniLYgjeV0GTamCI3DTCb9a/Sector_Lookup.csv?dl=1" return SubscriptionDataSource(url, SubscriptionTransportMedium.RemoteFile) def Reader(self, config, line, date, isLiveMode): sectors = SectorData() sectors.Symbol = config.Symbol data = line.split(',') sectors["Ticker"] = data[0] sectors["Sector"] = data[1] return sectors