Fair Value Measurements - Reconciliation (Details) (USD $)
In Millions, unless otherwise specified |
12 Months Ended | ||
---|---|---|---|
Dec. 31, 2014
|
Dec. 31, 2013
|
Dec. 31, 2012
|
|
Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis, Unobservable Input Reconciliation [Roll Forward] | |||
Balance, beginning | $ (224)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs | $ 1,468us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs | $ 5,866us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs |
Gains (Losses) in Earnings | 463us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings | (304)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings | (221)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings |
Gains (Losses) in OCI | 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInOtherComprehensiveIncomeLoss | 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInOtherComprehensiveIncomeLoss | 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInOtherComprehensiveIncomeLoss |
Purchases | 823us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationPurchases | 824us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationPurchases | 893us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationPurchases |
Sales | (1,738)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales | (1,467)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales | (1,012)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSales |
Issuances | 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationIssues | 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationIssues | 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationIssues |
Settlements | (432)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSettlements | (1,362)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSettlements | (3,328)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationSettlements |
Gross Transfers into Level 3 | 28us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3 | (10)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3 | (269)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3 |
Gross Transfers out of Level 3 | 160us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersOutOfLevel3 | 627us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersOutOfLevel3 | (461)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersOutOfLevel3 |
Balance, ending | (920)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs | (224)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs | 1,468us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs |
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Transfers between asset classes | 900bac_FairValueMeasurementwithUnobservableInputsReconciliationRecurringBasisAssetTransfersBetweenAssetClasses | ||
Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items] | |||
Gross Derivative Assets | 984,800us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement | 920,300us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement | |
Gross Derivative Liabilities | 981,800us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement | 906,400us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement | |
Level 3 | Recurring | |||
Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis, Unobservable Input Reconciliation [Roll Forward] | |||
Balance, ending |
(920)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
(224)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
|
Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items] | |||
Gross Derivative Assets |
6,851us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
7,277us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
8,100us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
Gross Derivative Liabilities |
7,771us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
7,501us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
6,600us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember |
Corporate securities, trading loans and other | |||
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
(35)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(64)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(114)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gains (Losses) in Earnings |
1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Sales |
(10)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(43)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(116)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Sales |
13us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
54us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
136us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Settlements |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
80us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gross Transfers into Level 3 |
(9)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(9)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(68)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gross Transfers out of Level 3 |
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
44us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
54us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Balance, ending |
(36)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(35)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(64)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Short-term borrowings | |||
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Gains (Losses) in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Issuances |
(232)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Settlements |
232us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Gross Transfers out of Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Balance, ending |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_ShortTermDebtMember |
||
Accrued expenses and other liabilities | |||
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
(10)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(15)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(14)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Gains (Losses) in Earnings |
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(4)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(8)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Issuances |
(3)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(751)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(9)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Settlements |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
724us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(1)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Gross Transfers out of Level 3 |
1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
3us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Balance, ending |
(10)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(10)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
(15)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = bac_AccruedExpensesandOtherLiabilitiesMember |
Long-term debt | |||
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
(1,990)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(2,301)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(2,943)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Gains (Losses) in Earnings |
49us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
13us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(307)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Sales |
(169)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(358)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(290)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
33us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySales / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Issuances |
(615)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(172)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(259)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Settlements |
540us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
258us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
1,239us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Gross Transfers into Level 3 |
(1,581)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(1,331)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(2,040)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Gross Transfers out of Level 3 |
1,066us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
1,189us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
1,752us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3 / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
Balance, ending |
(2,362)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(1,990)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
(2,301)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue / us-gaap_FairValueByLiabilityClassAxis = us-gaap_LongTermDebtMember |
U.S. government and agency securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Gains (Losses) in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Purchases |
87us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Sales |
(87)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Settlements |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Gross Transfers out of Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Balance, ending |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember |
||
Corporate securities, trading loans and other | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
3,559us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
3,726us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
6,880us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gains (Losses) in Earnings |
180us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
242us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
195us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Purchases |
1,675us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
3,848us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
2,798us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Sales |
(857)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(3,110)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(4,556)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
59us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Settlements |
(938)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(651)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(1,077)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gross Transfers into Level 3 |
1,275us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
890us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
436us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Gross Transfers out of Level 3 |
(1,624)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(1,445)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
(950)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Balance, ending |
3,270us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
3,559us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
3,726us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember |
Equity securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
386us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
545us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
544us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Gains (Losses) in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
74us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
31us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Purchases |
104us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
96us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
201us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Sales |
(86)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
(175)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
(271)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Settlements |
(16)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
(100)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
27us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Gross Transfers into Level 3 |
146us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
70us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
90us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Gross Transfers out of Level 3 |
(182)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
(124)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
(77)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Balance, ending |
352us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
386us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
545us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_EquitySecuritiesMember |
Non-U.S. sovereign debt | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
468us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
353us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
342us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Gains (Losses) in Earnings |
30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
50us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Purchases |
120us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
122us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
388us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Sales |
(34)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
(18)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
(359)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Settlements |
(19)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
(36)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
(5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Gross Transfers into Level 3 |
11us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Gross Transfers out of Level 3 |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
(5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
(21)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Balance, ending |
574us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
468us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
353us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember |
Mortgage trading loans and ABS | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
4,631us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
4,935us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
3,689us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Gains (Losses) in Earnings |
199us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
53us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
215us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Purchases |
1,643us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
2,514us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
2,574us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Sales |
(1,259)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
(1,993)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
(1,536)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Settlements |
(585)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
(868)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
(678)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Gross Transfers into Level 3 |
39us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
20us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
844us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Gross Transfers out of Level 3 |
(2,605)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
(30)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
(173)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Balance, ending |
2,063us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
4,631us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
4,935us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember |
Trading Securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
9,044us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
9,559us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
11,455us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Gains (Losses) in Earnings |
409us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
419us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
449us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Purchases |
3,629us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
6,580us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
5,961us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Sales |
(2,323)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
(5,296)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
(6,722)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
59us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Settlements |
(1,558)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
(1,655)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
(1,733)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Gross Transfers into Level 3 |
1,471us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
982us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
1,370us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Gross Transfers out of Level 3 |
(4,413)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
(1,604)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
(1,221)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Balance, ending |
6,259us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
9,044us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
9,559us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_TradingAccountAssetsMember |
Agency | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
37us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Gains (Losses) in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Settlements |
(4)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Gross Transfers out of Level 3 |
(33)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Balance, ending |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_MortgageBackedSecuritiesAgencyMember |
||
Non-agency residential | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
860us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Gains (Losses) in Earnings |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
(69)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
19us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Purchases |
11us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
(306)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Settlements |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Gross Transfers into Level 3 |
270us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Gross Transfers out of Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
(502)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Balance, ending |
279us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember |
|
Commercial | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
40us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Gains (Losses) in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
(24)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Settlements |
(10)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
(6)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Gross Transfers out of Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Balance, ending |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_CommercialMortgageBackedSecuritiesMember |
|
Non-U.S. securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
107us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Gains (Losses) in Earnings |
(7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
5us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Gains (Losses) in OCI |
(11)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Purchases |
241us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
(1)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Settlements |
(147)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
100us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Gross Transfers out of Level 3 |
(173)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Balance, ending |
10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
107us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_ForeignSecuritiesMember |
|
Corporate/Agency bonds | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
92us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
162us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Gains (Losses) in Earnings |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
(2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Settlements |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
(39)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Gross Transfers into Level 3 |
93us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Gross Transfers out of Level 3 |
(93)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
(96)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
(27)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Balance, ending |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
92us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_CorporateandAgencyBondsMember |
Other taxable securities, substantially all asset-backed securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
3,847us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
3,928us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
4,265us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Gains (Losses) in Earnings |
9us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
9us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
23us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Gains (Losses) in OCI |
(8)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
15us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
26us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Purchases |
154us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
1,055us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
3,196us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Sales |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
(28)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Settlements |
(1,381)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
(1,155)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
(3,345)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Gross Transfers out of Level 3 |
(954)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
(5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
(209)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Balance, ending |
1,667us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
3,847us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
3,928us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_OtherTaxableSecuritiesMember |
Tax-exempt securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
806us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
1,061us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
2,648us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Gains (Losses) in Earnings |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
3us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
61us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
19us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
20us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Sales |
(16)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
(133)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Settlements |
(235)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
(109)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
(1,535)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Gross Transfers into Level 3 |
36us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Gross Transfers out of Level 3 |
(168)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
|
Balance, ending |
599us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
806us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
1,061us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_TaxExemptSecuritiesMember |
Available-for-sale Securities | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
4,760us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
5,091us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
8,012us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Gains (Losses) in Earnings |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
17us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
13us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Gains (Losses) in OCI |
(19)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
40us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
65us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Purchases |
406us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
1,056us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
3,194us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Sales |
(16)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
(1)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
(491)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Settlements |
(1,763)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
(1,274)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
(4,931)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Gross Transfers into Level 3 |
399us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
100us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Gross Transfers out of Level 3 |
(1,220)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
(269)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
(771)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Balance, ending |
2,555us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
4,760us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
5,091us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_AvailableforsaleSecuritiesMember |
Loans and leases | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
3,057us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
2,287us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
2,744us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Gains (Losses) in Earnings |
69us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
98us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
334us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
310us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
564us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Sales |
(3)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
(128)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
(1,520)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Issuances |
699us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
1,252us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Settlements |
(1,591)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
(757)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
(274)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Gross Transfers into Level 3 |
25us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
19us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
450us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Gross Transfers out of Level 3 |
(273)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
(24)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
(11)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Balance, ending |
1,983us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
3,057us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
2,287us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_LoansReceivableMember |
Mortgage servicing rights | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
5,042us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
5,716us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
7,378us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Gains (Losses) in Earnings |
(1,231)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
1,941us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
(430)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Sales |
(61)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
(2,044)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
(122)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Issuances |
707us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
472us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
374us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Settlements |
(927)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
(1,043)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
(1,484)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Gross Transfers into Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Gross Transfers out of Level 3 |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Balance, ending |
3,530us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
5,042us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
5,716us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_ServicingContractsMember |
Loans Held-for-Sale | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
929us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
2,733us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
3,387us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Gains (Losses) in Earnings |
45us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
62us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
352us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Purchases |
59us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
794us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Sales |
(725)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
(402)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
(834)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Issuances |
23us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
4us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Settlements |
(216)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
(1,507)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
(414)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Gross Transfers into Level 3 |
83us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
34us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
80us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Gross Transfers out of Level 3 |
(25)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
(3)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
(632)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Balance, ending |
173us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
929us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
2,733us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = bac_LoansHeldForSaleMember |
Other assets | |||
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] | |||
Balance, beginning |
1,669us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
3,129us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
4,235us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Gains (Losses) in Earnings |
(98)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(288)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(54)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Gains (Losses) in OCI |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInOtherComprehensiveIncomeLoss / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Purchases |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
46us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
109us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Sales |
(430)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(383)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(1,039)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Issuances |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
270us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetIssues / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Settlements |
(245)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(1,019)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(381)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Gross Transfers into Level 3 |
39us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
239us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersIntoLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Gross Transfers out of Level 3 |
(24)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(55)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
(11)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
Balance, ending |
$ 911us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
$ 1,669us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
$ 3,129us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue / us-gaap_FairValueByAssetClassAxis = us-gaap_OtherAssetsMember |
X | ||||||||||
- Definition
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers Between Asset Classes No definition available.
|
X | ||||||||||
- Definition
Fair value, before effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and elected not to be offset. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Fair value, before effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and elected not to be offset. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Definition
Amount of transfers of financial instrument classified as a liability into level 3 of the fair value hierarchy. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of transfers of financial instrument classified as a liability out of level 3 of the fair value hierarchy. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of gain (loss) recognized in the income statement for financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of gain (loss) recognized in other comprehensive income (loss) for financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of issuances of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of purchases of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of sale of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of settlement of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of transfer of financial instrument classified as an asset into level 3 of the fair value hierarchy. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of transfers of financial instrument classified as an asset out of level 3 of the fair value hierarchy. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Fair value of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of gain (loss) recognized on the income statement for financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of gain (loss) recognized in other comprehensive income (loss) for financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of issuances of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of purchases of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of sales of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of settlements of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Definition
Amount of gain (loss) recognized in the income statement of financial instrument classified as a derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of gain (loss) recognized in other comprehensive income (loss) of financial instrument classified as a derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of issuances of financial instrument classified as a derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of purchases of financial instrument classified as a derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of sales of financial instrument classified as a derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of settlements of financial instrument classified as a derivative asset (liability) after deduction of derivative liability, measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of transfers of financial instrument classified as a derivative asset (liability) after deduction of derivative liability (asset) into level 3 of the fair value hierarchy. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Amount of transfers of financial instrument classified as derivative asset (liability) after deduction of derivative liability (asset) out of level 3 of the fair value hierarchy. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Definition
Fair value of financial instrument classified as derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. Reference 1: http://www.xbrl.org/2003/role/presentationRef
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|
X | ||||||||||
- Details
|