Saturday, April 25, 2015

x-ccy basis swap - FX homework3 revelations

For x-ccy fixed/fixed IRS, There are 2 levels of learning
11) the basic cash flows; how this differs from IRS and FX swap ...This proves to be more confusing than expected, and harder to get right. Need full-blown examples like course handout from Trac consultant. It's frustrating to re-learn this over and over. May need to work out an example or self-quiz.
22) the underlying link to x-ccy basis swap
-----------
A1b: Either issue EUR fixed bond or USD fixed then somehow swap to EUR
A1: fixed USD
A4: euro. Yes. They can simply convert the USD fund raised, in a detachable spot transaction. This is fully detachable so not part of the currency swap at all.
A9: 0 point. Rate is the trade date spot
A2 no

11) Self-quiz on the Trac illustration, to go thin->thick->thin and develop intuition.
Q1: before the deal, is Microsoft already an issuer of fixed or floating bond? What currency?
Q1b: Before issuing any debt whatsoever, what are Microsoft's funding choices?
Q2: Is there any principal exchanged on near date (i.e. shortly after trade date)?
Q3: Microsoft is immune to FX movement or USD rate movement or EUR rate movement? What is Microsoft betting on?
Q4: Microsoft needs funding in what currency? Are they getting that from the deal?
Q9 (confusing): how is this diff from FX swap? How is swap point calculated?

My mistake in this homework was forgetting that the far-date FX rate used to exchange the principal amount is the rate pre-determined on trade date, written into the contract, and not subject to FX movement up thereafter.

22) I now think the x-ccy basis swap spread is important to any x-ccy IRS aka "currency swap", because a x-ccy basis swap is an implicit part and parcel of it....

http://quantfather.com/messageview.cfm?catid=8&threadid=75575 points that usd/aud [1] basis swap of 15 bp is interpreted as

"usd libor flat -vs- aud default floating rate + 15 bp, with tenor basis spread adjusted [2]."

[1] or aud/usd.... It doesn't matter.
[2] in aud case, the default swap coupon tenor is same as USD and needs no adjustment

I guess the spread is positive because aud is a high yielder? Not sure

--The coca cola bond in http://www.reuters.com/article/2015/02/27/coca-cola-bonds-idUSL5N0W127E20150227
US issuers (needing usd eventually) of eur floating bonds [3] would use x-ccy basis swap to convert the euribor liability to a "usd libor + 33" liability, so the negative and growing spread (-33 now) hurts.

Warning -- it's incorrect to think "ok for this quarter my euribor liability is 2% for this quarter, so 2% - 33 bps = 1.67% and I swap it to a usd libor liability, so the bigger that negative spread, the lower my usd libor liability -- great!" Wrong. The meaning of -33 is

"paying euribor floating rate (2% this quarter), I can find market makers to help me convert it into paying a usd libor+33"
"paying 2% - 33 bps on a euribor floating bond, I can convert it into paying a usd libor + 0 floating bond"

[3] fixed bond can be swapped to floating
---http://www.global-derivatives.com/forum/index.php?topic=444.0;wap2 explains
There is more demand for funding in one currency and more supply in another currency. For instance many Japanese banks have funding sources in JPY but have committments in USD. They therefore will swap their JPY (inflow) to USD (inflow) to cover their USD commitments. The basis swap spread reflects this supply and demand situation.

Assuming a tiny bid/ask spread, I believe a Japanese bank is equally willing to receive
- a stream of usd libor or
- a stream of jpy libor - 10 bps

By the no-arbitrage pricing principle, two floating rates should trade at par and the basis spread should be zero (Tony also covered this point in the 3rd lecture), but there's more demand for usd libor inflow.

Similarly, after GFC, European banks need usd more than US banks need euro. see http://www.business.uwa.edu.au/__data/assets/pdf_file/0008/2198339/Chang-Yang-UTS.pdf. A typical bank would be indifferent to receiving
- a stream of usd libor or
- a stream of euribor - 34 bp

https://doc.research-and-analytics.csfb.com/docView?language=ENG&format=PDF&source_id=csplusresearchcp&document_id=1014795411&serialid=mW557HA4UbeT5Mrww553YSwfqEwZsxUA4zqNSkp5JUg%3D explains that

the basis swap markets saw increased demand to receive USD funds in exchange for EUR. This excess demand drove the EURUSD basis swap spreads down to highly negative levels as counterparties were willing to receive lower interest payments in return for US dollar funds

No comments:

Total Pageviews

my favorite topics (labels)

_fuxi (302) _misLabel (13) _orig? (3) _rm (2) _vague (2) clarified (58) cpp (39) cpp_const (22) cpp_real (76) cpp/java/c# (101) cppBig4 (54) cppSmartPtr (35) cppSTL (33) cppSTL_itr (27) cppSTL_real (26) cppTemplate (28) creditMkt (14) db (65) db_sybase (43) deepUnder (31) dotnet (20) ECN (27) econ/bank` (36) fin/sys_misc (43) finGreek (34) finReal (45) finRisk (30) finTechDesign (46) finTechMisc (32) finVol (66) FixedIncom (28) fMath (7) fMathOption (33) fMathStoch (67) forex (39) gr8IV_Q (46) GTD_skill (15) GUI_event (30) inMemDB (42) intuit_math (41) intuitFinance (57) javaMisc (68) javaServerSide (13) lambda/delegate (22) marketData (28) math (10) mathStat (55) memIssue (8) memMgmt (66) metaProgram` (6) OO_Design (84) original_content (749) polymorphic/vptr (40) productive (21) ptr/ref (48) py (28) reflect (8) script`/unix (82) socket/stream (39) subquery/join (30) subvert (13) swing/wpf (9) sysProgram` (16) thread (164) thread_CAS (15) thread_cpp (28) Thread* (22) timeSaver (80) transactional (23) tune (24) tuneDB (40) tuneLatency (30) z_ajax (9) z_algoDataStruct (41) z_arch (26) z_arch_job (27) z_automateTest (17) z_autoTrad` (19) z_bestPractice (39) z_bold (83) z_bondMath (35) z_book (18) z_boost (19) z_byRef^Val (32) z_c#GUI (43) z_c#misc (80) z_cast/convert (28) z_container (67) z_cStr/arr (39) z_Favorite* (8) z_FIX (15) z_forex (48) z_fwd_Deal (18) z_gz=job (33) z_gzBig20 (13) z_gzMgr (13) z_gzPain (20) z_gzThreat (19) z_hib (19) z_IDE (52) z_ikm (5) z_IR_misc (36) z_IRS (26) z_javaWeb (28) z_jdbc (10) z_jobFinTech (46) z_jobHunt (20) z_jobRealXp (10) z_jobStrength (15) z_jobUS^asia (27) z_letter (42) z_linq (10) z_memberHid` (11) z_MOM (54) z_nestedClass (5) z_oq (24) z_PCP (12) z_pearl (1) z_php (20) z_prodSupport (7) z_py (31) z_quant (14) z_regex (8) z_rv (38) z_skillist (48) z_slic`Problem (6) z_SOA (14) z_spring (25) z_src_code (8) z_swingMisc (50) z_swingTable (26) z_unpublish (2) z_VBA/Excel (8) z_windoz (17) z_wpfCommand (9)

About Me

New York (Time Square), NY, United States
http://www.linkedin.com/in/tanbin