Schedule of Notional Amounts of Derivative Positions (Details) (USD $) In Thousands, unless otherwise specified
|
3 Months Ended |
Mar. 31, 2015
|
Mar. 31, 2014
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
$ (48,115,523)invest_DerivativeNotionalAmount
|
$ (37,366,610)invest_DerivativeNotionalAmount
|
Derivative, Notional Amount, Additions |
(12,292,267)two_DerivativeNotionalAmountAdditions
|
(15,835,110)two_DerivativeNotionalAmountAdditions
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(26,698,747)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise
|
(9,625,574)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise
|
Derivative, Notional Amount, Ending Balance |
(33,709,043)invest_DerivativeNotionalAmount
|
(43,576,146)invest_DerivativeNotionalAmount
|
Derivative, Average Notional Amount |
(42,996,135)two_DerivativeAverageNotionalAmount
|
(39,708,009)two_DerivativeAverageNotionalAmount
|
Gain (Loss) on Sale of Derivatives |
2,893us-gaap_GainLossOnSaleOfDerivatives
|
957us-gaap_GainLossOnSaleOfDerivatives
|
Inverse Interest-Only Securities [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(1,168,226)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
(1,525,845)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
Derivative, Notional Amount, Additions |
0two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
0two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(62,016)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
(113,471)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
Derivative, Notional Amount, Ending Balance |
(1,106,210)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
(1,412,374)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
Derivative, Average Notional Amount |
(1,138,468)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
(1,470,667)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
Gain (Loss) on Sale of Derivatives |
0us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
193us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = two_InverseInterestOnlySecuritiesMember
|
Interest Rate Swap [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(18,584,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
(19,619,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
Derivative, Notional Amount, Additions |
(5,620,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
(2,944,148)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(4,275,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
(900,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
Derivative, Notional Amount, Ending Balance |
(19,929,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
(21,663,148)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
Derivative, Average Notional Amount |
(18,238,389)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
(19,156,878)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
Gain (Loss) on Sale of Derivatives |
(1,070)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
(22)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwapMember
|
Credit Default Swap [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(125,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
(427,073)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
Derivative, Notional Amount, Additions |
0two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
0two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
0two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
(302,073)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
Derivative, Notional Amount, Ending Balance |
(125,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
(125,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
Derivative, Average Notional Amount |
(125,000)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
(179,418)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
Gain (Loss) on Sale of Derivatives |
0us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
(13,705)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_CreditDefaultSwapMember
|
Interest Rate Swaption [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(12,410,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
(5,130,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
Derivative, Notional Amount, Additions |
(5,550,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
(3,900,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(5,000,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
(470,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
Derivative, Notional Amount, Ending Balance |
(12,960,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
(9,500,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
Derivative, Average Notional Amount |
(12,851,667)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
(8,979,111)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
Gain (Loss) on Sale of Derivatives |
12,845us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
(1,219)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_InterestRateSwaptionMember
|
Forward Contracts [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(1,325,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(603,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Derivative, Notional Amount, Additions |
(6,933,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(892,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(5,762,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(733,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Derivative, Notional Amount, Ending Balance |
(2,496,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(1,022,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Derivative, Average Notional Amount |
(2,121,700)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
(526,444)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Gain (Loss) on Sale of Derivatives |
(17,364)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
11,853us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_ForwardContractsMember
|
Options Held [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(2,000,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
0invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
Derivative, Notional Amount, Additions |
(250,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
(1,500,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(4,750,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
0two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
Derivative, Notional Amount, Ending Balance |
(2,500,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
(1,500,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
Derivative, Average Notional Amount |
(8,333)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
(255,556)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
Gain (Loss) on Sale of Derivatives |
(3,047)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
0us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_OptionMember
|
Swap [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(14,000,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
(10,000,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
Derivative, Notional Amount, Additions |
(6,000,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
(8,000,000)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(17,000,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
(8,000,000)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
Derivative, Notional Amount, Ending Balance |
(3,000,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
(10,000,000)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
Derivative, Average Notional Amount |
(6,988,889)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
(10,000,000)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
Gain (Loss) on Sale of Derivatives |
6,384us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
3,887us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_SwapMember
|
Total Return Swap [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(598,459)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
(49,629)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
Derivative, Notional Amount, Additions |
(676,633)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
(197,012)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(397,563)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
(2,654)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
Derivative, Notional Amount, Ending Balance |
(877,529)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
(243,987)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
Derivative, Average Notional Amount |
(875,346)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
(153,910)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
Gain (Loss) on Sale of Derivatives |
4,202us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
0us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_TotalReturnSwapMember
|
Forward Purchase Commitments [Member] |
|
|
Derivative [Line Items] |
|
|
Derivative, Notional Amount, Beginning Balance |
(554,838)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
(12,063)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
Derivative, Notional Amount, Additions |
(1,128,634)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
(185,950)two_DerivativeNotionalAmountAdditions / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
Derivative, Notional Amount, Settlement Termination Expiration or Exercise |
(976,168)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
(44,376)two_DerivativeNotionalAmountSettlementTerminationExpirationorExercise / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
Derivative, Notional Amount, Ending Balance |
(707,304)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
(153,637)invest_DerivativeNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
Derivative, Average Notional Amount |
(648,343)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
(38,913)two_DerivativeAverageNotionalAmount / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
Gain (Loss) on Sale of Derivatives |
$ 943us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|
$ (30)us-gaap_GainLossOnSaleOfDerivatives / us-gaap_DerivativeInstrumentRiskAxis = us-gaap_LoanPurchaseCommitmentsMember
|