Beispiel #1
0
        public SymbolFacade(MarketSymbolDownloader marketSymbolDownloader, MarketSymbolReader marketSymbolReader)
        {
            _marketSymbolsFile = null;

            _marketSymbolReader     = marketSymbolReader;
            _marketSymbolDownloader = marketSymbolDownloader;
        }
 public SymbolFacade(
     MarketSymbolDownloader marketSymbolDownloader,
     MarketSymbolReader marketSymbolReader,
     ExpiredOptionDownloader expiredOptionDownloader,
     ExpiredOptionReader expiredOptionReader)
 {
     _expiredOptionReader     = expiredOptionReader;
     _expiredOptionDownloader = expiredOptionDownloader;
     _marketSymbolReader      = marketSymbolReader;
     _marketSymbolDownloader  = marketSymbolDownloader;
 }
Beispiel #3
0
 public SymbolFacade(
     SymbolRequestFormatter symbolRequestFormatter,
     LookupDispatcher lookupDispatcher,
     ExceptionFactory exceptionFactory,
     SymbolMessageHandler symbolMessageHandler,
     MarketSymbolReader marketSymbolReader,
     ExpiredOptionReader expiredOptionReader,
     FileDownloader fileDownloader,
     TimeSpan timeout) : base(lookupDispatcher, exceptionFactory, timeout)
 {
     _symbolRequestFormatter = symbolRequestFormatter;
     _symbolMessageHandler   = symbolMessageHandler;
     _expiredOptionReader    = expiredOptionReader;
     _marketSymbolReader     = marketSymbolReader;
     _fileDownloader         = fileDownloader;
 }
Beispiel #4
0
 public SymbolFacade(
     SymbolRequestFormatter symbolRequestFormatter,
     LookupDispatcher lookupDispatcher,
     ErrorMessageHandler errorMessageHandler,
     SymbolMessageHandler symbolMessageHandler,
     MarketSymbolDownloader marketSymbolDownloader,
     MarketSymbolReader marketSymbolReader,
     ExpiredOptionDownloader expiredOptionDownloader,
     ExpiredOptionReader expiredOptionReader,
     int timeoutMs) : base(lookupDispatcher, errorMessageHandler, timeoutMs)
 {
     _symbolRequestFormatter  = symbolRequestFormatter;
     _symbolMessageHandler    = symbolMessageHandler;
     _expiredOptionReader     = expiredOptionReader;
     _expiredOptionDownloader = expiredOptionDownloader;
     _marketSymbolReader      = marketSymbolReader;
     _marketSymbolDownloader  = marketSymbolDownloader;
 }
        public IEnumerable <MarketSymbol> GetAllMarketSymbols()
        {
            var marketSymbolPath      = Path.Combine(_dataDirectory, "symbol", $"{DateTime.Now.ToString(DataStore.DateFormat)}_mktsymbols_v2.zip");
            var marketSymbolDirectory = Path.GetDirectoryName(marketSymbolPath);

            if (marketSymbolDirectory != null && !Directory.Exists(marketSymbolDirectory))
            {
                Log.Information($"Downloader.GetAllMarketSymbols(): Create directory {marketSymbolDirectory}");
                Directory.CreateDirectory(marketSymbolDirectory);
            }

            if (!File.Exists(marketSymbolPath))
            {
                Log.Information($"Downloader.GetAllMarketSymbols(): Downloading Market Symbols to {marketSymbolPath}");
                using (var client = new WebClient())
                {
                    client.DownloadFile("http://www.dtniq.com/product/mktsymbols_v2.zip", marketSymbolPath);
                }
            }

            return(MarketSymbolReader.GetMarketSymbols(marketSymbolPath));
        }