https://rpubs.com/staszkiewicz/Cw_4_EN
The task is to calculate the expected materiality for the entities banking entities in the US market. We will use primary data from the article Audit fee and banks’ communication sentiment. Economic Research-Ekonomska Istraživanja. https://doi.org/10.1080/1331677X.2021.1985567 Staszkiewicz and Karkowska (2021). The data are, as usual, available from the Essential (“Public Materials Public Materials”) file named Bank.cvs. Please download it to your computer and upload it to R. Please note that the data may be used after the class only for non-commercial purposes by indicating the original source.
# z bazowych funkcji systemu wczytamy klasyczny plik z csv ale w taki sposób
# że wybierzemy z okienka umiejscowienie pliku na włanym komuterze
# dlaego zagnieżdzamy polecenie "file.choose()"
bank <- read.csv("Cw2/Bank.csv")
In the original language of the standard there are two terms materiality and significance, both of which are translated into Polish Both are translated into Polish as materiality, which gives rise to numerous interpretational perplexities. Lets return to the original meaning of materiality as significance – it is the probability of an event, a term primarily All statistics use the term to describe whether an event (e.g., a test of a test) is likely or nearly impossible. It is expressed as a percentage. Materiality in the sense of materiality is a concept used in auditing and is defined as an error, omission or an error, omission or misstatement whose occurrence alters the decision to use financial statements. It is expressed in monetary value. Despite many similarities, they are different concepts and should not be should not be equated. Auditing standards do not specify how to measure materiality in the sense of materiality The auditing standards do not specify how materiality should be measured in the materiality* sense and leave this concept as a blanket standard to be The auditing standards do not specify how materiality should be measured and leave it as a blank check to be defined by the auditor in the course of the audit. In the following materiality will be understood as materiality in the sense of auditing.
Since materiality is an undefined concept practice has developed its measurement.
Dimensions of materiality:
misrepresentation could influence the economic decision of a user of financial statements.
(3) No matter how the auditor determines the level of materiality –. always that level will be treated as professional judgment.
(4) The materiality level primarily affects:
The identification of areas of risk
The type and extent of audit testing
Formulation of opinions.
In practice, materiality is determined as a fraction of a stable position The following are some of the key considerations that should be taken into account in determining materiality
Scope | |||
---|---|---|---|
Net profit | 5–10% | ||
Sales revenues | 0.5–1% | ||
Net equity | 3–7% | ||
The following coefficients were calculated for the period from the beginning of the year to the end of the year. |
The above-mentioned ratios are different for different audit firms and result The above coefficients are different for different audit firms and result from their own internal control system, audit methodology, and The level of civil residual risk insurance.
During the audit it may turn out that the auditor found small errors (trivial error), whether the error will be taken into account in the overall The steering parameter called the minimum error shown in the statement of unadjusted audit differences, calculated The second control parameter is the error in the summary of audit differences.
The second control parameter is called the tolerable error. tolerable The second control parameter is the tolerable error, which is a value of aggregated error, which size does not cause The second control parameter is the tolerable error*, which is a value of aggregate error, which size does not cause modification of opinions, typically it is 70-80% of significance.
It should be noted, however, that materiality is defined as in It should also be noted that materiality is referred to as Planing materiality in English. This is due to the fact that it is determined on the basis of preliminary financial This is due to the fact that it is determined on the basis of preliminary financial statements (or forecasts thereof) before This is because it is determined on the basis of initial financial statements (or a forecast thereof) prior to audit testing. After completing the audit procedures, and before issuing audit procedures and before issuing an opinion, the auditor must update his materiality assessment on the based on the revised financial statements. While this is formally a a continuing obligation, however, in practice it is performed prior to planning and before issuing the opinion.
We are going to count the ossibility for US banks. First, let us generate the necessary data frame. For this we will use the tidyverse library. If someone does not have has it on your machine you should install it by using install.library() function. Lets choose the following variables (columns of our database) database) namely: CIK_Code, Companyx,Auditorx,Audit_Fees_USDx,Year_Ended_Datex,Revenue_USDx_N,Earnings_USDx_N,Assets_USDx_N, Total_Equity
Once the data is loaded, lets use the colnames command to see what data we have available
colnames(bank)
## [1] "CIK_Code" "Year_Ended"
## [3] "Companyx" "Tickerx"
## [5] "Marketx" "IRS_Number"
## [7] "Bus_Street_1x" "Bus_Street_2x"
## [9] "Cityx" "Countyx"
## [11] "State_Codex" "State_Namex"
## [13] "Region" "Zipx"
## [15] "Bus_Phonex" "Incorporation_State_Code"
## [17] "Parent_CIKx" "Parent_Namex"
## [19] "SIC_Codex" "SIC_Descriptionx"
## [21] "NAICS_Codex" "NAICS_Descriptionx"
## [23] "Filer_Actx" "Auditorx"
## [25] "Auditor_Keyx" "Audit_Fees_USDx"
## [27] "Audit_Related_FeesUSD" "Benefit_Plan_Related_Fees_USD"
## [29] "FISDI_Fees_USD" "Tax_Related_Fees_USD"
## [31] "Tax_Related_Fees__ComplianceUSD" "Tax_Related_Fees__NonComplianc"
## [33] "OtherMisc_Fees_USD" "Total_Non_Audit_Fees_USD"
## [35] "Total_Fees_USDx" "Currency"
## [37] "Fees_Include_Subsidiaries" "Fees_Included_In_Parent_Filings"
## [39] "Restatement" "Year_Ended_Datex"
## [41] "Year_Ended_Month_Ideal" "Fiscal_Year_Ends_Currently_Repo"
## [43] "Sourcex" "Source_Datex"
## [45] "Stock_Price_USDx" "Stock_Price_Datex"
## [47] "Market_Cap_USDx" "Market_Cap_USDx_N"
## [49] "Finacls_Datex" "Revenue_USDx"
## [51] "Revenue_USDx_N" "Earnings_USDx"
## [53] "Earnings_USDx_N" "Book_Value_USDx"
## [55] "Book_Value_USDx_N" "Assets_USDx"
## [57] "Assets_USDx_N" "State_Region"
## [59] "Audit_Opinion_Key" "Auditor_City"
## [61] "Auditor_State_Code" "Auditor_State_Name"
## [63] "Auditor_State_Region" "Year_Ended_Ideal"
## [65] "Month_Ended_Ideal" "Signature_Date"
## [67] "Sourcey" "Source_Datey"
## [69] "Going_Concern" "Going_Concern_Issue_Key_List"
## [71] "Going_Concern_Issue_Phrase_List" "Accounting_Basis"
## [73] "Is_Integrated_Audit" "Is_Additiol_Opinion"
## [75] "Additiol_Sigture_Date_1" "Additiol_Sigture_Date_2"
## [77] "Additiol_Sigture_Date_3" "Additiol_Sigture_Date_4"
## [79] "Additiol_Sigture_Date_5" "Filer_Status"
## [81] "Fees_Fiscal_Year_Ended" "Audit_Fees_USDy"
## [83] "NonAudit_Fees_USD" "Total_Fees_USDy"
## [85] "Stock_Price_USDy" "Stock_Price_Datey"
## [87] "Market_Cap_USDy" "Fincials_Datey"
## [89] "Revenue_USDy" "Earnings_USDy"
## [91] "Book_Value_USDy" "Assets_USDy"
## [93] "Country_of_Headquarters" "Company_Common_Name"
## [95] "Total_Assets" "Total_Equity"
## [97] "ROA" "Net_Interest_Margin_Total_"
## [99] "Fee_Revenue_" "Efficiency_Ratio_"
## [101] "Operating_Leverage" "Labor_And_Related_Expense"
## [103] "Noninterest_IncomeOp_Inc" "Net_Loans__PeriodPeriod"
## [105] "Deposits__PeriodPeriod" "Loan_Loss_Provision__of_Loans"
## [107] "Nonperforming_Loans__of_Loans" "Tier_1_RiskAdjusted_Capital_Rat"
## [109] "EOP_LoansEOP_Deposits" "Securities__Avg_Earning_Assets"
## [111] "Going_Convern_Value" "isdup"
## [113] "dup" "suma_Poz"
## [115] "SumaNegat" "Rel_Poz"
## [117] "Rel_Neg" "Total_Words"
## [119] "Rel_total" "Poz_to_Neg"
## [121] "Poz_to_ALL" "Poz_toAllMinus_NegToAll"
## [123] "X_merge_sentiment" "id"
## [125] "bank_name" "Moodyslong_d"
## [127] "Moodysshort_d" "SPshort_d"
## [129] "SPlong_d" "SPlong_f"
## [131] "SPshort_f" "Moodyslong_f"
## [133] "Fitchlong_f" "CIK_Code_2"
## [135] "X_merge" "sd_ROA"
## [137] "ZSCORE" "Audit_B4"
## [139] "Audit_Opininon_GC" "sentiment"
## [141] "audit_fee" "noaudit_fee"
## [143] "size" "loans_growth"
## [145] "npl" "crisis"
## [147] "integ_sen_B4" "integ_sen_aud_fee"
## [149] "integ_sen_cris" "NAICS"
## [151] "audit_fee_u" "noaudit_fee_u"
## [153] "inter_sent_size" "inter_sent_loans"
## [155] "inter_sent_npl" "mean_ROA"
## [157] "ZSCORE_5" "adj_ROA"
## [159] "LEV" "audit_ta"
## [161] "nonaudit_ta" "audit_earn"
## [163] "nonaudit_earn" "totfee_ln"
## [165] "lev_p25y" "lev_p50y"
## [167] "lev_p75y" "lev_p25yy"
## [169] "lev_p50yy" "lev_p75yy"
## [171] "GegraphicalMatch" "State_Namex1"
## [173] "Audit4_sent" "Audit4_size"
## [175] "post_crisis" "Audit4_pcrisis"
## [177] "Audit4_zscore" "Audit4_loan_depo"
## [179] "Audit4_llp" "Audit4_opinion"
## [181] "Auditor_1" "Auditor_10"
## [183] "Auditor_10a" "sent_Audit4"
## [185] "sent_opinion" "sent_size"
## [187] "sent_zscore" "sent_loan_depo"
## [189] "sent_llp" "sent_pcrisis"
## [191] "sentiment_growth" "totfee_ln_growth"
## [193] "average_sentiment" "nyear"
## [195] "X_est_IVall" "X_est_IVall_cencored"
## [197] "censor"
And then lets generate the data frame needed for further analysis calling it PM and let’s see the first records using the head function
library(tidyverse) #bibloteka
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✓ ggplot2 3.3.5 ✓ purrr 0.3.4
## ✓ tibble 3.1.6 ✓ dplyr 1.0.8
## ✓ tidyr 1.2.0 ✓ stringr 1.4.0
## ✓ readr 2.1.2 ✓ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
PM<- bank %>% select(CIK_Code, Companyx,Auditorx,Audit_Fees_USDx,Year_Ended_Datex,Revenue_USDx_N,Earnings_USDx_N,Assets_USDx_N, Total_Equity )
# obejrzymy co uzyskaliśmy
head(PM)
## CIK_Code Companyx Auditorx Audit_Fees_USDx Year_Ended_Datex
## 1 7789 ASSOCIATED BANC-CORP KPMG LLP 288000 12/31/2000
## 2 7789 ASSOCIATED BANC-CORP KPMG LLP 405700 12/31/2001
## 3 7789 ASSOCIATED BANC-CORP KPMG LLP 403100 12/31/2002
## 4 7789 ASSOCIATED BANC-CORP KPMG LLP 380120 12/31/2003
## 5 7789 ASSOCIATED BANC-CORP KPMG LLP 842700 12/31/2004
## 6 7789 ASSOCIATED BANC-CORP KPMG LLP 725000 12/31/2005
## Revenue_USDx_N Earnings_USDx_N Assets_USDx_N Total_Equity
## 1 1123002000 167983000 13128394000 968696000
## 2 1076225000 179522000 13604374000 1070416000
## 3 1012841000 210719000 15043275000 1272183000
## 4 973799000 228657000 15247894000 1348427000
## 5 977369000 258286000 20520136000 2017419000
## 6 1385111000 320161000 22100082000 2324978000
Now we can enrich our framework with additional columns showing materiality ranges that we will take into account. To build the ranges we can use new columns by generating them according to the PM-dollar sign rule name_columyy<- [what it has]. For example, in Table 1 we have a value of profit n etto from 5-10%. In view of the above, let’s mash up two columns and see them:
PM$ER_0.05<- (PM$Earnings_USDx_N)*0.05
PM$ER_0.1<- (PM$Earnings_USDx_N)*0.10
head(PM %>% select(ER_0.05,ER_0.1))
## ER_0.05 ER_0.1
## 1 8399150 16798300
## 2 8976100 17952200
## 3 10535950 21071900
## 4 11432850 22865700
## 5 12914300 25828600
## 6 16008050 32016100
Since we already know how to build new data let’s generate all the columns, just as as we did for the results, for assets, capital, and income.
# dla aktywów
PM$TAS_0.001<- (PM$Assets_USDx_N)*0.001
PM$TAS_0.01<- (PM$Assets_USDx_N)*0.010
# dla przychodów 0.5-1%
PM$REV_0.005<- PM$Revenue_USDx_N*0.005
PM$REV_0.01<- PM$Revenue_USDx_N*0.01
# dla kapitałóW 3--7%
PM$EQU_0.03<- PM$Total_Equity*0.03
PM$EQU_0.07<- PM$Total_Equity*0.07
# zobaczmy uzupełnioną bazę
head(PM)
## CIK_Code Companyx Auditorx Audit_Fees_USDx Year_Ended_Datex
## 1 7789 ASSOCIATED BANC-CORP KPMG LLP 288000 12/31/2000
## 2 7789 ASSOCIATED BANC-CORP KPMG LLP 405700 12/31/2001
## 3 7789 ASSOCIATED BANC-CORP KPMG LLP 403100 12/31/2002
## 4 7789 ASSOCIATED BANC-CORP KPMG LLP 380120 12/31/2003
## 5 7789 ASSOCIATED BANC-CORP KPMG LLP 842700 12/31/2004
## 6 7789 ASSOCIATED BANC-CORP KPMG LLP 725000 12/31/2005
## Revenue_USDx_N Earnings_USDx_N Assets_USDx_N Total_Equity ER_0.05 ER_0.1
## 1 1123002000 167983000 13128394000 968696000 8399150 16798300
## 2 1076225000 179522000 13604374000 1070416000 8976100 17952200
## 3 1012841000 210719000 15043275000 1272183000 10535950 21071900
## 4 973799000 228657000 15247894000 1348427000 11432850 22865700
## 5 977369000 258286000 20520136000 2017419000 12914300 25828600
## 6 1385111000 320161000 22100082000 2324978000 16008050 32016100
## TAS_0.001 TAS_0.01 REV_0.005 REV_0.01 EQU_0.03 EQU_0.07
## 1 13128394 131283940 5615010 11230020 29060880 67808720
## 2 13604374 136043740 5381125 10762250 32112480 74929120
## 3 15043275 150432750 5064205 10128410 38165490 89052810
## 4 15247894 152478940 4868995 9737990 40452810 94389890
## 5 20520136 205201360 4886845 9773690 60522570 141219330
## 6 22100082 221000820 6925555 13851110 69749340 162748460
There is no method to explicitly select a value from the possible ranges. As a rule, negative values are not taken into account, and the final selection is the auditor’s professional judgement. auditor. This judgment must be documented in the working papers. Hence, the institution of judgment is not arbitrariness, but a choice in the inflicted scope. The formulation of judgment requires consideration of information quantitative and qualitative (e.g. characteristics of the entity) in our case In our case, banks are supervised by a regulatory requirement that relates to The typical starting point will be equity.
It is also worth noting that the choice of the basis for analysis is not necessarily It is also worth noting that the choice of base for analysis is not necessarily random, and relates to the relationship with the ultimate shareholder. More about who it is, how it is analyzed etc. here Staszkiewicz and Szelągowska (2019), although again this is an item more for hobbyists. Returning to thoughts in industrial companies the typical decision path is the following:
profit - refers to a distributed shareholder living off dividends, because then the most important annual income in addition to unrealized capital gain, is the declared dividend. dividend.
Equity - rather to majority shareholder concentrated, because it shows the linear (book) value of assets under their control. control.
Earnings - in case of expected acquisitions, mergers, change of significant shareholding, because it shows market share.
total assets - rarely rather for “too big to fail” illustrates the impact of social and systemic impact of entities,
As an example, let’s try to count istonity as a weighted average of the ranges indicated in Table 1 for all entities in individual years. Let’s generate a new variable called PM
sr<- apply(PM[10:17], 1, mean, na.omit=T) #średnia po krotkach
PM$PM <-sr
head(PM)
## CIK_Code Companyx Auditorx Audit_Fees_USDx Year_Ended_Datex
## 1 7789 ASSOCIATED BANC-CORP KPMG LLP 288000 12/31/2000
## 2 7789 ASSOCIATED BANC-CORP KPMG LLP 405700 12/31/2001
## 3 7789 ASSOCIATED BANC-CORP KPMG LLP 403100 12/31/2002
## 4 7789 ASSOCIATED BANC-CORP KPMG LLP 380120 12/31/2003
## 5 7789 ASSOCIATED BANC-CORP KPMG LLP 842700 12/31/2004
## 6 7789 ASSOCIATED BANC-CORP KPMG LLP 725000 12/31/2005
## Revenue_USDx_N Earnings_USDx_N Assets_USDx_N Total_Equity ER_0.05 ER_0.1
## 1 1123002000 167983000 13128394000 968696000 8399150 16798300
## 2 1076225000 179522000 13604374000 1070416000 8976100 17952200
## 3 1012841000 210719000 15043275000 1272183000 10535950 21071900
## 4 973799000 228657000 15247894000 1348427000 11432850 22865700
## 5 977369000 258286000 20520136000 2017419000 12914300 25828600
## 6 1385111000 320161000 22100082000 2324978000 16008050 32016100
## TAS_0.001 TAS_0.01 REV_0.005 REV_0.01 EQU_0.03 EQU_0.07 PM
## 1 13128394 131283940 5615010 11230020 29060880 67808720 35415552
## 2 13604374 136043740 5381125 10762250 32112480 74929120 37470174
## 3 15043275 150432750 5064205 10128410 38165490 89052810 42436849
## 4 15247894 152478940 4868995 9737990 40452810 94389890 43934384
## 5 20520136 205201360 4886845 9773690 60522570 141219330 60108354
## 6 22100082 221000820 6925555 13851110 69749340 162748460 68049940
Lets determine the materialtiy distribution in our population (# xlim=c(100,150700000),)
hist(PM$PM,
freq = T,
main="Histogram ",
xlab="Materiality",
border="blue",
col="green",
las=1,
breaks=20000)
min(PM$PM,na.rm=T) # wartość minimalna istotnośći
## [1] -2187282
max(PM$PM, na.rm=T) # Wartość maskymalna istotności
## [1] 6845808375
And now we’re still going to have a third column that shows us the contribution of , and in the auditor’s remuneration to materiality. What can we conclude from such a distribution we can conclude?
PM$AFR<- PM$Audit_Fees_USDx/PM$PM
hist(PM$AFR)
summary(PM$AFR, na.omit=T)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -0.43106 0.03657 0.05612 0.06966 0.08350 1.46075 102
Let us calculate in how many cases materiality is greater than the fee of the auditor’s fee. We check how many entities we have in our database. We apply the Hmisc() library and the desribe function to understand our data.
library(Hmisc)
## Loading required package: lattice
## Loading required package: survival
## Loading required package: Formula
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:dplyr':
##
## src, summarize
## The following objects are masked from 'package:base':
##
## format.pval, units
# opiszemy istotnść
describe(PM$PM)
## PM$PM
## n missing distinct Info Mean Gmd .05 .10
## 5254 102 5254 1 58400064 109091292 545349 817624
## .25 .50 .75 .90 .95
## 1432811 2924430 8938676 32513831 77318372
##
## lowest : -2187282.25 45102.04 51890.38 77399.02 80998.13
## highest: 6222176125.00 6266835500.00 6359387750.00 6624245875.00 6845808375.00
# opiszemy stosunek istotności do wynagrodzenie
describe(PM$AFR)
## PM$AFR
## n missing distinct Info Mean Gmd .05 .10
## 5254 102 5232 1 0.06966 0.05324 0.01361 0.02142
## .25 .50 .75 .90 .95
## 0.03657 0.05612 0.08350 0.12183 0.15548
##
## lowest : -0.4310641665 0.0000000000 0.0005206947 0.0005843161 0.0006393261
## highest: 0.9120270117 0.9374620286 1.0080232566 1.2140979902 1.4607497774
All our observations in the database are 5356 as the result
nrow(PM)
hence 5352 as the result
nrow(PM[PM$PM>PM$Audit_Fees_USDx, ])
.
Calculate the parameters of the significance model in the population
$$ PM = a_{0}+a_{1}x_{1}+a_{2}x_{2}+… a_{n}x_{n}+$ With let the first, second, and third non-dependent variables be: total assets, capital, and result.
model<-lm(PM$PM~PM$Assets_USDx_N+PM$Total_Equity+PM$Earnings_USDx_N)
Let us summarize the model:
summary(model)
##
## Call:
## lm(formula = PM$PM ~ PM$Assets_USDx_N + PM$Total_Equity + PM$Earnings_USDx_N)
##
## Residuals:
## Min 1Q Median 3Q Max
## -121975562 -133433 -110813 -83837 80521989
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.089e+05 5.721e+04 1.904 0.057 .
## PM$Assets_USDx_N 1.565e-03 1.966e-06 795.860 <2e-16 ***
## PM$Total_Equity 1.151e-02 1.966e-05 585.535 <2e-16 ***
## PM$Earnings_USDx_N 2.047e-02 5.943e-05 344.441 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4109000 on 5250 degrees of freedom
## (102 observations deleted due to missingness)
## Multiple R-squared: 0.9999, Adjusted R-squared: 0.9999
## F-statistic: 1.965e+07 on 3 and 5250 DF, p-value: < 2.2e-16
And some plots:
plot(model)
Based on the American significance value model, determine the expected significance for WIG index companies, and the average for the index.
Great Pleasure p. 130
Blue Caffee p. 146
Application of AI in auditing p. 163
## To read:
Blokdijk et al. (2003), DeZoort, Harrison, and Taylor (2006), Martinov and Roebuck (1998)