XML 40 R32.htm IDEA: XBRL DOCUMENT v2.4.1.9
Investment Securities - Schedule of Investment Securities (Details) (USD $)
In Thousands, unless otherwise specified
0 Months Ended
Mar. 30, 2015
Dec. 31, 2014
Mar. 31, 2015
Available-for-sale Securities [Abstract]      
Derivative, Notional Amount   $ 6,837,571invest_DerivativeNotionalAmount $ 7,370,529invest_DerivativeNotionalAmount
Investment Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   1,932,236agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
2,135,218agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Unamortized Premium/(Discount)   7,471us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
6,966us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Available-for-sale Securities, Amortized Cost Basis   1,939,707us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
2,142,184us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   9,003us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
8,606us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Available-for-sale Securities, Unrealized Losses   (10,211)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
(11,246)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Available-for-sale Securities, Fair Value Disclosure   1,938,499us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
2,139,544us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Trading Securities [Abstract]      
Trading, at fair value   689us-gaap_TradingSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
638us-gaap_TradingSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Marketable Securities [Abstract]      
Marketable Securities Unpaid Principal Balance   1,935,104agm_MarketableSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
2,137,839agm_MarketableSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Marketable Securities, Amortized Cost   1,942,575agm_MarketableSecuritiesAmortizedCostBasis
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
2,144,805agm_MarketableSecuritiesAmortizedCostBasis
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Marketable Securities, Unrealized Gains   9,003agm_MarketableSecuritiesGrossUnrealizedGains
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
8,606agm_MarketableSecuritiesGrossUnrealizedGains
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Marketable Securities, Unrealized Losses   (12,390)agm_MarketableSecuritiesGrossUnrealizedLosses
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
(13,229)agm_MarketableSecuritiesGrossUnrealizedLosses
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Marketable Securities   1,939,188us-gaap_MarketableSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
2,140,182us-gaap_MarketableSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
USDA Securities [Member]
     
Available-for-sale Securities [Abstract]      
Available-for-sale Securities, Fair Value Disclosure   1,731,222us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
1,794,844us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
Trading Securities [Abstract]      
Trading, at fair value   40,310us-gaap_TradingSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
37,593us-gaap_TradingSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
Marketable Securities [Abstract]      
Marketable Securities   1,771,532us-gaap_MarketableSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
1,832,437us-gaap_MarketableSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
Available-for-sale Securities [Member] | Investment Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   7,471us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
6,966us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_DebtSecuritiesMember
Floating Interest Rate [Member] | Floating rate auction-rate certificates backed by Government guaranteed student loans      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   46,600agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
46,600agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   46,600us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
46,600us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Unrealized Losses   (6,024)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
(6,221)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   40,576us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
40,379us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Asset-backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   100,730agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
100,377agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   100,656us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
100,025us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   283us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
153us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Unrealized Losses   (37)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
(46)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   100,902us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
100,132us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Trading Securities [Abstract]      
Trading Securities - Amount Outstanding   2,868agm_TradingSecuritiesAmountOutstanding
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
2,621agm_TradingSecuritiesAmountOutstanding
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Trading Securities, Debt, Amortized Cost   2,868us-gaap_TradingSecuritiesDebtAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
2,621us-gaap_TradingSecuritiesDebtAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Trading Securities, Unrealized Gains 0us-gaap_TradingSecuritiesUnrealizedHoldingGain
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_TradingSecuritiesUnrealizedHoldingGain
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Trading Securities, Unrealized Losses (1,983)us-gaap_TradingSecuritiesUnrealizedHoldingLoss
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
(2,179)us-gaap_TradingSecuritiesUnrealizedHoldingLoss
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Trading, at fair value   689us-gaap_TradingSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
638us-gaap_TradingSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Corporate Debt Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   10,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
10,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   10,000us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
10,000us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   91us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
85us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Unrealized Losses   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   10,091us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
10,085us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Government/GSE Guaranteed Mortgage Backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   605,053agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
727,430agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   608,484us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
730,868us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   4,712us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
4,373us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Unrealized Losses   (443)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
(669)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   612,753us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
734,572us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | GSE Subordinated Debt [Member}      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   70,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
70,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   70,000us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
70,000us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Unrealized Losses   (3,680)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
(4,159)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   66,320us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
65,841us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Taxable Municipal Bonds [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   75,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_TaxableMunicipalBondsMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Available-for-sale Securities, Amortized Cost Basis   74,990us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_TaxableMunicipalBondsMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_TaxableMunicipalBondsMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Available-for-sale Securities, Unrealized Losses   (11)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_TaxableMunicipalBondsMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Available-for-sale Securities, Fair Value Disclosure   74,979us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_TaxableMunicipalBondsMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Floating Interest Rate [Member] | Trading Securities [Member] | Asset-backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_TradingAccountAssetsMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Available-for-sale Securities [Member] | Floating rate auction-rate certificates backed by Government guaranteed student loans      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AuctionRateSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Available-for-sale Securities [Member] | Asset-backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   (74)us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
(352)us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Available-for-sale Securities [Member] | Corporate Debt Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Available-for-sale Securities [Member] | Government/GSE Guaranteed Mortgage Backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   3,431us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
3,438us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Available-for-sale Securities [Member] | GSE Subordinated Debt [Member}      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
0us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_SubordinatedDebtMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
Floating Interest Rate [Member] | Available-for-sale Securities [Member] | Taxable Municipal Bonds [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   (10)us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_TaxableMunicipalBondsMember
/ us-gaap_ProductOrServiceAxis
= agm_FloatingInterestRateMember
 
Fixed Interest Rate [Member] | Corporate Debt Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   30,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
20,000agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   29,990us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
19,995us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   35us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
35us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Unrealized Losses   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   30,025us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
20,030us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | Government/GSE Guaranteed Mortgage Backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   853agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] 811agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   4,395us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] 4,247us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   3,807us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] 3,882us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Unrealized Losses   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] 0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   8,202us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] 8,129us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[2]
Derivative, Notional Amount   152,400invest_DerivativeNotionalAmount
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
152,400invest_DerivativeNotionalAmount
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | USDA Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   18,806agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
297,806agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   18,936us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
297,772us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   3us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
23us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Unrealized Losses   0us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
(68)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   18,939us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
297,727us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | US Treasury Securities [Member]      
Available-for-sale Securities [Abstract]      
Available-for-Sale Securities Unpaid Principal Balance   975,194agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
862,194agm_AvailableforSaleSecuritiesUnpaidPrincipalBalance
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Amortized Cost Basis   975,656us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
862,677us-gaap_AvailableForSaleSecuritiesAmortizedCost
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Debt Securities, Accumulated Gross Unrealized Gain, before Tax   72us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
55us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Unrealized Losses   (16)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
(83)us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Available-for-sale Securities, Fair Value Disclosure   975,712us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
862,649us-gaap_AvailableForSaleSecurities
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | Available-for-sale Securities [Member] | Corporate Debt Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   (10)us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
(5)us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | Available-for-sale Securities [Member] | Government/GSE Guaranteed Mortgage Backed Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   3,542us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] 3,436us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_MortgageBackedSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | Available-for-sale Securities [Member] | USDA Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   130us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
(34)us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USGovernmentAgenciesDebtSecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | Available-for-sale Securities [Member] | US Treasury Securities [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   462us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
483us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
Fixed Interest Rate [Member] | Available-for-sale Securities [Member] | Interest-Only-Strip [Member]      
Available-for-sale Securities [Abstract]      
Unamortized Premium/(Discount)   $ 7,300us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_InterestOnlyStripMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
$ 7,200us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet
/ us-gaap_GainLossOnInvestmentsByCategoryAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis
= us-gaap_InterestOnlyStripMember
/ us-gaap_ProductOrServiceAxis
= agm_FixedInterestRateMember
[1] Fair value includes $7.3 million of an interest-only security with a notional amount of $152.4 million.
[2] Fair value includes $7.2 million of an interest-only security with a notional amount of $152.4 million.