public double?GetAssetsToLiabilities(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var balanceSheets = dataPoco.BalanceSheets; var orderedBalanceSheets = new List <ExtractedBalanceSheet>(); orderedBalanceSheets = balanceSheets.OrderBy(x => x.Year).ToList(); var lastYearBalanceSheet = orderedBalanceSheets.LastOrDefault(); if (lastYearBalanceSheet == null) { return(null); } var extractedValue = new ExtractedValue(); var totalAssets = (double?)lastYearBalanceSheet.TotalAssets; var totalLiabelities = (double?)lastYearBalanceSheet.TotalLiabilities; double?assetsToLiabilities = 0; if (totalAssets != 0) { assetsToLiabilities = totalAssets / totalLiabelities; } var result = extractedValue.Value = assetsToLiabilities; extractedValue.Year = lastYearBalanceSheet.Year; extractedValue.CompanyId = lastYearBalanceSheet.CompanyId; return(result); }
public ExtractedValue GetStockPrice(CompanyDataPoco dataPoco) { var company = dataPoco.Company; var extractedValue = new ExtractedValue(); extractedValue.Value = (double)company.StockPrice; extractedValue.CompanyId = company.Id; extractedValue.Year = DateTime.Now.Year; return(extractedValue); }
public List <ExtractedValue> GetEPS(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var incomeStatements = dataPoco.IncomeStatements; foreach (var item in incomeStatements) { var extractedValue = new ExtractedValue(); extractedValue.Year = item.Year; extractedValue.Value = (double?)item.EpsBasic; extractedValue.CompanyId = item.CompanyId; extractedValues.Add(extractedValue); } return(extractedValues.OrderBy(x => x.Year).ToList()); }
public List <ExtractedValue> GetRoic(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var keyRatios = dataPoco.KeyRatios; foreach (var item in keyRatios) { var extractedValue = new ExtractedValue(); extractedValue.Year = item.Year; extractedValue.Value = item.ReturnOnInvestedCapital; extractedValue.CompanyId = item.CompanyId; extractedValues.Add(extractedValue); } return(extractedValues.OrderBy(x => x.Year).ToList()); }
public StockAnalysis(CompanyDataPoco dataPoco) { var financial = new FinancialAnalysis(); RoicSlopeInfo = new SlopeInfo(financial.GetRoic(dataPoco)); RevenueSlopeInfo = new SlopeInfo(financial.GetRevenue(dataPoco)); MarketCapSlopeInfo = new SlopeInfo(financial.GetMarketCap(dataPoco)); DividendsSlopeInfo = new SlopeInfo(financial.GetDividends(dataPoco)); EPSSlopeInfo = new SlopeInfo(financial.GetEPS(dataPoco)); EquitySlopeInfo = new SlopeInfo(financial.GetEquity(dataPoco)); PriceToEarningsSlopeInfo = new SlopeInfo(financial.GetPriceToEarnings(dataPoco)); Company = dataPoco.Company; IncomeStatements = dataPoco.IncomeStatements; BalanceSheets = dataPoco.BalanceSheets; KeyRatios = dataPoco.KeyRatios; CashFlowStatements = dataPoco.CashFlowStatements; IncomeStatementTtm = dataPoco.IncomeStatementTtm; CashFlowStatementTtm = dataPoco.CashFlowStatementTtm; DebtToEquity = financial.GetDebtToEquity(dataPoco); AssetsToLiabilities = financial.GetAssetsToLiabilities(dataPoco); if (financial.GetRoic(dataPoco).LastOrDefault() != null) { Roic = financial.GetRoic(dataPoco).LastOrDefault().Value; } if (financial.GetEquity(dataPoco).LastOrDefault() != null) { Equity = financial.GetEquity(dataPoco).LastOrDefault().Value; } if (financial.GetEPS(dataPoco).LastOrDefault() != null) { EPS = financial.GetEPS(dataPoco).LastOrDefault().Value; } if (financial.GetRevenue(dataPoco).LastOrDefault() != null) { Revenue = financial.GetRevenue(dataPoco).LastOrDefault().Value; } if (financial.GetPriceToEarnings(dataPoco).LastOrDefault() != null) { PERatio = financial.GetPriceToEarnings(dataPoco).LastOrDefault().Value; } if (financial.GetStockPrice(dataPoco) != null) { StockPrice = financial.GetStockPrice(dataPoco).Value; } }
public List <ExtractedValue> GetMarketCap(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var keyRatios = dataPoco.KeyRatios; foreach (var item in keyRatios) { var extractedValue = new ExtractedValue(); extractedValue.Year = item.Year; extractedValue.Value = (double?)item.MarketCapitalization; extractedValue.CompanyId = item.CompanyId; extractedValues.Add(extractedValue); } return(extractedValues.OrderBy(x => x.Year).ToList()); }
public List <ExtractedValue> GetEquity(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var balanceSheets = dataPoco.BalanceSheets; foreach (var item in balanceSheets) { var extractedValue = new ExtractedValue(); extractedValue.Year = item.Year; extractedValue.Value = (double?)(item.TotalAssets - item.TotalLiabilities); extractedValue.CompanyId = item.CompanyId; extractedValues.Add(extractedValue); } return(extractedValues.OrderBy(x => x.Year).ToList()); }
public List <ExtractedValue> GetDividends(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var keyRatios = dataPoco.KeyRatios; foreach (var item in keyRatios) { var extractedValue = new ExtractedValue(); extractedValue.Year = item.Year; extractedValue.Value = item.DividendsPerShare; extractedValue.CompanyId = item.CompanyId; extractedValues.Add(extractedValue); } return(extractedValues.OrderBy(x => x.Year).ToList()); }
public List <ExtractedValue> GetPriceToEarnings(CompanyDataPoco dataPoco) { if (dataPoco.KeyRatios == null) { return(null); } var extractedValues = new List <ExtractedValue>(); var keyRatios = dataPoco.KeyRatios; foreach (var item in keyRatios) { var extractedValue = new ExtractedValue(); extractedValue.Year = item.Year; extractedValue.Value = item.PriceToEarnings; extractedValue.CompanyId = item.CompanyId; extractedValues.Add(extractedValue); } return(extractedValues.OrderBy(x => x.Year).ToList()); }
public double?GetDebtToEquity(CompanyDataPoco dataPoco) { var extractedValues = new List <ExtractedValue>(); var balanceSheets = dataPoco.BalanceSheets; var orderedBalanceSheets = new List <ExtractedBalanceSheet>(); orderedBalanceSheets = balanceSheets.OrderBy(x => x.Year).ToList(); var lastYearBalanceSheet = orderedBalanceSheets.LastOrDefault(); if (lastYearBalanceSheet == null) { return(null); } var extractedValue = new ExtractedValue(); var totalLiabilities = lastYearBalanceSheet.TotalLiabilities; var shareholdersEquity = lastYearBalanceSheet.ShareholdersEquity; if (totalLiabilities == null || shareholdersEquity == null) { return(null); } decimal?debtToEquity = 0; if (shareholdersEquity != 0) { debtToEquity = totalLiabilities / shareholdersEquity; } var result = extractedValue.Value = (double?)debtToEquity; extractedValue.CompanyId = lastYearBalanceSheet.Id; extractedValue.Year = lastYearBalanceSheet.Year; return(result); }
public CompanyDetailsController() { this.dataPoco = new CompanyDataPoco(); this.analysis = new AnalysisBusinessObject(); }