Derivative Instruments and Hedging Activities Schedule of TBA Contracts (Details) (USD $) In Thousands, unless otherwise specified
|
Mar. 31, 2015
|
Dec. 31, 2014
|
Mar. 31, 2014
|
Dec. 31, 2013
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
$ (33,709,043)invest_DerivativeNotionalAmount
|
$ (48,115,523)invest_DerivativeNotionalAmount
|
$ (43,576,146)invest_DerivativeNotionalAmount
|
$ (37,366,610)invest_DerivativeNotionalAmount
|
Derivative Financial Instruments, Assets [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
(26,795,748)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
(36,315,523)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
|
|
Derivative, Fair Value, Net |
362,646us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
380,791us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember
|
|
|
Derivative Financial Instruments, Liabilities [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
(16,905,295)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
|
(16,200,000)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
|
|
|
Derivative, Fair Value, Net |
(155,149)us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
|
(90,233)us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
|
|
|
Forward Contracts [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
(2,496,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(1,325,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(1,022,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(603,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Derivative, Cost |
(2,635,765)two_DerivativeCost / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(1,431,945)two_DerivativeCost / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
|
|
Derivative, Market Value |
(2,653,695)two_DerivativeMarketValue / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(1,439,282)two_DerivativeMarketValue / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
|
|
Forward Contracts [Member] | Derivative Financial Instruments, Assets [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
0invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(875,000)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
|
|
Derivative, Fair Value, Net |
0us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
10,350us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
|
|
Forward Contracts [Member] | Derivative Financial Instruments, Liabilities [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
(2,496,000)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(2,200,000)invest_DerivativeNotionalAmount / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
|
|
Derivative, Fair Value, Net |
(17,930)us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(17,687)us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
|
|
Forward Contracts [Member] | Long [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
0invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
(875,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
|
|
Derivative, Cost |
0two_DerivativeCost / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
(862,868)two_DerivativeCost / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
|
|
Derivative, Market Value |
0two_DerivativeMarketValue / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
(873,218)two_DerivativeMarketValue / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
|
|
Forward Contracts [Member] | Long [Member] | Derivative Financial Instruments, Assets [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Fair Value, Net |
0us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
10,350us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
|
|
Forward Contracts [Member] | Long [Member] | Derivative Financial Instruments, Liabilities [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Fair Value, Net |
0us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
0us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember
|
|
|
Forward Contracts [Member] | Short [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
(2,496,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
(2,200,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
|
|
Derivative, Cost |
(2,635,765)two_DerivativeCost / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
(2,294,813)two_DerivativeCost / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
|
|
Derivative, Market Value |
(2,653,695)two_DerivativeMarketValue / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
(2,312,500)two_DerivativeMarketValue / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
|
|
Forward Contracts [Member] | Short [Member] | Derivative Financial Instruments, Assets [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Fair Value, Net |
0us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
0us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsAssetsMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
|
|
Forward Contracts [Member] | Short [Member] | Derivative Financial Instruments, Liabilities [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Fair Value, Net |
(17,930)us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
(17,687)us-gaap_DerivativeFairValueOfDerivativeNet / us-gaap_BalanceSheetLocationAxis = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember
|
|
|
Interest Rate Risk Associated with the Investment Portfolio [Member] | Forward Contracts [Member] | Long [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
|
(875,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_LongMember / two_RiskTypeAxis = two_InterestRateRiskAssociatedwiththeInvestmentPortfolioMember
|
|
|
Interest Rate Risk Associated with the Investment Portfolio [Member] | Forward Contracts [Member] | Short [Member] |
|
|
|
|
Derivative [Line Items] |
|
|
|
|
Derivative, Notional Amount |
$ (2,496,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember / two_RiskTypeAxis = two_InterestRateRiskAssociatedwiththeInvestmentPortfolioMember
|
$ (2,200,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember / us-gaap_PositionAxis = us-gaap_ShortMember / two_RiskTypeAxis = two_InterestRateRiskAssociatedwiththeInvestmentPortfolioMember
|
|
|