彙整

Archive for 2008 年 08 月

[轉載] 次級房貸

2008 年 08 月 11 日 發表留言


我想
應該很多都聽過次級房貸風暴這個辭吧
但可能聽過的人之中
很少人知道它到底是怎麼一回事
我當然也不知道它到底是怎麼一回事
前幾天我在網路上看到一篇文章
概述了整個次級房貸的問題
因為我對於金融方面可以說是完全外行
(外行的程度 大概就跟財金系對病理切片的外行程度差不多)
所以看了半天大概也只懂得三四成
另外
這篇文章貼出來之後
又有網友貼出了反駁它的意見
而就如同我剛剛說的
我才疏學淺
所以根本不知道誰說的比較有道理
一併貼出來
如果你碰巧有財金專業
非常希望來多加指點一下
還有
這兩個部分的文章
我都不知道作者是誰
第二部分反駁原文的文章
我在原文的部分以"註"加入
———————————————————————

過去在美國,貸款是非常普遍的現象,從房子到汽車,從信用卡到電話帳單,貸款無處不在。當地人很少一次現金買房,通常都是長時間貸款。可是我們也知道,在美國失業和再就業是很常見的現象。這些收入並不穩定甚至根本沒有收入的人,他們怎麼買房子呢?因為信用等級達不到標準,他們就被定義為次級貸款者。

大約從10年前開始,那個時候貸款公司漫天的廣告就出現在電視上、報紙上、街頭,抑或在你的信箱裡塞滿誘人的傳單:

『你想過中產階級的生活嗎?買房吧!』

『積蓄不夠嗎?貸款吧!』

『沒有收入嗎?找阿囧貸款公司吧!』

『首次付款也付不起?我們提供零首付!』

『擔心利息太高?頭兩年我們提供3%的優惠利率!』

『每個月還是付不起?沒關係,頭24個月你只需要支付利息,貸款的本金可以兩年後再付!想想看,兩年後你肯定已經找到工作或者被提升為經理了,到時候還怕付不起!』

『擔心兩年後還是還不起?哎呀,你也真是太小心了,看看現在的房子比兩年前漲了多少,到時候你轉手賣給別人啊,不僅白住兩年,還可能賺一筆呢!再說了,又不用你出錢, 我都相信你一定行的,難道我敢貸,你還不敢借?』

在這樣的誘惑下,無數美國市民毫不猶豫地選擇了貸款買房。(你替他們擔心兩年後的債務?向來相當樂觀的美國市民會告訴你,演電影的都能當上州長,兩年後說不定我還能競選總統呢。)

阿囧貸款公司短短幾個月就取得了驚人的業績,可是錢都貸出去了,能不能收回來呢?公司的董事長–阿囧先生,那也是熟讀美國經濟史的人物,不可能不知道房地產市場也是有風險的,所以這筆收益看來不能獨吞,要找個合夥人分擔風險才行。於是阿囧找到美國財經界的領頭大哥–投資銀行。這些傢伙可都是名字響噹噹的大哥(美林、高盛、摩根),
他們每天做什麼呢?就是吃飽了閒著也是閒著,於是找來諾貝爾經濟學家,找來哈佛教授,找來財務工程人員,用上最新的經濟資料模型,一番金融煉丹(copula 差不多是此時煉出)之後,弄出幾份分析報告,從而評價一下某某股票是否值得買進,某某國家的股市(註一)
已經有泡沫了,這一群在風險評估市場呼風喚雨的大哥,你說他們看到這裡面有沒有風險?開玩笑,風險是用腳都看得到!可是有利潤啊,那還猶豫什麼,接手吧!於是經濟學家、財務工程人員,大學教授以資料模型、隨機模擬評估之後,重新包裝一下,就弄出了新產品–CDO(註: Collateralized Debt Obligation,債務抵押債券),說穿了就是債券,通過發行和銷售這個CDO債券,讓債券的持有人來分擔房屋貸款的風險。

(註二)
光這樣賣,風險太高還是沒人買啊,假設原來的債券風險等級是 6,屬於中等偏高。於是投資銀行把它分成高級和普通CDO兩個部分(trench),發生債務危機時,高級CDO享有優先賠付的權利。這樣兩部分的風險等級分別變成了 4 和 8,總風險不變,但是前者就屬於中低風險債券了,憑投資銀行三寸不爛"金"舌,在高級飯店不斷辦研討會,送精美製作的powerpoints 和 excel spreadsheets,當然賣了個滿堂彩!可是剩下的風險等級 8 的高風險債券怎麼辦呢?
(註三)

於是投資銀行找到了避險基金,避險基金又是什麼人,那可是在全世界金融界買空賣多、呼風喚雨的角色,過的就是刀口舔血的日子,這點風險簡直小意思!於是憑藉著關係,在世界範圍內找利率最低的銀行借來錢,然後大舉買入這部分普通CDO債券,2006年以前,日本央行貸款利率僅為1.5%;普通 CDO 利率可能達到12%,所以光靠利差避險基金就賺得滿滿滿了。

這樣一來,奇妙的事情發生了,2001年末,美國的房地產一路飆升,短短幾年就翻了一倍多,天呀,這樣一來就如同阿囧貸款公司開頭的廣告一樣,根本不會出現還不起房屋貸款的事情,就算沒錢還,把房子一賣還可以賺一筆錢。結果是從貸款買房的人,到阿囧貸款公司,到各大投資銀行,到各個一般銀行,到避險基金人人都賺錢,但是投資銀行卻不太高興了!當初是覺得普通 CDO 風險太高,才丟給避險基金的,沒想到這幫傢伙比自己賺的還多,淨值拚命地漲,早知道自己留著玩了,於是投資銀行也開始買入避險基金,打算分一杯羹了。這就好像阿宅家裡有放久了的飯菜,正巧看見隔壁鄰居那隻討厭的小花狗,本來打算毒它一頓,沒想到小花狗吃了不但沒事,反而還越長越壯了,阿宅這下可傻眼了,難道發黴了的飯菜營養更好?於是自己也開始吃了!

這下又把避險基金樂壞了,他們是什麼人,手裡有1塊錢,就能想辦法借10塊錢來玩的土匪啊,現在拿著搶手的CDO當然要大幹一票!於是他們又把手裡的 CDO 債券抵押給銀行,換得 10 倍的貸款操作其他金融商品,然後繼續追著投資銀行買普通 CDO 。科科,當初
(註四)

可是簽了協議,這些普通 CDO 可都是歸我們的!!投資銀行實在心理不爽啊,除了繼續悶聲買避險基金和賣普通 CDO 給避險基金之外,他們又想出了一個新產品,就叫CDS(註:Credit Default Swap,信用違約交換)好了,華爾街就是這些天才產品的溫床:
一般投資人不是都覺得原來的 CDO 風險高嗎,那我弄個保險好了,每年從CDO裡面拿出一部分錢作為保險費,白白送給保險公司,但是將來出了風險,大家一起承擔。

以AIG為代表的保險公司想,不錯啊,眼下 CDO 這麼賺錢, 1分錢都不用出就分利潤,這不是每年白送錢給我們嗎!
(註五)

避險基金想,也還可以啦,已經賺了幾年了,以後風險越來越大,光是分一部分利潤出去,就有保險公司承擔一半風險!

於是再次皆大歡喜,Win Win Situation!CDS也跟著紅了!但是故事到這還沒結束:因為"聰明"的華爾街人又想出了基於 CDS 的創新產品!找更多的一般投資大眾一起承擔,我們假設 CDS 已經為我們帶來了 50 億元的收益,現在我新發行一個基金,這個基金是專門投資買入 CDS 的,顯然這個建立在之前一系列產品之上的基金的風險是很高的,但是
我把之前已經賺的 50 億元投入作為保證金,如果這個基金發生虧損,那麼先用這50億元墊付,只有這50億元虧完了,你投資的本金才會開始虧損,而在這之前你是可以提前贖回的,首次募集規模 500 億元。天哪,還有比這個還爽的基金嗎?1元面額買入的基金,虧到 10% 都不會虧自己的錢,賺了卻每分錢都是自己的!Rating Agencies 看到這個天才的規畫,簡直是毫不猶豫:給出 AAA 評級!

結果這個基金可賣瘋了,各種退休基金、教育基金、理財產品,甚至其他國家的銀行也紛紛買入。雖然首次募集規模是原定的 500 億元,可是後續發行了多少億,簡直已經無法估算了,但是保證金 50 億元卻沒有變。如果現有規模 5000 億元,那保證金就只能保證在基金淨值不虧到本金的 1% 時才不會虧錢,也就是說虧本的機率越來越高。

當時間走到了 2006 年年底,風光了整整 5年的美國房地產終於從頂峰重重摔了下來,這條食物鏈也終於開始斷裂。因為房價下跌,優惠貸款利率的時限到了之後,先是普通民眾無法償還貸款,然後阿囧貸款公司倒閉,避險基金大幅虧損,繼而連累AIG保險公司和貸款的銀行,花旗、摩根相繼發佈巨額虧損報告,同時投資避險基金的各大投資銀行也紛紛
虧損,然後股市大跌,民眾普遍虧錢,無法償還房貸的民眾繼續增多,最終,美國Subprime Crisis 爆發接近成為 Prime Crisis。
(註六)

Credit Crunch 開啟的地獄大門,還不知道如何關上……
以下為反駁的部分:
註一:

不知道作者在寫什麼, Gaussian Copula並不是因為推銷所謂的次貸而產生的  RMBS的CDO 好多並不用Copula model,很多都是直接用的Cash flow model….
Copula 這種東西很早以前就有人用了,據說當年David Li在保險公司算夫妻兩人的人壽保險的時候就在用Gaussian Copula,後來他跳到花旗之後才把它搬到CDO model上面, 實際上Gaussian Copula的作用也是類似於Black-Scholes,把錯誤的數字,放到錯誤的公式裡面,然後得出正確的結果

(題外話,好像說David Li已經被 BarCap 解僱了,現在跑回中國去了,好像在BOC的固定收益研究部門)
註二:
CDO並不是因為房貸而產生的好不好
CDO也不是什麼新產品, 它的前身是所謂的 CLO, 二十年前就有了,而且就算是次級房貸的CDO,也要分所謂的 vintage(發行年份), 2005年以前的,其實沒有那麼糟糕,真正出問題的是2005年以後的,特別是06,07年,其中很大的一個原因是市場太貪婪,underw riting standard 太鬆了,簡單的說就是把錢借給了不該借的人
註三:
投資銀行並沒有那麼大的本事,實際上整個次貸危機最大的兇手之一是評級機構, 房貸的證券化實際上後來越來越複雜了,而評級機構還在用簡單的model 來評級。 客戶之所以會買的原因,也是因為很多房貸的評級很好,而很多機構投資人只看評級好,收益率比同等評級的企業債券好,就買進了…
投資銀行也清楚評級機構的評級規則,也樂得玩這種rating arbitrage
註四:
既然作者提到對沖基金手上拿的是equity tranche, equity tranche的債券風險大, 流動性那麼低,是不可能拿來做collateral的, 然後從銀行哪裡一塊借十塊…
這個顯然是他幻想的
註五:
我猜作者好像並不是特別瞭解CDS是什麼,他其實想說的是一種特殊的CDS,所謂的CDS on supersenior tranche. 起因也不是作者所說的那樣。真正的原因是銀行把次貸拿過來,然後做成CDO,最底下的equity tranche 對沖基金喜歡買,
中間的Mezzanine tranche 機構投資者喜歡買,最頂上的部分(super senior tranche)
因為回報率低,對投資人沒有吸引力,所以銀行不得不自己放在自己的book上面, 後來好多銀行虧也是虧在這一塊上。

有一些銀行為了規避手上持有的super senior tranche的風險,
然後向保險公司買protection, 這就是這種CDS的由來, 裡面提到了AIG,殊不知AIG根 本不是這種交易的主角,這種交易的主要對象是Ambac 和CIFG,所謂的monoliner, 專門為市政債券提供保險的債券保險公司,現在這兩個保險公司也面臨破產的危險,很多銀行買的保險也等於是化為烏有, 前一段時間市場波動也是因為這件事造成的?

作者以為是CDS的錯,實際上CDS作為一種違約風險的避險工具,已經存在很久了, 對市場是有益的…
註七:
這一段他是想講的Synthetic CDO,也就是用CDS來複製CDO的cash flow來達到CDO的同樣的payoff,他這一段完全不懂是在亂講

 

=====================================================

第一次在索尼這裡留言居然是因為金融業相關的議題真的是出乎意料﹐我算是從事相 關行業的﹐以下是小的非專業回應﹕
簡單來說次貸就是像原po所說的那樣是專門為信用不是很好的購屋者所設計的房貸﹐但是因為信用差風險高﹐而且因為銀行(特別是commercial bank)他們的投資者很不 喜歡有這些高風險的資產在帳上﹐所以就讓投資銀行設計出適合的CDO﹐分不同的等級(tanch)﹐然後讓rating agency (moody, S&P..etc)來評分﹐然後這樣原本賣都賣不出去的次貸頂層的那些很自然的就可以有AA的評等﹐自然也就有人買。
這樣聽起來這好像是個賺錢的好方法﹐但是想想﹐當commercial bank和loan agency自己不留著這些次貸在帳上﹐反而讓他們securitize轉成cdo出去﹐他們自然就不會在乎對於申請者信用的審核(反正對他們來說沒差嘛)﹐於是這個風險就轉移給擁有cdo的人。雖然以一個正常的理論來說﹐credit agency存在的必要性﹐就是要檢查這些風險的﹐但是credit agency用的model是historical的﹐比如說LA為主的cdo的風險性是用LA過去的foreclosure來衡量的﹐但是因為次貸這種東西以前並不存在的(以前
信用不好的人是無法貸款買房子的)﹐這些historical的數據自然也就不準確。
(當然這些在房價上漲的時候都不是問題﹐當房價下跌的時候就是了。)
於是房價下跌經濟不好的時候﹐次貸的問題就像滾雪球一樣的跑出來。
所以我大致上是同意兩位發文者的想法的﹐以下是細節上的不同﹕
(註1)
不是投資銀行賣不出去頂層的次貸cdo才把他們留在帳上的﹐只是因為通常這些銀行都不會做像hedge fund一樣高風險的投資﹐所以自然等級比較高的次貸就會在他們的帳上。
(另﹐有些銀行很聰明搶在次貸危機前就把自己的次貸存貨開始出清了﹐這些銀行就不大虧﹐反而賺﹐像是高盛)
另一個投資銀行帳上有次貸cdo的原因是他們當初跟commercial bank或loan company簽的合約就是讓他們underwirte這些次貸同時得到一定數目的cdo做報酬。
(註2)
CDO和CLO都不是因為次貸而產生的。這個investopedia可以解釋得比我詳細。次貸只是其中一種cdo.
(註3)
CDS也不是因為次貸產生的。請愛用investopedia.
(註4)
我不確定aig有沒有做這類的insurance,但aig是全世界最大的保險公司(雖然很多人可能不知道﹐因為他們不大做personal insurance)﹐現在假設說有好了。但第二篇的作者寫的是對的﹐這種市場的主角是他寫的那些﹐還有mbia也是另為一個被影響很大的債卷保險公司。
補充一個新的點﹐在第一個發文者(註5)下面的那一段。以我對這個industry的瞭解﹐ 他說的所謂500億到5000億是不可能的。因為這種illiquid, high risk的投資﹐通常都是close end的基金﹐也就是說他這個基金就只能夠募到這麼多錢(按著他的agreement﹐也就是500億)﹐然後這個基金就關了﹐不能夠增加新的投資者(除非agreement改)﹐舊的投資者也不能把錢拿出來(因為這些投資都是illiquid的阿﹐既然錢都拿去買這
些投資了﹐哪裡還可以讓投資人高興什麼時候拿就什麼時候拿﹖)。所以根本就沒有他所說這種基金。
整體來說﹐第一篇的作者對CDO, CDS和fund都不夠瞭解﹐而第二篇的反駮者對這個市場比較瞭解。
當然我的想法也不盡正確﹐歡迎高手指教。(但拜託別披得太狠﹐我臉皮薄 ) =)

arclight | 11/08/2008 10:40:35

轉載自: http://blog.pixnet.net/SpinalCord/post/21192547

分類:未分類

使用Console(cmd)不顯示出視窗的方法

2008 年 08 月 02 日 1 則迴響

Process.Start("C:Program FilesRealVNCVNC4winvnc4.exe", "-noconsole -start")

======================

Dim p As New Process
Dim sw As System.IO.StreamWriter
Dim sr As System.IO.StreamReader
p.StartInfo.FileName = "cmd.exe"
p.StartInfo.UseShellExecute = False
p.StartInfo.RedirectStandardInput = True
p.StartInfo.RedirectStandardOutput = True
p.StartInfo.CreateNoWindow = True
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
p.Start()
sw = p.StandardInput
sr = p.StandardOutput
‘sw.Flush()
sw.WriteLine("blahblahblah Enter a command here blah blah blah")
sometextbox.text = sr.ReadLine & vbCrLf
sometextbox.text = sometextbox.text & sr.ReadLine
sw.WriteLine("exit")
sw.Close()
sometextbox.text = sometextbox.text & sr.ReadToEnd
sr.Close()
‘if script doesn’t complete in 10 seconds kill it
p.WaitForExit(10000)
If Not p.HasExited Then
p.Kill()
End If
If p.ExitCode > 0 Then
MessageBox.Show("Sorry, there was an error, Error: " & p.ExitCode, "Your program name here")
End If
p.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
If you want to have a lot of input/output then add a loop in the middle section there where it says "sometextbox.text = sr.readline". Also, in this sample you need to make sometextbox into a textbox, richtxtbox, label, or some other sort of text display. You could even write it to a temp file if needed. I have found that you don’t need to set a working directory for cmd.exe (well as long as it is in the path, which is should be on all ms systems).
Please note another issue, the process will never finish if you do sr.readtoend before closing the sw. It wont even attempt to kill it, it will just get stuck.
Another note: this works great when you run it in a backgroundworker. Just paste the code into a background worker do work event and make "sometextbox" into a global string varible and have a timer operation read that variable into a text box so you aren’t doing cross thread calls.
Fire it off by doing backgroundworker.runworkerasyn

[RESOLVED][2005] Process.Start HELP [Archive] – VBForums

分類:未分類