Victor Manuel Muñoz Tirado - A01423434
Vivian Pérez Mosqueda - A01731984
Sebastian Romano Mena - A00831709
library(finreportr)
library(forecast)
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
options(HTTPUserAgent = "a a@gmail.com")
CompanyInfo("MSFT")
## company CIK SIC state state.inc FY.end street.address
## 1 MICROSOFT CORP 0000789019 7372 WA WA 0630 ONE MICROSOFT WAY
## city.state
## 1 REDMOND WA 98052-6399
AnnualReports("MSFT")
## filing.name filing.date accession.no
## 1 10-K 2023-07-27 0000950170-23-035122
## 2 10-K 2022-07-28 0001564590-22-026876
## 3 10-K 2021-07-29 0001564590-21-039151
## 4 10-K 2020-07-30 0001564590-20-034944
## 5 10-K 2019-08-01 0001564590-19-027952
## 6 10-K 2018-08-03 0001564590-18-019062
## 7 10-K 2017-08-02 0001564590-17-014900
## 8 10-K 2016-07-28 0001193125-16-662209
## 9 10-K 2015-07-31 0001193125-15-272806
## 10 10-K 2014-07-31 0001193125-14-289961
## 11 10-K 2013-07-30 0001193125-13-310206
## 12 10-K 2012-07-26 0001193125-12-316848
## 13 10-K 2011-07-28 0001193125-11-200680
## 14 10-K 2010-07-30 0001193125-10-171791
## 15 10-K 2009-07-30 0001193125-09-158735
## 16 10-K 2008-07-31 0001193125-08-162768
## 17 10-K 2007-08-03 0001193125-07-170817
## 18 10-K 2006-08-25 0001193125-06-180008
## 19 10-K 2005-08-26 0001193125-05-174825
## 20 10-K 2004-09-01 0001193125-04-150689
## 21 10-K 2003-09-05 0001193125-03-045632
## 22 10-K 2002-09-06 0001032210-02-001351
## 23 10-K 2001-09-18 0001032210-01-501099
## 24 10-K 2000-09-28 0001032210-00-001961
## 25 10-K 1999-09-28 0001032210-99-001375
## 26 10-K 1998-09-25 0001032210-98-001067
## 27 10-K 1997-09-29 0001017062-97-001764
## 28 10-K 1996-09-27 0000891020-96-001130
## 29 10-K 1995-09-25 0000891020-95-000433
## 30 10-K 1994-09-27 0000891020-94-000175
msft_income <- GetIncome("MSFT", 2016)
msft_income2 <- GetIncome("MSFT", 2013)
msft_income3 <- GetIncome("MSFT", 2017)
resultado <- rbind(msft_income,msft_income2,msft_income3)
str(resultado)
## 'data.frame': 341 obs. of 5 variables:
## $ Metric : chr "Cost of Goods Sold" "Cost of Goods Sold" "Cost of Goods Sold" "Cost of Services and Other" ...
## $ Units : chr "iso4217_USD" "iso4217_USD" "iso4217_USD" "iso4217_USD" ...
## $ Amount : chr "16681000000" "21410000000" "17880000000" "10397000000" ...
## $ startDate: chr "2013-07-01" "2014-07-01" "2015-07-01" "2013-07-01" ...
## $ endDate : chr "2014-06-30" "2015-06-30" "2016-06-30" "2014-06-30" ...
resultado$startDate <- as.Date(resultado$startDate)
resultado$endDate <- as.Date(resultado$endDate)
resultado$Amount <- as.numeric(resultado$Amount)
str(resultado)
## 'data.frame': 341 obs. of 5 variables:
## $ Metric : chr "Cost of Goods Sold" "Cost of Goods Sold" "Cost of Goods Sold" "Cost of Services and Other" ...
## $ Units : chr "iso4217_USD" "iso4217_USD" "iso4217_USD" "iso4217_USD" ...
## $ Amount : num 1.67e+10 2.14e+10 1.79e+10 1.04e+10 1.16e+10 ...
## $ startDate: Date, format: "2013-07-01" "2014-07-01" ...
## $ endDate : Date, format: "2014-06-30" "2015-06-30" ...
resultado_income <- resultado[resultado$Metric=="Revenue, Net",]
ts <- ts(data=resultado_income$Amount, start = c(2013,1), frequency=1)
ts
## Time Series:
## Start = 2013
## End = 2023
## Frequency = 1
## [1] 8.6833e+10 9.3580e+10 8.5320e+10 2.1729e+10 2.2180e+10 2.0531e+10
## [7] 2.0614e+10 2.3201e+10 2.6470e+10 2.0379e+10 2.3796e+10
arima <- auto.arima(ts)
pronostico <- forecast(arima, level=c(95), h=5)
plot(pronostico)