XML 126 R92.htm IDEA: XBRL DOCUMENT v2.4.1.9
Derivative Instruments Derivatives 2 - FV Gains and Losses (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended 12 Months Ended
Dec. 31, 2014
Sep. 30, 2014
Jun. 30, 2014
Mar. 31, 2014
Dec. 31, 2013
Sep. 30, 2013
Jun. 30, 2013
Mar. 31, 2013
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 $ (5,764)us-gaap_DerivativeGainLossOnDerivativeNet $ 3,280us-gaap_DerivativeGainLossOnDerivativeNet $ (3,626)us-gaap_DerivativeGainLossOnDerivativeNet
Accrual of periodic settlements 5,142us-gaap_InterestIncomeExpenseNet 5,184us-gaap_InterestIncomeExpenseNet 4,904us-gaap_InterestIncomeExpenseNet 4,738us-gaap_InterestIncomeExpenseNet 4,851us-gaap_InterestIncomeExpenseNet 5,582us-gaap_InterestIncomeExpenseNet 5,667us-gaap_InterestIncomeExpenseNet 6,304us-gaap_InterestIncomeExpenseNet 19,968us-gaap_InterestIncomeExpenseNet 22,404us-gaap_InterestIncomeExpenseNet 21,501us-gaap_InterestIncomeExpenseNet
Risk management derivatives [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 (4,624)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
2,779us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(1,938)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Pay-fixed Swap [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 (7,703)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
14,393us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(2,254)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Accrual of periodic settlements                 (3,712)us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(4,463)us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(4,427)us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Receive-fixed Swap [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 4,229us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(10,721)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
1,102us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Accrual of periodic settlements                 2,600us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
3,632us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
2,950us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Basis Swap [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 85us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(115)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
78us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_BasisSwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Foreign Currency Swap [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 27us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(101)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
59us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_CurrencySwapMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Pay-fixed Swaption [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 (4)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(238)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
132us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_PayFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Receive-fixed Swaption [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 (197)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
307us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
410us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= fnm_ReceiveFixedSwaptionMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Risk management derivatives [Member] | Other [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 1us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
21us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
(35)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Accrual of periodic settlements                 50us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
64us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
47us-gaap_InterestIncomeExpenseNet
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OtherContractMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
Mortgage commitment derivatives [Member]                      
Derivative Instruments, Gain (Loss) [Line Items]                      
Derivative fair value (losses) gains, net                 $ (1,140)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
$ 501us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember
$ (1,688)us-gaap_DerivativeGainLossOnDerivativeNet
/ us-gaap_DerivativeInstrumentRiskAxis
= fnm_MortgageCommitmentDerivativesMember