본문 바로가기
이런저런 투자정보/투자에 대한 생각들

토토, 주식, 코인 을 한다면 반드시 알아야 할 방정식 - 켈리방정식

by 내일은맑음 2020. 7. 12.
반응형

1962년 블랙잭으로 카지노를 이긴 남자가 소개되었다.

천재 수학자이자, 투자가인 에드워드 소프란 사람이었다.

 

에드워드 소프는 블랙잭을 할 때 카드 카운팅을 통해 자신이 이길 수 있는 확률을 계산했고, 그 확률을

켈리 방정식에 따라 배팅하였다. 이 기술을 소개한 책으로 소프는 베스트 셀러가 되었으며,

향후 블랙과 숄즈란 사람이 숄즈의 기술을 일부 참고하여 만든 블랙 숄즈 방정식은 노벨 경제학상을 받는다.

 

소프는 여기에 멈추지 않고 1969년에 자신의 기술을 참고 하여 퀀트펀드를 만들었다. 이 펀드는 1988년까지 연평균 19.8%의 수익을 낸다. (버핏에게 자산운용을 부탁받아 운용한 경험도 있다.)

 

이론적으로 자신의 승률을 정확히 알고, 수익을 내는 구조라면 켈리 방정식에 따라 배팅하면

그 수익을 무한대로 가져갈 수 있다.

 

역으로 왜 도박으로 돈을 잃는 사람이 많은지 수학적으로 그 이유를 알 수 있다.

 

확률과 관련된 투자, 베팅을 한다면 알아야 할 방정식이라 생각한다.

 

간단히 켈리방정식에 대해 알아보고

동전던지기를 통한 예제와

켈리 방정식의 장단점에 대해 알아보도록 하겠다.

 

켈리 방정식이란?

간단히 말하자면 승률, 수익률, 손실률을 집어넣고 돌리면 원금의 몇퍼센트를 넣어도 되는지 알려주는 공식이다. 

 

이길 확률: P

질 확률 : Q = 1 - P

순배당률(1원을 베팅하고 승리할 경우 순이익 B원) : B

이라고 한다면 아래와 같은 방정식이다.

 

(PB-Q)/B

 

 동전 던지기를 통한 예제

켈리 방정식을 적용한 것과 적용하지 않을 경우 어떤 차이가 있을까?

동전 던지기를 예로 설명 들겠다.

동전이 있다. 동전을 던지기 전에 앞면이 나올지 뒷면이 나올지에 돈을 걸 수 있다.

 

맞추면 배팅금이 2배가 되서 돌아오고

틀리면 배팅금을 전부 날린다.

 

앞면일지 뒷면일지 맞출 확률은 50%이지만, 여기 참가자들은 특별한 감이 있어서

51% 확률로 맞출 수 있다.

 

이 게임에서 참가자 A, B가 있다.

 

A는 인생은 한방이라 생각한다. 무조건 올인한다.

B는 켈리 방정식에 따라 베팅한다.

 

둘 다 2천만원으로 시작한다. 50억이상 되거나 0원이 될 때 까지 반복한다.

 

둘 다 같은 확률, 같은 자금을 가지고 시작하지만 베팅금액에 따라 그 결과는 반대라고 할 만큼의 차이가 난다.

 

A는 8연속 앞면이 나오면 50억을 넘는다. 51%확률로 적중 시킨다 가정 하였을 때

2연속 적중 할 확률 = 약 26%

3연속 적중 할 확률 = 약 13%

4연속 적중 할 확률 = 약 6.7%

5연속 적중 할 확률 = 약 3.4%

6연속 적중 할 확률 = 약 1.7%

7연속 적중 할 확률 = 약 0.8%

8연속 적중 할 확률 = 약 0.4%

 

4번 정도 동전던지기를 했을 때 A는 이미 전부 날려먹었을 가능성이 높다. 

 

켈리 방정식을 적용한 B는 어떨까

 

첫 동전을 던지기 전에 켈리공식으로 계산을 해보면

이길 확률: 51%

질 확률 : 49%

순배당률(1원을 베팅하고 승리할 경우 순이익 B원) : 1

이라고 한다면 아래와 같은 계산이다.

(0.51x1 - 0.49)/1 = 0.02

즉 가진 금액의 2%씩 계속 걸면 된다.

 

위의 동전던지기를 켈리 방정식 적용한 채 동전던지기를 1만4천번 반복하였을 경우의 결과를 구한다.

그리고 1만 4천번을 반복한 결과값의 평균을 구하기 위해 1만 4천번 반복하는 경우의 결과값을

5000번 구하여 그 평균을 구하는 로직을 자바스크립트로 간단히 만들어보았다.

var money = 2000;
var tmp;
var total = 0;

for(y = 1; y <= 5000; y++){
	money = 2000;
  for ( i = 1; i < 14000; i++){
    var jbRandom = Math.random();
    jbRandom = Math.floor( jbRandom * 100 + 1);
    if( jbRandom <= 51){
      money = money + money*0.02;
    }else{
      money = money - money*0.02;
    }
  }
  total = total+money;
}

console.log(total/5000);

 

결과값은 52억3756만원

 

즉 켈리 방정식을 적용시키고 자본금이 2천만원인 상태에서 1만 4천번 정도 위의 동전던지기 반복해면 50억 정도를 얻을 확률이 높다는 것을 확인 가능하다.

 

물론 위의 값은 어디까지나 평균이다.

편차가 제법 있는 편이라 1만 4천번을 한번 씩 실행한 결과를 보면10억도 못가는 경우도 있고 100억이 넘어가는 경우도 있다. 

 

하지만 켈리 방정식을 적용시키고 동전 던지기를 무한대로 반복하면 수익 역시 무한대로 늘어난다는 점을 확인 가능하다.

 

동전던지기로 보는 켈리방정식 - 결론

올인을 하는 A의 경우 위의 동전던지기로 50억을 만들 확률은 0.4퍼센트

B의 경우는 횟수는 1만 4천번이상 필요하지만 50억을 만들 확률은 한없이 100%에 가깝다는 사실을 확인하였다.

심지어 무한히 반복하면 그 수익도 무한에 가까워 진다.

 

반면 올인을 하는 A의 경우 승률이 51%임에도 불구하고 무한히 반복하면 돈을 전부 잃을 확률이 무한히 높아진다.

 

같은 승리확률 51%임에도 불구하고 이같은 차이가 나는 이유는  

51%의 승률로 이점을 보기 위해서는 많은 시행 횟수가 필요한데 그 전에 돈이 떨어져 시행 할 수 없는 상태가 되기 때문이다. 켈리 방정식의 배팅 비율에서 조금이라도 더 많이 베팅한다면, 시뮬레이션을 해보면 알겠지만 결국 수익률을 손해보며 0이 될 가능성이 높아진다.

 

켈리공식은 매 번의 베팅마다 베팅금액을 최적으로 조절하여 조금이라도 우위에 있다면 그 기회를 살릴 수 있게 도와준다.

 

켈리 방정식의 장단점

켈리방정식의 장점

위의 동전던지기를 통해 켈리방정식을 통해 수익을 낼 수 있으면 그 수익을 극대화 시킬 수 있다는 점을

알 수있다. 하지만 이게 쉽지 않다.

 

켈리 방정식의 단점은 단 1%라도 틀리면 안된다는 것이다.

예를 들면 위 동전던지기의 승률은 51%였다. 여기에 만약 승률이 50%가 되면 어떨까?

예제 소스로 계산하면 평균 2000만원 정도가 나온다.

49%의 경우는 평균 6만원이다. 장기간 반복 시 무조건 돈을 잃는 것이다.

 

이걸로 왜 대부분 사람들이 토토, 주식(단기 매매), 코인등으로 손해가 보는지 설명이 된다.

켈리 방정식으로 성립이 되지 않는 케이스를 무한히 반복하면 결국 그 값은 0에 수렴하기 때문이다.

문제는 주식이건 토토이건 코인이건 자신의 승률이 몇 %인지 정확히 모른다는 것이다.

더불어 대부분의 경우 수수료 및 세금이 있기 때문에 배당률에 이 손해를 포함시키면 승률은 훨씬 더 높아야 한다.

 

심지어 주식, 토토, 코인은 시장(조건)도 계속 바뀐다. 예를 들면

1년전에 51%였던 승률이 48% 되었음에도 본인은 인지를 못한 경우, 계좌는 0을 향해 수렴한다.

 

금융계의 천재들도 종종 자신의 승률을 계산하는데 실패하여 파산한 경우가 있다. (LTCM같은 경우)

그래서 보통의 경우 켈리방정식으로 나온 베팅 비율 보다 보수적으로 더 낮게 (50%정도 적게) 배팅하는 경우가 많다.

하지만 이 역시도 자신의 승률 계산이 크게 틀렸다면 의미가 없어진다.

 

그럼에도 불구하고 켈리 방정식을 알아야하는 이유는 이를 통해 리스크 관리가 얼마나 중요한지 알게 된다는 것이다.

리스크를 관리하지 않는다면, 자신의 승률의 평균을 구하지 못한다면 자신의 계좌는 반복 할 수록 한없이 0으로 간다는 점을 명심해야 할 것이다. 

 

 

 

 

 

 

 

 

 

반응형