class: title-slide, left, top background-image: url(title-slide.jpg) background-size: cover <style> .title-slide h1{ color: #1381B0; font-size: 55px; line-height: 1em; } .title-slide h2{ color: red; font-size: 40px; line-height: 1em; } </style> # 서울 R 미트업 ## IFRS Valuation Report with Rmarkdown ---- ### 공인회계사 | KICPA ### 형환희 ### 2022년 10월 22일 --- # IFRS Valuation Report with Rmarkdown #### IFRS 가치평가 보고서를 Rmarkdown을 활용하여 자동화한 경험을 공유합니다. ### 1. Valuation 개요 (IFRS) ### 2. R을 만나게 된 계기와 필요성 인식 ### 3. Rmarkdown PDF Knit 환경 구축 - Linux(Ubuntu) ### 4. Rstudio Server ### 5. Google Sheet --- class: inverse center middle layout: false ---- # 1. Valuation --- ## 현금흐름접근법(Discounted Cash Flow Method) .pull-left[ $$ Value = { Cash \ Flow \over Discount \ Rate } $$ ] .pull-right[ 이 산식은 Valuation의 모든 것을 설명해 주는 함축적인 표현입니다. **Valuation(가치평가)은 미래에 들어올 것으로 예상되는 돈을 현재가치로 환산한 것이다.** 현금흐름접근법이 가장 많이 쓰이고 약자로 줄여서 DCF라고 부릅니다.(Discounted Cash Flow Method) ] <br> Cash Flow는 통상 미래 5개년 사업계획을 토대로 하여 현금흐름(FCFF)으로 변환하여 적용하며 Discount Rate은 기회비용의 관점에서 자본비용(Cost of Capital)이라고 합니다. 기업은 채권자에게서 차입하고 주주로부터 지분 출자를 받은 투자금액으로 영업활동을 통하여 미래의 Cash Flow를 창출하므로 자본비용은 채권자와 주주에게 지급하게 되는 Premium으로 정의합니다. --- ## 자본비용 추정(Cost of Capital) #### 가중평균 자본비용(Weighted Average Cost of Capital, WACC) 기대되는 미래 현금흐름을 모든 관련 투자가들(채권자 및 주주) 에게 귀속되는 현재가치로 환산하는 데 사용되는 할인율로서 타인자본과 자기자본 등 자본의 원천이 되는 모든 종류의 자금 조달 수단이 갖는 비용의 가중 평균입니다. 부채 또는 자기자본에 투자하는 시장참여자가 투자대상에 대하여 합리적으로 기대하는 요구수익률(Required rate of return)을 의미합니다. #### 자본비용의 조건 * 자본비용은 투자대상이 지닌 위험을 고려한 시장참여자 관점의 기회비용으로 정의되어야 한다. * 자본비용은 투자대상이 창출할 미래 현금흐름의 기대값에 대응되어야 한다. * 자본비용은 현금흐름 추정과의 일관성 있어야 한다. * 기업의 자본비용은 기준일의 목표자본구조를 고려한 한계비용으로 정의되어야 한다. * 기업의 자본비용은 투자자들이 기여한 모든 자본요소를 고려하여 정의되어야 한다. --- ## Cost of Capital (WACC) 계산 절차 1. Cost of Equity 추정 : 자기자본조달의 기회 비용을 추정 2. Cost of Debt 추정 : 타인자본의 기회비용을 추정 3. WACC 산출 : 해당기업의 자본구조를 구성하는 각 자본조달수단에 대해서 ‘시장가치에 근거한 목표가중치’를 설정하여 Cost of Debt과 Cost of Equity 적용 --- ## CAPM의 의미 ### 자기자본비용 자기자본비용을 추정하기 위하여는 자본자산가격결정모형(Capital Asset Pricing Model : CAPM)을 주로 사용합니다. CAPM : $$ Ke = Rf + \beta \times ERP + SRP $$ > Where, Ke: 자기자본비용 Rf: 무위험이자율 B: 베타 ERP: 시장기대위험프리미엄 SRP: 규모위험프리미엄 자기자본의 기회비용은 무위험증권의 수익률과 해당 기업의 체계적 위험(beta)에 위험의 시장가격(Market Risk Premium)을 곱한 값으로 측정합니다. CAPM에서 베타는 시장에서의 체계적인 위험 정도를 반영하고 비체계적인 위험은 자산을 분산하여 소유함으로써 제거할 수 있다고 가정 (완전경쟁시장을 가정)합니다. --- #### CAPM에 의한 자기자본비용(Ke)의 추정 요소 CAPM에 의한 자기자본비용 추정시에는 세가지 요소, **무위험 수익률(risk free rate:Rf), 시장위험프리미엄(Market risk premium:MRP), 체계적 위험(beta)**의 추정이 필요합니다. **1) 무위험 수익률 (Risk-free Rate, Rf)** CAPM에서 Rf란 기대현금흐름대로 실제 현금흐름이 발생할 가능성이 100%라고 가정을 하더라도 적용되어야 하는, 영업위험이 전혀 존재하지 않더라도 적용해야 하는 기본적인 할인율을 의미합니다. 따라서 무위험수익율에서 무위험이란 영업 차원의 무위험을 의미하며 통화 또는 현금 자체에 대한 절대적인 무위험을 의미하는 것은 아닙니다. 무위험수익율은 추정현금흐름에 어떠한 통화를 사용했는지에 따라 종속적으로 결정되게 되며 이는 무위험수익율에 대응되는 위험이 추정에 사용된 통화가 지닌 위험을 의미하는 것이다. 실무적으로 선호되는 시장관측 무위험수익율 정보는 국채의 발행 및 유통수익률이며 많은 시장조사기관들이 무위험수익율의 대용치로 사용 통상적으로 장기 국고채 수익율을 사용합니다. **2) 시장 위험프리미엄(Market Risk Premium, MRP, (Rm- Rf))** 시장포트폴리오에 대한 기대수익률과 무위험이자율간의 차이이다. 자기자본비용을 CAPM에 근거하여 추정을 하기로 했다면 기대시장수익률 또한 CAPM의 프레임에 충실해야 하며 이는 Rf와 Beta등과 일관성을 고려해야 함을 의미합니다. Rf를 정의함에 있어 시장의 원화 국고채 수익률을 참고하였다면 기대시장수익률은 한국 Equity market의 종합주가지수 기대수익률을 대용치로 사용합니다. --- 역사적시장수익률을 대용치로 사용하는 방법: 통상 종합지수의 장기 역사적 수익률을 산정하여 사용하지만 자본비용이 미래 기대현금흐름에 대응된다는 관점에서 역사적 수익률이 반드시 미래의 수익률을 설명해주지 못한다는 한계가 있습니다. Forward looking 방식의 추정수익률: 블룸버그(Bloomberg)를 포함한 일부 리서치 기관에서는 개별 종목의 기대배당수익률 정보와 기준일의 주가정보에 근거하여 종목별 기대수익률을 정의하고 이를 가중평균하여 Forward looking 방식의 내재시장수익률을 추정합니다. **3) 체계적 위험(β)** Beta는 개별종목의 주가수익률을 종속변수로 정의하고 시장포트폴리오 또는 Benchmark index 의 수익률을 독립변수로 정의하여 회귀분석을 수행하였을 때 산정되는 slope 또는 Beta coefficient 를 의미합니다. 이러한 Beta는 개별종목의 Benchmark index 수익률에 대한 민감도 즉, 방향의 일치성 여부와 움직임의 상대적 크기를 설명합니다. Beta 표본추출 주기는 짧은 기간 이상적인 주가변동에 의한 잡음을 최소화 하기 위하여 주간단위 이상이 적절하며 일반적인 평가 관행은 주간 또는 월간입니다. Beta 표본추출 기간은 대상 산업의 주기에 따라 상이할 수 있으나 샘플의 수에 따른 표본오차를 고려할 때 2년 미만은 적절하지 않으며 일반적인 시장관행은 2년 또는 5년으로 합니다. 회귀분석에 의하여 산정한 Beta를 Raw beta 또는 Historical beta라고 합니다. 자기자본비용이 Forward looking 개념임을 고려할 때 역사적 Beta를 사용하는 것은 미래의 Beta가 과거의 Beta와 유의한 차이가 없을 것이다라는 가정을 전제합니다. 하지만 많은 연구자들의 실증분석 연구에서 이러한 가정은 기각되는 결과로 인하여 실무에서도 Raw Beta를 조정하여 사용하는 경향을 보입니다. --- 조정 된 베타는 증권의 향후 베타에 대한 추정치이며 조정 된 베타는 처음에는 과거 데이터에서 파생되지만 증권의 실제 베타가 시간이 지남에 따라 시장 평균 인 1로 이동할 것이라는 가정에 의해 수정된다. 이를 조정베타라고 보통 부르기도 합니다. 베타 조정에 사용되는 공식 : `$$0.67 \times Raw Beta + 0.33 \times 1.0$$` 평가대상 회사의 관측가능 한 Beta가 없을 경우 동종 업종의 유사상장회사를 대용회사로 정의하여 대용회사의 관측 Beta를 참고합니다. 관측한 대용회사의 차입베타(또는 Equity beta, Levered Beta) 를 참고할 경우에는 대용회사의 자본구조 효과를 제거하여 무차입베타(또는 Asset beta, Unlevered Beta)로 만든 뒤 평가대상회사의 적용자본구조를 고려하여 다시 차입베타로 전환해주는 과정이 필요합니다. 자본구조 관점에서의 Beta를 조정하는 방법은 이론적으로 수 많은 방법들이 제안되었으며 실무적으로 가장 널리 이용되는 방법은 Hamada가 제안한 방법입니다. $$ B_L = B_U[1+(1-T)(D/E)] $$ > Where, B_L = 위험베타 B_U = 무위험베타 T = 세율 D/E = 부채자본비율 --- **4) 추가가산 Risk Premium** * Size Risk Premium : 미국의 경우 규모가 작은 회사의 수익률이 큰 회사의 수익률보다 평균적으로 크다. * Liquidity Risk Premium : 시장성이 부족한 (비상장) 주식이 가진 위험하다. * Specific Risk Premium : 시장 또는 산업전체가 가지는 위험이 아니라 베타값에 반영되지 않은 해당기업이 가지는 위험 (예) 파산 또는 지급보증 Risk Premium, 소수품목생산에 따른 Risk Premium ### 타인자본비용 #### Cost of Debt 추정 1) 시장수익률(만기수익률)에 의한 방법 : 회사가 발행한 회사채 등이 있고 현재 시장에서 거래되고 있는 경우에는, 회사의 부채조달비용은 회사채 등의 시장가격에 의한 만기수익률에 의하여 추정할 수 있습니다. * 장점 : 시장의 수요와 공급, 즉 시장 원리에 의해서 결정된 수익률. * 단점 : 만기수익률은 채권 등의 특성에 의하여 왜곡될 여지도 있다. 예를 들어 회사에서 발행한 채권 등이 특정자산에 대한 우선적 권리를 가지고 있을 경우, 만기수익율은 회사의 진정한 부채조달비용보다 낮을 수 있다. 그러므로 만기수익률은 신용등급에 의한 부채 조달 비용 등과 상호 비교 검증되어져야 한다. 2) 신용등급에 의한 방법 : 회사의 신용등급이 평가되어 있는 경우, 동 등급에 해당하는 수익율을 이용하여 회사의 부채비용을 추정합니다. --- ### WACC 계산 기업의 자본조달원천은 타인자본(차입금 등 금융부채)과 자기자본으로 구성되므로 기업의 자본비용은 자본의 원천별 자본비용을 가중평균한 가중평균자본비용(Weighted Average Cost of Capital, WACC)입니다. <br> $$ WACC = E/V \times Ke + D/V \times Kd \times (1-Tc) $$ >Where, D : 타인자본조달액 E : 자기자본조달액 V = D + E Tc = 법인세율 ### Beta with R, Python [R | python | 체계적위험 베타 자동 계산](https://joy-accounting.netlify.app/2021-10-19-r-beta/) --- ## DCF와 이외의 Valution 현금흐름으로 하는 것을 전제로 할 때 현금 나누기 할인율이 가치라는 식이 성립한다면 현금흐름이 아닌 방법 크게 **시장, 자산, 현금(이익)** 세 가지 접근법이 있습니다. **1) 시장접근법** : 시장접근법은 회사의 재무상황과 미래 수익창출 가능성을 기초로 시장을 통해 형성되는 회사의 가치로 평가하는 방법입니다. 상장회사의 경우 증권시장에서 형성되는 주가로 회사의 가치를 평가하며, 비상장회사의 가치는 동일한 업종에 속하는 유사 규모 상장기업의 시장가치를 이용하여 상대가치를 산정할 수 있습니다. 그러나, 시장가치 평가방법은 비교대상이 되는 상장회사의 산정시 평가자의 주관이 개입될 여지가 있습니다. **2) 자산접근법** : 자산접근법은 회사가 보유하는 자산에서 부채를 차감한 순자산의 가치를 이용하여 평가 대상회사의 가치를 결정하는 가치평가 접근법으로 취득원가로 기록된 자산과 부채의 가액을 공정가치로 조정하여 가치를 평가하는 방법입니다. 이 평가방법은 평가방법이 비교적 단순하고 객관적이라는 장점을 가지고 있으나, 회사라는 실체가 미래의 수익 또는 현금흐름창출을 목적으로 존재하는 영속체(Going Concern)라는 점에서는 수익창출능력을 반영하지 못하는 단점을 지니고 있습니다. **3) 이익(현금흐름)접근법** : 이익접근법은 회사의 현재 재무상황보다는 회사가 보유한 유무형의 자산을 가지고 향후에 얼마만큼의 수익(또는 현금흐름)을 실현시킬 수 있는가라는 관점에서 미래의 수익창출능력을 회사의 가치로 평가하는 방법입니다. 대표적인 이익접근법인 현금흐름할인법(이하 “DCF법”)은 이론적으로 가장 우수한 방법이나, 회사의 가치를 결정하는 여러가지 요소의 결정시 주관이 개입될 여지가 있습니다. --- ## 주식가치평가 주식가치는 어떻게 평가하나? 세 가지 접근 방법에 따라서 하나씩 생각 해 볼 수 있습니다. 생각의 흐름 : * 상장주식은 증권 시장에서 빈번하게 거래되고 있는 가격이 있다. - **시장 접근** * 비상장주식은 증권 시장에서 거래되고 있지 않으므로 재무제표의 순자산을 가치라고 한다. - **자산 접근** * 비상장주식은 시장에서 거래 되지 않고 재무제표는 역사적 원가로 되어 있어 미래가치를 반영하지 못할 것이므로 현금흐름을 할인하여 현재가치로 평가한다 - **현금흐름 접근** > 현금흐름 접근하자. 현금흐름을 할인율로 나누자. $$ Cash \ Flow $$ : FCF (Free cash flow, 잉여 현금흐름) $$ Discount \ Rate $$ : Wacc (Weighted Average Cost of Capital) : Discount Rate --- ## 옵션가치평가 옵션가치는 어떻게 평가하나? 옵션에 대한 평가는 내재파생상품을 평가할 때 적용합니다. 생각의 흐름 : * 상장옵션(내재파생상품이 아닌 거래되는 옵션)은 증권 시장에서 빈번하게 거래되고 있는 가격이 있다. - **시장 접근** * 옵션은 권리이므로 옵션에는 자산이 없는 것 같다. - **자산 접근** * 옵션이 발생시킬 수 있는 현금흐름을 추정하고 현재가치로 할인하여 평가한다. - **현금흐름 접근** 내재파생상품 평가는 이항모형이 주로 쓰인다.(CRR, TF, BDT) > 현금흐름 접근하자. 현금흐름을 할인율로 나누자. $$ Cash \ Flow $$ : Binomial Tree (이항 모형) $$ Discount \ Rate $$ : 채권 수익률 (YTM, Spot Rate, Forward Rate) --- ## 복합금융상품의 부채 계상 ### 금융상품 기준서의 자본으로 계상하는 요건 다음 두 가지 조건에 부합하면 자본의 정의를 충족한다고 볼 수 있습니다. (Not,계약상 의무 & fixed for fixed) #### 1. 계약상 의무가 아니다. * 거래상대방에게 현금 등 금융자산을 인도하기로 하거나 발행자에게 잠재적으로 불리한 조건으로 거래상대방과 금융자산이나 금융부채를 교환하는 계약상 의무를 부담하지 아니한다. * 계약상 의무는 일정 금액의 현금 등의 지급하는 강제성 등을 의미하지는 않는다. 경제적 강제성이 있더라도 계약상 의무가 없다면 금융상품을 금융부채로 분류하지 않는다. * 배당의 누적 여부와 계약상 의무는 별개이다. 배당이 누적되더라도 그 배당을 지급하는 것이 주주총회에서 결정되어 회사의 재량에 따라서 배당하는 조건이라면 금융부채로 분류하지 않는다. 반대로 누적적으로 배당을 반드시 하여야 하는 조건이라면 자본의 정의를 충족하지 못하므로 금융부채로 분류한다. --- ## 복합금융상품의 부채 계상 - 계속 #### 2. fixed for fixed (확정 수량과 확정 금액 조건이어야 한다.) * 변동가능한 수량의 자기지분상품을 인도할 계약상 의무가 없는 비파생상품 * 확정 수량의 자기지분상품에 대하여 확정 금액의 현금 등 금융자산의 교환을 통해서만 결제될 파생상품. ### 관련 기업회계기준 >[K-IFRS 제1032호 금융상품 표시] > >15 금융상품의 발행자는 계약의 실질과 금융부채, 금융자산 및 지분상품의 정의에 따라 최초인식시점에 금융상품이나 금융상품의 구성요소를 금융부채, 금융자산 또는 지분상품으로 분류하여야 한다. > >16 금융상품의 발행자가 문단 11의 정의를 적용하여 당해 금융상품이 금융부채가 아니라 지분상품에 해당되는지를 결정하는 경우, 다음 조건을 모두 충족하는 금융상품만이 지분상품이다. --- ## 복합금융상품의 부채 계상 - 계속 >⑴ 다음의 계약상 의무를 포함하지 아니한다. > >㈎ 거래상대방에게 현금 등 금융자산을 인도하기로 하는 계약상 의무 >㈏ 발행자에게 잠재적으로 불리한 조건으로 거래상대방과 금융자산이나 금융부채를 교환하는 계약상 의무 >⑵ 자기지분상품으로 결제되거나 결제될 수 있는 계약으로서, 다음 중 하나에 해당한다. > >㈎ 변동가능한 수량의 자기지분상품을 인도할 계약상 의무가 없는 비파생상품 >㈏ 확정 수량의 자기지분상품에 대하여 확정 금액의 현금 등 금융자산의 교환을 통해서만 결제될 파생상품. 이러한 목적상, 기업이 동일 종류의 비파생 자기지분상품을 보유하고 있는 기존소유주 모두에게 주식인수권, 옵션 또는 주식매입권을 지분비율대로 비례하여 부여하는 경우, 어떤 통화로든 확정금액으로 확정수량의 자기지분상품을 취득하는 주식인수권, 옵션, 또는 주식매입권은 지분상품이다. 또한 이러한 목적상 자기지분상품에는 다음의 금융상품은 포함되지 않는다. > >① 문단 16A와 16B 또는 문단 16C와 16D에 기술하고 있는 모든 특성을 가지고 있으며 동 문단에 기술하고 있는 조건을 충족하는 금융상품 >② 자기지분상품을 미래에 수취하거나 인도하기 위한 계약인 금융상품 > >계약상 의무(파생금융상품에서 발생하는 계약상 의무를 포함한다)에 따라 자기지분상품을 미래에 수취하거나 인도하는 결과가 발생하더라도, 위 ⑴과 ⑵의 조건을 충족하지 않는 계약상 의무는 지분상품이 아니다. 예외적으로, 금융부채의 정의를 충족하는 금융상품이 문단 16A와 16B 또는 문단 16C와 16D에 기술하고 있는 모든 특성을 가지고 있으며 동 문단에 기술하고 있는 조건을 충족하는 경우, 그 금융상품을 지분상품으로 분류한다. --- class: inverse center middle layout: false ---- ## 2. R을 만나게 된 계기와 필요성 인식 --- ### R(Coding)의 필요성 #### 엑셀로 못하는 것을 할 수 있게 된다. (엑셀 대비 장점) 1. 엑셀 노가다는 너무 힘듭니다. 2. 엑셀은 계산기에 비하여 계산을 수행하는데 있어 매우 훌륭하지만 R에 비하여 연산이 어려울 수 있습니다. 3. 엑셀은 자칫 시트를 잘못 건드려서 일부 삭제되는 등으로 인한 오류가 발생할 수도 있습니다. #### Coding으로 구축하면 적게 고생하고 많이 계산할 수 있다. 1. 획일화된 계산에 있어 오차 없이 빠르게 계산할 수 있습니다. (정확성 및 신속성) 2. 반복하거나 재수행하는데 있어 CLI환경이 GUI환경에 비교가 안되게 우월합니다. (재현성 및 반복가능성) <br> **★ 현실적으로 인간이 하기 어려운 연산을 단지 Code를 실행하였으므로 이룰 수 있다.** --- ### TF Model(Tsiveriotis-Fernandes model) #### 채권 평가의 개요 채권 평가는 채권의 공정가치 결정입니다. 증권 또는 자본 투자와 마찬가지로, 채권의 이론적 공정 가치는 현금 흐름 흐름의 현재 가치입니다. 따라서 채권의 가치는 적절한 할인율을 사용하여 채권의 예상 현금 흐름을 현재까지 할인하여 얻습니다. 실제로 이 할인율은 유사한 상품이 존재하는 경우 유사한 상품을 참조하여 결정되는 경우가 많습니다. 그런 다음 주어진 가격에 대해 다양한 관련 수익률 측정으로 계산됩니다. 채권의 시장 가격이 액면가 (par value)보다 낮은 경우 채권은 할인 된 가격으로 판매됩니다 . 반대로 채권의 시장 가격이 액면가보다 크면 채권은 프리미엄으로 판매됩니다. 기간별 시가평가기준수익률은 보간법으로 계산하였으며 관측되는 시가평가기준수익률은 YTM(yield to maturity, 만기수익률)이므로 계약상 현금흐름이 plain vanilla type을 가정하여 산출되었으므로 Bootstrapping을 통하여 현물이자율(Spot rate)을 추출하고 이를 통하여 선도이자율(Forward rate)을 계산하여 적용합니다. 채권에 내재파생상품 옵션 등(embedded options)이 포함 되어 있으면 평가가 더 어려워지고 옵션 가격과 할인이 결합 됩니다. 옵션의 유형에 따라 계산된 옵션 가격은 "직선(straight)"부분의 가격에 가산하거나 차감합니다. 이 총 합이 채권의 가치입니다. --- ## 이자율(채권수익률)의 기간구조 .pull-left[  ] .pull-right[ 이자율 기간구조(The Term Structure of Interest rate)는 일반적으로 우상향(x축 : 기간, y축 : 이자율) 합니다. 기간이 길수록 높은 이자율을 요구한다는 의미입니다. 이는 현실로 일어나고 있는 현상으로써 실제 YTM(yield to maturity, 만기수익률)의 관측치를 보면 기간이 길수록 높은 이자율로 되어 있는 것을 알 수 있습니다. (YTM은 KISLINE, 금융투자협회, 한국신용평가, KISPRICING 등에서 조회할 수 있습니다.) ] --- ## 현물이자율(Spot Rate)과 선도이자율(Forward Rate) 특정 한 시점에서 발생하는 Cash flow를 할인하기 위해서는 주기적으로 이자를 지급하는 이자율인 YTM을 적용하는 것이 비합리적인 결과가 될 수가 있습니다. 모든 조건이 동일하다는 가정 하에 이자를 지급하고 상환 시점에 원금이 발생하는 Cash flow에 해당하는 이자율과 상환 시점(특정 시점)에만 한번 발생하는 Cash flow에 해당하는 이자율은 차이가 있을 것이기 때문입니다. 한 시점에서 발생하는 Cash flow를 할인할 때는 현물이자율(Spot Rate)을 적용하여야 하고 Cash flow 발생 시점에서 현재까지 할인하는 것이 아니라 일부의 시점까지 할인할 때에는 선도이자율(Forward Rate)을 적용하여 할인하여야 합니다. 이론적으로 이자를 지급하는 채권이자율에서 순수할인채에 해당하는 이자율인 현물이자율(Spot Rate)을 계산하고 이를 통해서 선도이자율(Forward Rate)을 계산하는 방법을 Bootstrapping이라고 부릅니다. #### (1) 현물이자율 (spot interest rate) 현물이자율(Spot Rate)은 채권의 평가에 일반적으로 사용되는 이자율입니다. 만기수익률(Yield to maturity)이 채권의 모든 현금흐름과 현재가치를 일치시키는 평균수익률 개념이라면 현물이자율은 무이표채(+무위험)의 만기수익률이다. 즉, 이표(쿠폰)가 없는 채권은 만기수익률과 현물이자율이 동일합니다. 미래의 현금흐름(채권 또는 대출 등)의 가치를 평가할 때는 이 현물이자율로 할인하여 현재의 가치를 구하게 되는데 각 현금흐름이 발생한 시점(만기)의 현물이자율이 필요합니다. 현실적으로 시장에 이러한 시점의 현물이자율이 존재하지 않는 경우는 보간법(Interpolation)을 이용하여 해당 시점(만기)의 현물이자율을 계산하여 사용합니다. --- 일반적으로 채권평가사에서는 특정 채권의 만기수익율과 현물이자율을 제공하는데 제공받지 못하는 경우는 이표채의 가격을 이용하여 현물이자율을 계산하는 부트스트래핑방법(Bootstrapping Metholology)를 이용하여 구합니다. 현실적으로 이자를 지급하지 않는 무이표채가 발행되지 않으므로 관측되는 채권수익률은 쿠폰이 포함되어 있는 YTM(이표채부 채권수익률)입니다. 따라서 보간법으로 적절한 기간에 해당하는 값을 추정한 후에 Bootstrapping으로 현물이자율을 계산하여 이론적인 현물이자율을 산정합니다. #### (2) 선도이자율 (forward rate) 선도이자율이란 현물이자율의 기간구조를 이용하여 구한 미래의 이자율을 말합니다. 선도이자율 `$$_{t-1}f_t$$` 는 다음의 방법에 의해 구할 수 있습니다. `$$(1+r_t)^t = (1+r_{t-1})^{t-1}(1+_{t-1}f_t)$$` --- 예를 들어, 1기의 현물이자율이 6%이고 2기의 현물이자율이 8%라고 할 때, 선도이자율 `$$_1f_2$$` 는 `$$(1+r_2)^2 = (1+r_1)(1+_1f_2)$$`를 이용하면, `$$(1.08)^2 = (1.06)(1+_1f_2)$$` 이므로 $$_1f_2 = 0.1 $$ --- ## 전환사채 평가방법 전환사채의 가격은 채권가치, 전환권가치 및 조기상환청구권의 합으로 결정되며, 전환사채의 가치평가 방법으로 이항옵션평가모형 중 하나인 Tsiveriotis-Fernandes and Hull 모형(지분-채권 현금가중할인방법 , Equity and bond cashflow weighted discounting)을 적용하였습니다. 이항옵션평가모형은 이산 시간(discrete-time)에서 옵션의 주요 기본 변수의 변화를 추적합니다. 이는 평가 및 만료 날짜 사이의 여러 시간 단계 동안 이항 격자(tree)를 통해 수행됩니다. 격자의 각 노드는 주어진 시점에서 가능한 기본 가격을 나타냅니다. * 지분-채권 현금가중할인방법, Equity and bond cashflow weighted discounting Tsiveriotis와 Fernandes는 전환형 복합상품을 지분요소가치(Equity value)와 부채요소가치(Debt value)로 분리하여 위험중립확률이 적용되는 지분요소가치는 무위험이자율로 할인하고 부채요소가치는 신용위험이 반영된 위험이자율로 할인하여 각각의 가치를 산정한 후 두 가치의 합으로 전환형 복합상품의 가치를 측정하는 모형(Equityand bond cashflow-weigthed discounting model)을 제시하였습니다. 또, Hull은 이를이항모형으로 구현하여 아메리칸 옵션유형에 적용할 수 있는 전환형 복합상품의 평가방법을 제시하였습니다. Tsiveriotis-Fernandes and Hull 모형은 전환형 복합상품의 구성요소별 현금흐름에 대응되는 할인율을 달리 적용함으로써 전환형 복합상품의 현금흐름의 위험과 특성을반영하는 장점으로 인해 실무적으로 가장 널리 이용되고 있습니다. --- ## T-F and Hull 모형 - 전환형 복합상품 가치평가과정 #### 만기시점(pay-off) 전환사채 가치 T-F and Hull 모형에 따른 전환형 복합상품의 가치평가는 만기시점(pay-off)의 지분요소가치, 부채요소가치를 각각 계산한 후 이를 합하여 만기시점 전환형 복합상품의 가치를 계산하는 것으로 시작합니다. - V(n,j) = Ve(n,j) + Vd(n,j) $$ `\begin{aligned} Ve(n,j)&: component \; Equity \; Value \; at \; pay-off\\ Vd(n,j)&: component \; Debt \; Value \; at \; pay-off\\ \end{aligned}` $$ - Equity tree $$ `\begin{aligned} Ve(n,j) = Cr& \times S(n,j) \\ if \quad Cr& \times S(n,j) > Red \\ \end{aligned}` $$ $$ `\begin{aligned} Ve(n,j) = 0& \\ if \quad Cr& \times S(n,j) < Red \end{aligned}` $$ --- - Debt tree $$ `\begin{aligned} Vd(n,j) = 0& \\ if \quad Cr& \times S(n,j) > Red \end{aligned}` $$ $$ `\begin{aligned} Vd(n,j) =& Red\\ if \quad Cr& \times S(n,j) < Red \end{aligned}` $$ > V(n,j): 전환사채 총 가치(만기시점) > Ve(n,j): 전환사채 지분요소가치(만기시점) > Vd(n,j): 전환사채 부채요소가치(만기시점) > Cr: 전환 비율 > S(n,j): 주가(만기시점) > Red: Redemption amount(만기상환금액) 지분요소의 만기가치는 전환가치(Parity 또는 Cr X Sn,j)가 만기상환금액(Red)보다 큰 경우 전환가치를, 그렇치 않은 경우에는 0원으로 인식합니다. 또, 부채요소의 만기가치는 전환가치가 만기상환금액보다 작은 경우 만기상환금액을, 그렇치 않은 경우에는 0원으로 인식합니다. 전환형 복합상품의 만기가치는 지분요소와 부채요소의 합으로 계산되므로, 결과적으로 각 노드별로 전환형 복합상품을 인식하게 됩니다. --- #### 지분요소 트리 및 부채요소 트리 T-F and Hull 모형은 전환형 복합상품의 구성요소별로 각각의 이항트리를 아래와 같이 생성하되, 지분요소는 무위험이자율(rf)로 할인하고 부채요소는 위험이자율(rd)로할인하여 측정합니다. 이때, 각각의 이항트리 생성과정에서 기초자산가격에 따라 전환가치(parity), 보유가치(holding value)를 선택할 지에 대한 의사결정변수(qi,j)을 고려합니다. * 지분요소 트리의 계산방법은 다음과 같습니다. Equity tree : if converted $$ i.e. q(i,j) = 1 : \quad Ve(i,j) = Cr \times S(i,j) $$ if not converted $$ q(i,j) = 0 $$ if Put(i) or Call(i) $$ `\begin{aligned} &Ve(i,j) = 0\\ &otherwise\\ &Ve(i,j) \\ &= [p \times (Ve(i+1,j+1)+(1-p) \times Ve(i+1,j)]\times{\rm e}^Rf \end{aligned}` $$ --- * 부채요소 트리의 계산방법은 다음과 같습니다. Debt tree : if converted $$ i.e. q(i,j) = 1 : \quad Vd(i,j) = 0 $$ if not converted $$ q(i,j) = 0 $$ if Put(i) or Call(i) $$ `\begin{aligned} &Vd(i,j) = Put(i) \; or \; Call(i)\\ &otherwise\\ &Vd(i,j) \\ &= [p \times (Vd(i+1,j+1)+(1-p) \times Vd(i+1,j)]\times{\rm e}^Rd + coupon(i) \end{aligned}` $$ 위의 지분요소 트리와 부채요소 트리를 생성하기 위해서는 매시점(i-time)과 각노드(j-node)별로 전환여부를 판단할 의사결정변수(qi,j)를 생성해야 합니다. qi,j는 전환가치(Cr X Si,j)가 보유가치(rollded-back value) 및 풋옵션가격(Puti)보다 큰 경우에는 전환이 유리하므로 qi,j=1이 되고, 그렇치 않은 경우에는 qi,j=0이 됩니다. --- ### 전환형 복합상품 가치 전환형 복합상품 가치(V(i,j))는 지분가치(Ve(i,j))와 부채가치(Vd(i,j))의 합으로 측정되며, 매시점별로 보유가치(holding value), 풋옵션조건(Put(i)) 및 콜옵션조건(Call(i))을 고려하여 다음과 같이 측정합니다. 아래의 산식은 전환형 복합상품 가치를 만기를 제외한 모든 time-step 과 모든 node에서 동일하게 사용됩니다. $$ `\begin{aligned} &V(i,j) \\ &= max[min(Ve(i,j) + Vd(i,j), Call(i)), Cr \times S(i,j), (Put(i))] \end{aligned}` $$ 산식에 따라 계산된 전환형 복합상품 트리를 만기부터 현재시점까지 소급하여 계산된 가치를 전환형 복합상품 현재가치로 도출합니다. --- class: inverse center middle layout: false ---- ## 3. Rmarkdown PDF Knit 환경 구축 - Linux(Ubuntu) --- ### Windows 에서의 Rmarkdown PDF Knit 문제 Rmarkdown에서 한글이 포함된 내용은 pdf 변환이 되지 않습니다.(에러 발생) Latex을 설치해야 한글 Rmarkdown pdf를 생성할 수 있다고 합니다. ### Latex #### KTUG 한국 텍 사용자 그룹 [http://www.ktug.org](http://www.ktug.org) 권장 설치 방법 운영체제별 권장 설치방법은 wiki에 정리되어 있습니다. * Microsoft Windows용 설치방법 * Mac OS X용 설치방법 * Linux용 설치방법 Linux(Ubuntu)에서 Tex 설치가 가장 간편하며 에러 없이 작동합니다. --- class: inverse center middle layout: false ---- ## 4. Rstudio Server --- ## Rstudio Server #### Windows에서 리눅스 R을 사용하기 위하여 Rstudio Server를 선택하였습니다. [https://www.rstudio.com/products/rstudio/](https://www.rstudio.com/products/rstudio/) #### Take control of your R code RStudio is an integrated development environment (IDE) for R. It includes a console, syntax-highlighting editor that supports direct code execution, as well as tools for plotting, history, debugging and workspace management. RStudio is available in open source and commercial editions and runs on the desktop (Windows, Mac, and Linux) or in a browser connected to RStudio Server or RStudio Workbench ### Windows를 버릴 수 없는 이유 1. 직업 상 Windows에서만 구동할 수 있는 프로그램을 다루어야만 하는 현실. 2. 절대 다수의 사람들이 Windows를 사용하고 있으므로 Font, Excel File 등의 사용에서 커뮤니케이션 목적으로 필요. 3. 금융거래 등 Windows가 아니면 지원받지 못하는 영역이 존재하므로 Windows가 아니면 제약이 따르는 현실. --- class: inverse center middle layout: false ---- ## 5. Google Sheet --- ## Google Sheet for R [https://googlesheets4.tidyverse.org/](https://googlesheets4.tidyverse.org/) Excel(엑셀)에는 엑설런트(excellent)라는 뜻이 있습니다. **excellent** 상징하는 이름 그 자체가 말해주듯이 엑설런트한 프로그램입니다. 수 많은 기업, 단체, 개인 등 엑셀을 항시 사용하여 많은 일을 처리하는 것이 보편적일 정도로 엑셀은 인기를 넘어서 생활화 되어 있다고 할 수 있을 만큼 널리 사용됩니다. 그러한 유료 프로그램 엑셀에 대항하여 만들어진 오픈소스 리브레오피스 등 무료로 사용 가능한 엑셀 유사 프로그램도 있고 한글과컴퓨터의 한셀도 비슷한 기능을 하는 것 같으나 이미 사람들은 엑셀에 익숙하고 친해져 있으므로 엑셀이 아닌 다른 프로그램을 사용하는 것은 선택받지 못하는 경우의 수에 그치고 말았다고 볼 수 있습니다. 그러나 이제 구글에서 만들어낸 Google Sheets(구글 스프레드시트)가 엑셀 대신 사용하고 싶다는 생각이 들 정도로 강력하다는 것을 알게 되었습니다. 이제 와서 엑셀과 유사한 기능을 하기 위하여 새로운 프로그램을 배워야 한다니 납득하기 어려웠으나 열린 마음으로 Google Sheets를 보니 엑셀 사용량을 줄이고 Google Sheets를 사용해야겠다는 생각에 도달하였습니다. 그렇다면 어떤 좋은 부분이 있어서 구글 스프레드시트를 사용한다는 것일까? --- ### Google Sheets는 엑셀과 유사하다. Google Sheets를 사용한다고 해서 기존에 사용하던 기능을 완전히 버리고 완벽하게 새로운 프로그램을 사용한다는 개념은 아닙니다. Google Sheets의 단축키 메뉴에서 호환되는 스프레드시트 단축키 사용을 설정하면 엑셀에서 사용하던 단축키의 대부분이 그대로 적용이 가능하다. Google Sheets는 웹브라우져에서 구동하므로 웹브라우져의 단축키와 충돌하는 경우 작동하지 않는 경우가 있으나 단축키 몇개를 사용 못하는 것은 감수할 만 하다고 판단할만한 장점이 더 존재합니다. ### Google Sheets는 무료이다. 구글이 용량을 15기가 무료로 제공하므로 이 용량 이내에서 사용하는 한 무료로 사용할 수 있습니다. ### Google Sheets는 저장을 할 필요가 없다. 엑셀은 아주 안정적으로 사용하는 프로그램이라고 할 수는 없습니다. 엑셀을 사용하여 열심히 많은 것을 작업하다가 저장을 하지 않았는데 엑셀 프로그램이 먹통이 되거나 꺼져버려서 날려 본 경험이 있다면, 그래서 했던 일을 다시 하는 고통을 겪어 보았다면 Ctrl + s 를 수시로 누르는 것이 당연하게 받아들여질 것입니다. 그러나 Google Sheets는 저장을 신경 쓰지 않아도 스스로 계속해서 저장합니다. 그리고 Google Sheets는 나의 컴퓨터 하드웨어가 아닌 더욱 안전한 구글 드라이브가 저장하고 있습니다. --- ### Google Sheets는 버젼관리를 할 필요가 없다. 엑셀 파일을 여러개를 생성하면서 파일명v1.xlsx, 파일명v2.xlsx , 파일명v3.xlsx , 파일명최종.xlsx , 파일명최최종.xlsx ,파일명정말최종.xlsx 이렇게 파일을 다른이름으로 저장 하는 버릇 또한 했던 일을 다시 하지 않거나 하던 일을 돌이키고 싶어지는 상황을 방지하기 위하여 하게되는 스마트한 일이라고 볼 수 있었습니다. 그런데 최종이라는 이름으로 야심차게 일을 마쳤는데 또 수정할 일이 생긴다면 최최종, 정말최종, 정말정말최종 등의 이름을 생성하게 되어 도대체 무엇이 최종적으로 마무리한 파일인지 알 수가 없게 됩니다. Google Sheets는 이런 식의 버젼관리를 할 필요가 없습니다. Google Sheets를 사용하는 동안의 이력이 시시각각 기록되어 남아 있으므로 원하는 시점으로 시간이동을 할 수가 있습니다. ### Google Sheets는 공동으로 작업할 수 있다. 컴퓨터의 하드웨어에서 구동하는 엑셀은 한명이 하나의 파일을 사용하게 되고 복사본을 다른 사람에게 전달하고 나서 추가적인 작업을 한다면 그 작업은 나의 컴퓨터에서 나만 볼 수 있는 구조이며 지금까지의 당연한 상식에 해당합니다. 그러나 Google Sheets는 클라우드 기반으로 구동하므로 여러명의 사용자가 하나의 시트에 동시에 붙어서 동시다발적으로 작업이 가능합니다. --- ### Google Sheets는 웹에서 클라우드 기반으로 사용한다. Google Sheets는 클라우드에 있으므로 컴퓨터가 켜져 있지 않아도 그대로 있다고 볼 수 있습니다. 다른 컴퓨터에 가서도 동일한 작업을 이어서 할 수 있고 실시간 업데이트 같은 기능을 구사할 수도 있습니다. ### Google Sheets는 배열수식을 지원한다. 엑셀은 셀 by 셀로 셀들의 집합으로 구성하는 것이 원칙입니다. 따라서 하나의 셀에는 하나의 값이 입력되어 있어야만 결과는 나타내어 주는 것이 기본입니다. 지금껏 당연한 것으로 받아들이고 살아왔으나 동일한 수식을 여러개의 셀에 나열하는 것은 셀이 많아지면 그 중 하나가 빠지거나 더해지거나 삭제되어도 찾기가 어려워진다는 불안감을 가질 수 있게 됩니다. Google Sheets는 배열함수를 지원하므로 여러개의 셀에 동일한 반복 참조식 같은 것을 입력해야 할 때 맨 위에 하나만 입력해도 표 등의 형태로 참조할 수 있게 할 수 있습니다. 하나의 셀에 값을 입력하면 여러개의 셀에 한번에 결과를 나타내어 주는 것입니다. 하나를 쓰면 전체가 나타나고 하나를 지우면 전체가 다 없어지므로 일부 잘못 눌려 지워져서 다른 것이 참조되지 않을까 하는 염려가 없어집니다. 또한 하나만 쓰면 되므로 여러 셀에 복사해야 하는 수고 또한 없어지게 됩니다. --- ### Google Sheets는 앱스 스크립트를 내포한다. 엑셀에도 VBA(Visual Basic for Application)이라는 매크로 프로그래밍 기능이 있습니다. Google Sheets의 앱스 스크립트는 자바스크립트(Javascript)를 기반으로 합니다. 사람들이 많이 사용하여 흥행하는 프로그래밍 언어는 수 많은 사람들이 발전시켜 공유하고 있으므로 더욱 좋은 기능이 출현하는 현상을 보이고 있습니다. Google Sheets는 클라우드 기반에서 구동하므로 자바스크립트 언어로 된 앱스 스크립트로 오래 걸리는 프로그래밍을 해 놓고 Google Sheets가 돌아가게 한 다음 나의 컴퓨터를 꺼버려도 구글의 서버에서 원활하게 돌아갑니다. 엑셀의 VBA가 느려서 몇 시간이고 컴퓨터를 켜 두고 컴퓨터가 멎어 버릴까봐 사용하지도 못하고 가만히 두었던 경험이 있다면 이것이 얼마나 좋은 기능인지 바로 알 수가 있습니다. ### Google Sheets는 R과 연동할 수 있다. 이렇듯 좋은 점이 많은 Google Sheets는 R과 연동하여 R에서 데이터를 읽어서 작업하고 다시 Google Sheets에 쓰는 등으로 활용할 수가 있습니다. R의 강력한 프로그래밍 기능과 Google Sheets의 장점 및 앱스 스크립트를 엮어서 사용하면 완전하게 신개념 업무 체계를 구축할 수가 있을 것 같습니다. --- layout: false class: center, middle # Thanks!