public AutoComponentsViewModel GetForecastData(Indicator indicator, string assetName, int periods) { try { var viewModel = new AutoComponentsViewModel(); var folder = _directoryManager.GetLastFolder(DirSwitcher.Auto); var dir = _directoryManager.GetDirByIndicator(folder, indicator); var targetFolder = _directoryManager.GetForecastFolderByName(dir, assetName); var images = _directoryManager.ImagePath(DirSwitcher.Auto, indicator, targetFolder, folder); viewModel.ComponentsPath = images.ComponentsImage; viewModel.ForecastPath = images.ForecastImage; viewModel.AssetName = assetName; viewModel.Indicator = indicator; var pathToOut = _directoryManager.FilePathOut(Path.Combine(dir, targetFolder)); var stats = _fileManager.BuildOutTableRows(pathToOut, periods); viewModel.Table = stats.Table; return(viewModel); } catch (Exception e) { throw new Exception(e.Message); } }