올해도 튤립이 왔습니다.




피어있는 튜립의 신비스런 아름다움은

빠져들기에 충분합니다.




영화 <월스트리트2:돈은 결코 잠들지 않는다>에서

투자가 게코는 사위 제이콥에게

17세기 네델란드의 튜립 파동(Tulip Mania)을

삶에 비유해서 이야기합니다.

( 이미지 출처 : 월스트리트2 )


"(인간 사이의) 관계들, 그런 것은 거품과 같아.

(Relationships, they're like bubbles.)

덧없는 것이지.

(They're fragile.)

이 그림은 1600년대 네델란드의 거대한 거품에 대한 이야기야.

(This is the greatest bubble story of all time. Back in the 1600s, the Dutch)"


( 이미지 출처 : 월스트리트2 )


"튜립 한뿌리가 암스테르담 운하의 멋진 집 가격과 맞먹을 정도로 투기 열병이 일었지.

(They got speculation fever to the point that you could buy a beautiful house on a canal in Amsterdam,

for the price of one bulb.)

이것을 튜립 파동(광기)라고 부르지.

(They call it 'Tulip Mania')

그리고는 무너져 내렸지.

(Then it collapsed)"



영화 속 게코의 얘기처럼

사람들은 때때로

무언가에 열광(열중?)하곤 합니다.


스포츠, 아이돌, 그리고 사랑.


호감을 넘어서 열광, 

그리고 광기에 가까운 사랑은

이성적 판단을 흐리곤 합니다.



주식의 가격도

튜립의 가격처럼

때때로 튀어 오르곤 합니다. 

2016년 영진약품 주가도 그랬습니다.

2000원 대였던 주가는 몇 달 만에 10배가 되었습니다.



2019년 4월 현재 6500원대로 내려 앉았습니다.


주당 순이익이 10원, 20원 혹은 적자인

주식 가격(가치)이라고 하기에는

많이 높은 듯 합니다.


당시 갖고 있던 영진약품 주식은

구매 가격의 2~3배 정도로

마무리했던 기억이 있습니다.


개인적으로 이정도 이상의 가치는 (절대~~) 없다고 생각했었습니다.


그러나, 결과적으로 예상을 훨~~씬 뛰어넘는 가격까지 상승했습니다.



지난 포스팅에서 얘기드린

<박스이론>의 창시자

니콜라스 다비스

이런 현상을 잘 이해하고 대응한 사람이었습니다.


그는 주가가 오르고 있는 동안에는 매도하지 않았습니다.

주가가 큰 고개를 넘어 

하락하기 시작하는 지점을 찾아

매도의 시점으로 잡았습니다.


비이성적인 인간의 행동을 투자에 활용했습니다.



영화 <장미의 이름>은 이런 인간의 광기를 경계합니다.


( 이미지 출처 : 다음 영화 )


"가짜 그리스도는 지나친 믿음에서 나올 수도 있고,

하느님이나 진리에 대한 지나친 사랑에서 나올 수도 있다. 

선지자를 두렵게 여겨라. 

리고 진리를 위해서 죽을 수 있는 자를 경계하여라.

진리를 위해 죽을 수 있는 자는 대체로 많은 사람을 저와 함께 죽게 하거나, 

때로는 저보다 먼저,

때로는 저 대신 죽게 하는 법이다."


숨어있는 마음 속 광기를 경계하고자 합니다.


( 이미지 출처 : 티스토리 )


올해도 튜립이 지나갑니다.




2018년은 어려움을 겪던 한국 조선업에 활력이 돌아온 해였습니다.

축적된 기술로 늘어나는 LNG선 수주에 성공했습니다.


( 출처 : 한국경제 )



회복된 실적에 따라서 조선사의 주가도 작년 말에는

최저가 대비 20~40% 상승했습니다.


( 출처 : 한국경제 )


조선업에 대한 2019년 전망도 '맑음'이었습니다.

( 출처 : 한국경제 )



산업에 대한 밝은 전망에 따라

투자 기회를 생각하게 되었습니다.


조선업의 회복은 뉴스에서도 많이 얘기가 되었고,

조선사의 주가도 20~40% 상승한 상태이므로,

이미 널리 퍼진 상태라 생각했습니다.


선점을 하기에는 늦었다는 생각에 조선의 후방 산업을 확인했습니다.


LNG선 보냉자재를 생산하는 

한국카본은 

LNG선 호황에 수혜를 받을 것이라 여겨졌습니다.

( 출처 : 한국경제 )


2019년 초 한국카본에 대한 매수를 결정했습니다.


매수 후, 실적 턴어라우드에 대한 전망이 이어졌습니다.

2021년까지 실적증가를 예상하기도 합니다.

( 출처 : 이투데이 )


( 출처 : 이데일리 )


해당 종목을 

올해(2019년)초 3번의 분할매수를 하였고,

현재 약 22% (미확정) 수익 구간에 있습니다.


조선업의 주가 변화와 비교를 해보면,

현대미포조선은 년초 6만원 근처에서 4월초 현재 6만원 근처이고,

현대 중공업은 년초 13만원 대에서 현재 12만원 대로 하락했습니다.

삼성중공업은 7500원대에서 8600원대로 약 15% 상승을 보였습니다.

 

전방산업의 호황 소식

후방산업 투자를 결정하는 선행지표가 될 수 있을 것 같습니다.



'나는 두려워한다. 남들의 말을'


독일 시인 릴케는 단정적인 얘기과 생각을 경계했습니다.

( 참고 : 번역마다 시의 제목은 다릅니다. )


( 출처 : 네이버 블로그 )



'유럽의 버핏'으로 불리는 '앙드레 코스톨라니'는 

'두려움 대신 남들과 다르게 생각하라' 충고했습니다.

( 참고 : 남들과 반대로 투자하라 - dongA.com )


돈, 뜨겁게 사랑하고 차갑게 다루어라

( 출처 : YES24 )



'코스톨라니의 달걀'은 매수와 매도의 시점에 대한 생각을 잘 보여줍니다.


( 출처 : 코스톨라니의 달걀 -  티스토리 )


달걀의 저점 근처에서 매수 하고, 고점 근처에서 매도를 하라고 합니다.


그림으로 보면 너무나 쉬운 일 같습니다.

그런데, 현실로 돌아오면 어려움이 많습니다.


"현재 시장은 고점인가요? 저점인가요?"


결코 쉽지 않은 질문입니다.


코스콜라니의 얘기를 짚어보면서 답을 찾아봅니다.


코스톨라니는 시장 참여자를 크게 두 분류로 나누었습니다.


'소신파'와 '부화뇌동파'.

소신파는 자신의 판단으로 투자하는 사람을 얘기하고

부화뇌동파는 다른 사람을 따라서 투자하는 사람을 얘기합니다.


'고점'은 부화뇌동파가 시장에 몰려 가격이 상승하는 시점이고,

'저점'은 부화뇌동파의 투매로 가격이 하락합니다.


즉, 고점과 저점에서는 남들을 따라 사거나 파는 사람이 몰려서 '거래량'이 증가합니다.

그리고, 고점에서는 희망적 전망이, 저점에서는 부정적 전망이 시장을 지배합니다.


코스톨라니는 이를 한마디로 정리했습니다.

"시장에 바보보다 주식이 많으면 사야할 때이고, 주식보다 바보가 많으면 팔아야 할 때이다"



거래의 신 '혼마 무네히사'도 투자에서 다름을 강조했습니다.

"사람들이 서쪽으로 달리면 나는 동쪽으로 달려야 이운이 따른다"



 다르다는 것에는  릴케의 얘기처럼 두려움이 따릅니다.

차별에 대한 원시적 두려움이 따릅니다.

( 참고 : 차별 심리는 원시적 두려움이다 - 한국일보 )



투자의 성공은 

자신의 판단으로 행동하며 

대중에 휩쓸리지 않을 때 얻어진다는 조언으로

두려움을 이겨냅니다.


['남과 다름' -자유를 향한 비상구] 라는 이야기에 공감합니다.


( 출처 : HSAdzine )



퍼져나가는 물결은 천천히 높이가 낮아집니다.


( 출처 : pxhere.com )


급등했던 주가도 물결과 비슷할까요?

큰 물결 뒤에 잔물결이 뒤따를까요?

잔물결을 이용한 투자는 가능할까요?


지난 포스팅에서 얘기했던 더존비즈온리노공업의 잔물결 투자를 진행했습니다.


잔물결 투자를 진행하면서 몇 가지 원칙을 정했습니다.


1. 현금 비중을 특정 비율 이상 유지한다

2. 충분한 가격 하락을 기다린다 ( 최고가 대비 20% 이상 )

3. 목표 수익률은 10% 정도로 낮춘다

4. 분할 매수, 분할 매도를 지킨다


더존비즈온은 4년간의 투자를 통해 작년(2018년)초에 300% 이상의 수익으로 마무리했던 종목입니다.

2018년 7월에 66,800원을 최고점으로 몇번의 등락이 있었습니다.


올해(2019년) 초 현금비중이 10%를 넘고, 충분히 하락을 한 시점에서 2번에 나누어 매수했습니다.

1차 매수는 42,500원

2차 매수는 40,450원

그리고, 얼마전 10% 수익에 2번의 자동감시 매매에 의해 매도가 완료되었습니다.



약 1.5개월 기간 투자에 수익률은 10.2%였습니다.

상대적으로 짧은 기간에 마무리된 투자였습니다.




리노공업은 2017년 2월에서 2018년 2월까지의 1년 투자기간에 51.6%의 수익을 거둔 종목입니다.


상승 후에 6만원 대에서 등락하던 주가는 2018년 11월 예매를 해둔 55,000원 대에 매수되었습니다.

47,000원까지 분할매수를 통해 평균단가를 낮추었습니다.

중간에 급등에서 일부를 56,000원에 매도하고, 다시 52,800원에 추가 매수하였습니다.

그리고, 예약해둔 분할 매도에 의해 마무리 되었습니다.


3월 11일 평균 매도 가격 -  56,642원

3월 12일 평균 매도 가격 - 58,000원

3월 13일 평균 매도 가격 - 58,293원 



약 5개월의 투자 기간에 11.9%의 수익률입니다.


매수 후 짧은 기간에 목표가에 도달했던 더존비즈온에 비해 

추가하락에 의한 추가매수와 기다림 등 변화가 제법 있었던 투자였습니다.



롱펠로우의 시처럼 항상 '물결은 일고, 물결은 잦아듭니다.'


( 이미지 출처 : 우드플래닛 )




경제적 해자(Economic Moat)를 가진 기업은 차별화된 점이 있습니다.

경쟁에서 우위에 설 수 있는 차별화된 점이 '경제적 해자' 역할을 합니다.


지난 포스팅에 소개한 '리노공업'은 기술축적의 시간과 제품의 신뢰성을 차별화 요소로 갖고 있었습니다.

( 이미지 출처 : 리노공업 홈페이지 )


경쟁에서 우위를 가질 수 있는 차별화 요인은 무엇일까요?

어떤 특징이 차별화를 가져다 주는 것일까요?


경쟁 우위를 주는 경제적 해자의 몇 가지 특징을 생각해 보겠습니다.


1. 비용적 우위(Cost Advantage)

사업을 유지하는 비용을 낮출 수 있는 방법은 경쟁 우위를 주는 확실한 방법입니다. 낮은 가격에 재료를 구매하거나, 생산에 들어가는 시간과 재료의 양을 줄이는 것, 보관과 운반에 소모되는 비용을 줄이는 것은 경쟁자에 비해 가격 경쟁력을 높이고, 수익을 높일 수 있는 방법입니다. 이런 비용은 규모의 경제(대량 판매), 효율화된 시설, 효율적인 관리 등에서 나올 수 있습니다. 


'아마존(Amazon)'과 같은 온라인 쇼핑몰은 인터넷이라는 가상의 공간을 바탕으로 재고 부담을 없애고, 부동산 임대 비용을 줄이고, 인력 비용을 낮춤으로써 오프라인 매장에 비해서 높은 비용적 우위를 유지하고 있습니다.


( 이미지 출처 : 아마존 홈페이지 )


5,000원 내외의 비용으로 당일 배송 서비스를 시작한 '원더스'배송 운영 효율화에서 비용적 우위를 만들고 있습니다. 

( 이미지 출처 : 원더스 홈페이지 )


2. 네트워크 효과 (Network Effect)

사람이 모이는 곳에는 어디에나 이야기가 있습니다. 사람들이 모여서 만들어 내는 이야기는 흥미롭고 재미있습니다. 흥미롭고 재밌는 이야기는 더 많은 사람들을 불러 들입니다.


사람과 사람의 관계가 만들어내는 네트워크(Network)은 이처럼 사람을 끌어당기는 힘이 있습니다. '사회적 연결'의 힘입니다. 그리고 만들어진 네트워크는 쉽사리 바뀌지 않습니다. 


메신저 '카카오(kakao)'는 네트워크의 힘을 보여주는 좋은 사례입니다. 주변의 대부분의 분들이 '카카오'를 사용하는 상황에서 다른 메신저를 사용하는 불편함을 감수하기는 어렵습니다. 카카오는 메신저를 기반으로 한 사업에 있어서는 확실한 경쟁우위를 가지고 있다 할 것입니다.

( 이미지 출처 : 카카오 홈페이지 )


3. 높은 이관 비용(High Switching Cost)

이사는 비용과 시간을 필요로 하는 일입니다. 이사를 계획하고, 옮겨갈 곳을 찾고, 새로운 곳에서 꾸미고, 짐을 옮겨 정리하는 일은 쉽지 않습니다. 그리고, 옮기고 나서 생각지 못한 문제가 발생할 가능성은 이사에 대한 걱정을 줍니다.


이용을 하기 시작하면 옮기기 어려운 서비스를 제공하는 기업들이 있습니다. 특히나 매일 축적되는 데이터를 보관/관리를 하는 서비스는 오래도록 쌓여있는 데이터의 양 때문에 다른 서비스로 옮기기 어렵습니다. 


많은 기업들이 데이터 저장을 위해서 사용하는 '오라클(Oracle)' 데이터베이스를 다른 데이터베이스로 이관하는 작업은 많은 준비와 비용이 필요합니다. 제품을 사용하는 고객에 대해서는 상당한 경쟁우위를 제공합니다.

( 이미지 출처 : 오라클 홈페이지 )


4. 무형 자산(Intangible Assets)

다른 기업이 갖지 못한 차별화된 무형의 자산 - 브랜드, 기술력, 특허, 정부허가 등 - 은 독점적인 지위를 제공합니다. 


'삼화왕관(Samhwa crown & closure)'은 정부의 허가가 필요한 납세용 병마개를 생산합니다. 허가없는 업체가 경쟁할 수 없는 부분입니다. ( 참고 : 장기투자자에게 거래량은 중요하지않다 - 삼화왕관 )

( 이미지 출처 : 삼화왕관 홈페이지 )

 

 앞서 소개한 '리노공업'은 축적된 시간에 따른 기술과 신뢰로 경쟁우위를 확보하고 있습니다. 


사용자가 갖는 좋은 감정(브랜드 이미지)도 큰 경쟁우위로 작용합니다.

브랜드를 좋아하는 사람들은 자발적으로 브랜드를 응원합니다.

( 출처 : 모바일한경 )



특허는 가장 잘 알려진 무형자산입니다.

( 출처 : 뉴스핌 )




"시간은 모든 것을 파괴한다. 우리가 사랑하는 모든 것을. 우리가 사랑하는 모든 사람들을..."

미셸 투루니에(Michel Tournier)는 '외면일기'에 적습니다. 

외면일기

( 이미지 출처 : YES24 )



기업이 가진 경쟁우위도 시간에 따라 변화를 겪습니다. 생겨나고, 커지고, 사라집니다


새로운 형태의 경제적 해자가 생겨나는 초기에는 인식하기 어렵습니다. 경제적 해자가 완성된 시점에는 절대로 넘어설 수 없는 것처럼 보입니다. 그러나, 시간이 가져오는 상황의 변화는 해자를 메꿔버리기도 합니다. ( 참고 : 위장 평화 전술에 무너진 오사카 성




퍼스널 컴퓨터 초기 IBM은 개인용 컴퓨터의 운영체제(OS)가 그토록 강력한 경제적 해자가 되리라는 것을 인식하지 못했습니다. 


마이크로소프트는 운영체제(MS-DOS, 윈도우즈)를 경제적 해자로 20년 이상 시장을 지배했습니다. 


윈도우라는 강력했던 해자도 스마트폰을 시작으로 한 컴퓨팅 환경의 변화로 힘을 잃어가는 것 같습니다.



미래에 새롭게 자리잡을 경제적 해자(기술, 브랜드...)는 무엇일까요?

새로운 경제적 해자를 알아볼 수 있을까요?

열린 마음으로 다양한 생각에 흥미를 가지고 지켜보는 눈을 갖고 싶습니다.





"소문에 사서 뉴스에 팔아라"


널리 알려진 증권가의 격언입니다.


지난 포스팅 - '흐름을 거스리기는 어렵다 : 대한해운' - 에서 해당 종목에 대한 관심은 '좋은 뉴스'에서 시작되었다고 했습니다. 


( 출처 : 연합뉴스  )


결과적으로 -15% 손실로 마무리 했습니다.


돌이켜보면 기사에 나올 정도로 좋은 뉴스는 차별화된 정보가 이니었습니다.



유명한 투자자 '워런 버핏(Warren Buffett)'은 오히려 '나쁜 뉴스'에 주목했습니다.


( 출처 : rebalance )


보고를 받을 때에서 나쁜 뉴스를 먼저 확인해서 상황이 좋은 뉴스로 포장되는 것을 피했습니다.

Buffett knows that most people will try to lead with good news. The problem is, they often use the upside of the situation to paper over the risk of having to share bad news at all. )



2008년 금융위기 시절에 버핏은 뉴욕 타임즈에 기고한 글에서 얘기합니다.

"나쁜 뉴스는 투자자의 최고의 친구입니다"

( Bad News is an investor's best friend. )


( 출처 : 뉴욕 타임즈



그리고, 10년이 지난 2018년 그 결과를 확인했습니다.


2008년에 비해서 S&P 500 지수는 130% 상승했습니다.

그리고, 2018년 애플 주식은 배당을 제외하고도 2008년에 비해 9배 상승했습니다.  


( 출처 : 야후 파이낸스 )



2019년은 나쁜 뉴스로 시작되었습니다.


미국과 중국의 무역전쟁, 미국 행정부의 셧다운 등의 불안한 국제 정세와 반도체 가격 하락 전망, 경기 하락 뉴스 등 불안한 소식 들은 투자자의 친구가 될 수 있을까요?


한 해 동안 전해져 올 나쁜 뉴스에 실제적인 영향이 적은 기업은 어떤 기업일까요?



변동성이 심한 2019년을 대비하면 버핏의 5가지 원칙을 생각합니다.


( 출처 : The Motley Fool )


1. 주식 시장은 예측할 수 없다, 언제나.

The stock market is unpredictable -- all the time )


2. 장기적으로, 시장은 오직 한 방향으로 움직인다.

( Over the long term, there's only one direction the market will go )


3. 조정 혹은 폭락은 장기 투자자에게 나쁜 일은 아니다.

( A correction or crash is not a bad thing for long-term investors )


4. 시장이 하락하기 시작하면, 여러분은 재정적인 유동성을 원할 것이다.

( When stocks start to fall, you'll want some financial flexibility. )


5. 군중 심리를 피하라.

( Avoid a herd mentality. )




수익을 높이기 위한 현금 보유 비율은 어느 정도가 좋을까요?


이전 포스팅 '켈리의 공식'에서 현금이라는 종목을 어느 정도 유지하는 것이 수익률을 높이는 있음을 얘기했습니다. 그러면 어느 정도가 좋을까요?


비율을 결정하는 캘리의 공식은 다시 살펴보겠습니다.


     (적정 투자 비율) = (p*W - q*L)/ ( W* L)

     p  : 성공 확률

     q  : 실패확률

     W : 성공시 이익 비율

      L :  실패시 손해 비율


비율을 결정하기 위해서는 p, q, W, L의 값을 알아야 합니다. 특정 종목이 오를 확률, 내릴 확률, 오르는 폭, 내리는 폭을 알 수는 없습니다. 특정 종목의 값 대신 주식 시장의 지수를 이용해 보면 어떨까요?


지수가 상승한 날을 성공으로, 상승폭을 이익 비률로, 하락한 날을 실패로, 하락폭을 손해 비율로 대응을 시켜서 투자 비율을 찾아보겠습니다. 계산에는 2010년 1월 1일부터 오늘까지의 코스피(KOSPI) 지수를 사용했습니다.




  (성공확률) = p = (상승일수)/(전체일수) = 0.516

  (실패확률) = q = (하락일수)/(전체일수) = 0.483

  (이익비율) = W = 0.00655

  (손해비율) = L =  0.00691

  (적정 투자 비율) = (p*W - q*L)/(W*L) = 0.93 


코스피 지수로 계산한 결과는 93% 투자하고, 7% 정도의 현금 유지로 계산되었습니다. 상승확률은 하락확률보다 높고, 상승폭은 하락폭보다 작습니다.


위의 계산은 하루하루를 한번의 투자로 계산한 결과입니다.



매주마다 투자 결정을 한다고 하면 어떻게 될까요?


  (성공확률) = p = (상승주)/(전체주) = 0.567

  (실패확률) = q = (하락주)/(전체주) = 0.433

  (이익비율) = W = 0.013

  (손해비율) = L =  0.017

  (적정 투자 비율) = (p*W - q*L)/(W*L) = 0.92


각 주를 한번의 투자로 생각한다면 92%를 투자하고, 8% 현금 유지로 계산됩니다. 상승확률은 높아졌으나, 손해비율과 이익비율의 차가 커지면서 다소 높은 현금보유로 계산된 것 같습니다.



매달마다 투자 결정을 한 결과도 살펴봅니다.

  (성공확률) = p = (상승달)/(전체달) = 0.570

  (실패확률) = q = (하락달)/(전체달) = 0.430

  (이익비율) = W = 0.026

  (손해비율) = L =  0.031

  (적정 투자 비율) = (p*W - q*L)/(W*L) = 2.05


매달 데이터로 계산하면 켈리의 공식에서 투자비율은 2.05로 갖고있는 돈보다 더 많이 투자하도록 계산됩니다. 투자금의 105%를 대출(?? ^^;) 받아서 투자하도록 계산되었습니다.... 


그런데, 위의 값은 계산을 위한 데이터의 기간을 변경하면, 크게 바뀝니다. 특히나 2008년 금융위기, 1998년 외환위기 시절을 포함하면 음수(-)가 나오기도 합니다. 투자하지 말라는 겁니다....^^;


내년(2019년)이 이전 어느 기간과 비슷할 것인지에 따라서 기초 데이터의 기간을 정해보면 어떨까요?


개인적인 경험으로는 90% ~ 99% 사이에서 유지하는 것이 좋은 것 같습니다.

주가가 올랐을 경우에는 일부 매도해서 현금 비중을 높이고

주가가 하락하면 관심 종목을 좋은 가격에 매수하여 현금 비중을 낮추는 방법입니다.


금일(12월 24일) 9%의 보유현금으로 관심을 갖던 O사를 예약한 가격에 매수할 수 있었습니다.

현금 보유 비율은 7.7%로 줄었습니다.

해당 종목은 장중 하락 후에 상승하여 0.7% 수익을 보이고 있습니다.


참고로, 코스피 지수에 대해서 켈리의 비율을 사용한 경우와 전체 투자한 경우의 수익을 그려보았습니다. 최근 시장이 폭락해서 인지 수익의 큰 차이는 보이지 않습니다. 다만, 월단위로 재조정한 경우에 시장이 좋았던 시점에서는 제법 차이를 보입니다.





( 계산에 사용한 R 스크립트 )

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

library(quantmod)
library(dplyr)
library(ggplot2)


# 1. KOSPI 2010년 부터 현재까지 변화 값 가져오기
#    KOSDAQ 자료는 제공되지않음.

my_symbol <- "^KS11"       ## KOSPI

src_loc     <- "yahoo"
from_day    <-"2010-01-01"
to_day      <- "2018-12-31"

output <- getSymbols(Symbols=my_symbol, src = src_loc, from = from_day, to = to_day, auto.assign = FALSE)
names(output) <- c("Open", "High", "Low", "Close", "Volume", "Adjusted")

attr(output, "dimnames")
plot(output)

table(is.na(output$Close))
output <- output[!is.na(output$Close),]

head(output$Close)
str(output)

output[[1]]
index(output)
plot(output$Close, col = "grey50")


# 전일 Close 값과의 차이 구하기
output$Close_1   <- lag(output$Close)
output$diff      <- output$Close - output$Close_1
output$diff_rate <- output$diff/output$Close

# 변동율 구하기
plus.mean <- mean(output$diff_rate[output$diff_rate>0,]$diff_rate)
plus.prob <- mean(output$diff_rate > 0, na.rm = TRUE )
plus.sd   <- sd(output$diff_rate[output$diff_rate >0 ,]$diff_rate)

minus.mean <- abs(mean(output$diff_rate[output$diff_rate<0,]$diff_rate))
minus.prob <- mean(output$diff_rate <0, na.rm = TRUE)
minus.sd   <- abs(sd(output$diff_rate[output$diff_rate <0, ]$diff_rate))

kelly.rate <- (plus.prob*plus.mean - minus.prob*(minus.mean))/(plus.mean*minus.mean)


## 100원이 얼마나 될까?
my.money <- rep(0,length(output$Close))
my.money[1] <- 100

for( i in c(1:(length(output$Close)-1))){
  if( !is.na(output$diff_rate[i+1]))
    my.money[i+1] <- my.money[i]*( 1 + output$diff_rate[i+1] )
  else
    my.money[i+1] <- my.money[i]
}
table(is.na(output$diff_rate))
tail(my.money)

# kelly 법칙을 따르면 얼마나 될까?
my.money.kelly <- rep(0,length(output$Close))
my.money.kelly[1] <- 100

for( i in c(1:(length(output$Close)-1)) ){
  if( !is.na(output$diff_rate[i+1]))
    my.money.kelly[i+1] <- my.money.kelly[i]*( 1 + output$diff_rate[i+1] ) * kelly.rate + my.money.kelly[i]*(1-kelly.rate)
  else
    my.money.kelly[i+1] <- my.money.kelly[i]
}

tail(my.money.kelly)

index(output)
output$my_money <- my.money
output$my_money_kelly <- my.money.kelly
output$date <- c(1:length(output$my_money))

text_pos_idx <- round(length(output$date)/2)
output %>% ggplot(aes(x=date)) +
  geom_line(aes(y=my_money), color="blue") +
  geom_line(aes(y=my_money_kelly), color = "red") +
  geom_text(aes(x=date[text_pos_idx], y=(my_money[text_pos_idx]-5)), label = "My Money", col="blue") +
  geom_text(aes(x=date[text_pos_idx], y=(my_money_kelly[text_pos_idx]+ 5)), label = "My Money Kelly", col="red") +
  labs(x=" 투자 경과 기간(일)", y="수익",title= " 매일 재조정 ")

# re-ballancing 주기를 얼마로 해야 할까?
# 매일 re-balancing은 비용이 높다
# monthly re-balancing으로 할까?
# ==> monthly data로 변환해야


# 변동율의 평균과 표준편차 구하기, + 확률과 - 확률 구하기
#  + 확률 : 이길 확률,  + 평균 : 얻는 량
#  - 확률 : 질 확률 ,   - 평균 : 읽는 량
#  얼마나 걸어야 할까?
#



output.weekly <- to.weekly(output)
names(output.weekly) <- c("Open", "High", "Low", "Close", "Volume", "Adjusted")
output.weekly$Close_1 <- lag(output.weekly$Close)
head(output.weekly)

output.weekly$diff_rate <- (output.weekly$Close - output.weekly$Close_1)/output.weekly$Close

# weekly 변동율 구하기
plus.mean.weekly <- mean(output.weekly$diff_rate[output.weekly$diff_rate>0,]$diff_rate)
plus.prob.weekly<- mean(output.weekly$diff_rate > 0, na.rm = TRUE )

minus.mean.weekly <- abs(mean(output.weekly$diff_rate[output.weekly$diff_rate<0,]$diff_rate))
minus.prob.weekly <- mean(output.weekly$diff_rate <0, na.rm = TRUE)

kelly.rate.weekly <- (plus.prob.weekly*plus.mean.weekly - minus.prob.weekly*minus.mean.weekly)/(plus.mean.weekly*minus.mean.weekly)

kelly.rate.weekly

str(output.weekly)

plot(output.weekly$Close)


## 100원이 얼마나 될까?
my.money.weekly <- rep(0,length(output.weekly$Close))
my.money.weekly[1] <- 100

for( i in c(1:(length(output.weekly$Close)-1))){
  if( !is.na(output.weekly$diff_rate[i+1]))
    my.money.weekly[i+1] <- my.money.weekly[i]*( 1 + output.weekly$diff_rate[i+1] )
  else
    my.money.weekly[i+1] <- my.money.weekly[i]
}
table(is.na(output.weekly$diff_rate))
tail(my.money.weekly)


# kelly 법칙을 따르면 얼마나 될까?
my.money.kelly.weekly <- rep(0,length(output.weekly$Close))
my.money.kelly.weekly[1] <- 100

for( i in c(1:(length(output.weekly$Close)-1)) ){
  if( !is.na(output.weekly$diff_rate[i+1]))
    my.money.kelly.weekly[i+1] <- my.money.kelly.weekly[i]*( 1 + output.weekly$diff_rate[i+1] ) * kelly.rate.weekly + my.money.kelly.weekly[i]*(1-kelly.rate.weekly)
  else
    my.money.kelly.weekly[i+1] <- my.money.kelly.weekly[i]
}

tail(my.money.kelly.weekly)

output.weekly$my_money_weekly <- my.money.weekly
output.weekly$my_money_kelly_weekly <- my.money.kelly.weekly
output.weekly$date <- c(1:length(output.weekly$my_money_weekly))

text_pos_idx <- round(length(output.weekly$date)/2)
output.weekly %>% ggplot(aes(x=date)) +
  geom_line(aes(y=my_money_weekly), color="blue") +
  geom_line(aes(y=my_money_kelly_weekly), color = "red") +
  geom_text(aes(x=date[text_pos_idx], y=(my_money_weekly[text_pos_idx]-5)), label = "My Money", col="blue") +
  geom_text(aes(x=date[text_pos_idx], y=(my_money_kelly_weekly[text_pos_idx]+ 5)), label = "My Money Kelly", col="red") +
  labs(x=" 투자 경과 기간(주)", y="수익",title= " 매주 재조정 ")


########### Monthly Rebalancing
output.monthly <- to.monthly(output)
names(output.monthly) <- c("Open", "High", "Low", "Close", "Volume", "Adjusted")
output.monthly$Close_1 <- lag(output.monthly$Close)
head(output.monthly)

output.monthly$diff_rate <- (output.monthly$Close - output.monthly$Close_1)/output.monthly$Close

# monthly 변동율 구하기
plus.mean.monthly <- mean(output.monthly$diff_rate[output.monthly$diff_rate>0,]$diff_rate)
plus.prob.monthly<- mean(output.monthly$diff_rate > 0, na.rm = TRUE )

minus.mean.monthly <- abs(mean(output.monthly$diff_rate[output.monthly$diff_rate<0,]$diff_rate))
minus.prob.monthly <- mean(output.monthly$diff_rate <0, na.rm = TRUE)

kelly.rate.monthly <- (plus.prob.monthly*plus.mean.monthly - minus.prob.monthly*minus.mean.monthly)/(plus.mean.monthly*minus.mean.monthly)

kelly.rate.monthly


plot(output.monthly$Close)


## 100원이 얼마나 될까?
my.money.monthly <- rep(0,length(output.monthly$Close))
my.money.monthly[1] <- 100

for( i in c(1:(length(output.monthly$Close)-1))){
  if( !is.na(output.monthly$diff_rate[i+1]))
    my.money.monthly[i+1] <- my.money.monthly[i]*( 1 + output.monthly$diff_rate[i+1] )
  else
    my.money.monthly[i+1] <- my.money.monthly[i]
}
tail(my.money.monthly)

# kelly 법칙을 따르면 얼마나 될까?
#kelly_rate.weekly <- 0.6
my.money.kelly.monthly <- rep(0,length(output.monthly$Close))
my.money.kelly.monthly[1] <- 100

for( i in c(1:(length(output.monthly$Close)-1)) ){
  if( !is.na(output.monthly$diff_rate[i+1]))
    my.money.kelly.monthly[i+1] <- my.money.kelly.monthly[i]*( 1 + output.monthly$diff_rate[i+1] ) * kelly.rate.monthly + my.money.kelly.monthly[i]*(1-kelly.rate.monthly)
  else
    my.money.kelly.monthly[i+1] <- my.money.kelly.monthly[i]
}

tail(my.money.kelly.monthly)

output.monthly$my_money_monthly <- my.money.monthly
output.monthly$my_money_kelly_monthly <- my.money.kelly.monthly
output.monthly$date <- c(1:length(output.monthly$my_money_monthly))

text_pos_idx <- round(length(output.monthly$date)/2)
output.monthly %>% ggplot(aes(x=date)) +
  geom_line(aes(y=my_money_monthly), color="blue") +
  geom_line(aes(y=my_money_kelly_monthly), color = "red") +
  geom_text(aes(x=date[text_pos_idx], y=(my_money_monthly[text_pos_idx]-10)), label = "My Money", col="blue") +
  geom_text(aes(x=date[text_pos_idx], y=(my_money_kelly_monthly[text_pos_idx]+ 12)), label = "My Money Kelly", col="red") +
  labs(x="개월수", y="수익",title= " 매월 재조정 ")

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



'스마트 베타(Smart Beta)' 방식의 종목 선정은 최근 상대적으로 높은 성과를 보이며 인기를 끌고 있는것 같습니다.


( 참조 : 서울경제 )


( 출처 : ETF 데일리 )


시장 평균 대비 초과 수익을 얘기하는 '알파(Alpha)'가 주로 어떤 공통점을 가진 종목에서 생기는지를 확인하여, 그 영역의 종목 구성에 투자하는 방식을 '스마트 베타'라고 부릅니다.



초과 수익을 발생한다고 알려진 대표적인 '요소(팩터 - Factor)'로는 아래 표의 6가지가 있습니다.


1. 가치(Value) 요소 

   현재 가격 대비 가치가 높은 기업에 투자 입니다. 투자 결정 요소로는 PER(Price Earning Rate : 버는 돈 대비 가격), PBR(Price Book-value Rate : 가진 돈 대비 가격) 등 기업에 대한기본적(Fundamental) 분석 요소가 해당됩니다.


2. 저 변동성(Low Volatility) 요소

 주가 변동이 낮은 종목에 투자하는 방식입니다. 상대적으로 안정적인 종목을 고른다는 의미가 있습니다.


3. 모멘텀(Momentum) 요소

 최근 상승을 하는 종목에 투자하는 방식을 말합니다. 저변동성 요소와 반대적인 의미로 느껴지기도 합니다. 차이점은 저변동성은 상승과 하락의 변화를 다 고려하지만, 모멘텀은 상승 만을 고려하여 큰 종목을 의미합니다. 종목에 대한 기술적(Technical) 분석 요소 라 할 것 같습니다.


4. 퀄리티(Quality) 요소

 재무제표 상으로 안정성, 수익률이 좋아보이는 종목에 투자하는 방식입니다. 유동비율, 부채비율, 수익률 등이 고려대상이 됩니다. 기본적 분석 요소를 기반으로 합니다.


5.배당(Dividend) 요소

 배당이 높은 종목에 투자하는 방식입니다. 주의할 것은 수익이 증가하면서 배당이 높아야 합니다. 수익이 줄어드는 회사 주식은 가격도 떨어져서, 가격 대비 배당이 높아보이는 착시 현상이 있을을 수 있습니다.


6. 소형주(Size) 요소

 시가 총액이 작은 종목이 상대적으로 더 오른다는 생각입니다. 통계적으로 주의할 부분이 있을 듯 합니다. 시가 총액이 작은 경우라면 변동성이 상대적으로 높아질 수 있습니다. 즉, 많이 오른 종목에 소형주가 상대적으로 많아 보일 듯 합니다. 소형주 효과의 실증적 자료는 상세히 들여다 볼 필요가 있을 것 같습니다. 그리고, '저변동성 요소'와는 상충되는 부분도 있을 듯 합니다.


전체적으로 보면, 기존의 투자법을 기계적으로 적용하기 위해 정리해 놓은 듯 합니다. 대부분의 방법에 공감을 하지만, 몇 가지 부분에 대해서는 상세한 분석이 필요할 것 같습니다.


개인 투자자의 경우에도 고려해 볼 만한 내용이라 생각됩니다.


+ Recent posts