관리 메뉴

TechY

The Kelly Criterion and the Stock Market 본문

[논문 정리]

The Kelly Criterion and the Stock Market

hskimim 2024. 5. 26. 03:50

논문 : 링크

 

켈리 공식이라고 알려져 있는 식에 대한 페이퍼를 읽고 정리해본다. 기본적으로 사용할 수식 표현은 아래와 같다.

 

$X_0$ = 초기에 우리가 갖고 있는 돈

$X_n$ = 투자를 특정 policy에 따라 해서 $n$ 번의 trial 후 얻게 될 돈

$f$ = 우리가 갖고 있는 돈 $X$에서 betting할 금액의 비율

$S$ = $n$ 번의 trial에서 우리가 돈을 딴 횟수

$F$ = $n$ 번의 trial에서 우리가 돈을 잃은 횟수

$n$ = 우리가 시도할 trial의 수

$p$ = 승률

$q$ = $1-p$

 

이기면 betting한만큼 따고, 지면 그 돈을 모두 잃는다고 했을 때, 우리는 아래 수식을 얻을 수 있다. $S+F = n$

$X_n = X_0 (1+f)^S (1-f)^F$

 

kelly criterion 이 하려는 건, 최적의 $f^*$ 를 구하려는 것인데, 이 때 최적화하려 하는 대상은 $G(f)$로 논문에서는 growth rate of coefficient라고 한다. 그리고 이 값에 대한 정의를 the expectation of the exponential rate of increase per trial 로 하였다. 

expectation growth 라 함은, $n$ 과 관계 없이 동일한 수준으로 얻게될 수익률을 의미하며, 이러한 식을 우리는 $X_n = X_0 e^{G(f) n}$ 을 통해서 계산할 수 있다. 저 식을 충족하게끔 $X_n = X_0 (1+f)^S (1-f)^F$ 을 정리해주자.

더보기

$\frac{d C}{dt} = C (1+r)$

$\frac{1}{C} dC = (1+r) dt$

$\int \frac{1}{C} dC = \int (1+r) dt$

$ln(C) + C_1 = (1+r)t + C_2$

$ln(C) = (1+r)t + C_3$

$C = C_0 e^{(1+r) t}$

$(1+r)$ = the exponential rate of increase per trial

우리의 $r$ 은 확률 변수이기 때문에, $1+r$ 의 expectation을 취해주고 이를 $G(f)$ 로 사용하는 것이다.

$X_n = X_0 (1+f)^S (1-f)^F$

$\frac{X_n}{X_0} = (1+f)^S (1-f)^F$

$log(\frac{X_n}{X_0}) = log((1+f)^S (1-f)^F) = S log(1+f) + F log(1-f)$

$\frac{1}{n} log(\frac{X_n}{X_0}) = log(\frac{X_n}{X_0}^{\frac{1}{n}}) = \frac{S}{n} log(1+f) + \frac{F}{n} log(1-f)$

$\frac{X_n}{X_0}^{\frac{1}{n}} = e^{\frac{S}{n} log(1+f) + \frac{F}{n} log(1-f)}$

$X_n = X_0 e^{(\frac{S}{n} log(1+f) + \frac{F}{n} log(1-f))n}$

 

$\frac{S}{n} log(1+f) + \frac{F}{n} log(1-f)$ 이 정의에서 나온 "exponential rate of increase per trial" 이 된다. 그러면 이제 우리는 그 값의 expectation 을 구하면 그것이 정의한 목적 함수 $G(f)$ 가 된다.

 

$\mathop{\mathbb{E}}(G_n(f))[\frac{S}{n} log(1+f) + \frac{F}{n} log(1-f)] = p log(1+f) + q log(1-f)$

 

또한 위 식의 전개 과정에서 논문에 나온 $e^{n log(\frac{X_n}{X_0})^{\frac{1}{n}}} = \frac{X_n}{X_0}$ 을 얻을 수 있다.

 

이제 위 식을 maximize 하는 $f$ 를 구하면 된다.

$G^{`}(f) = \frac{p}{1+f} - \frac{q}{1-f} = \frac{p-q-f}{(1+f)(1-f)}$

critical point 는 $f = p-q$ 가 된다. hessian 을 본 후 이 값이 최대값인지를 확인해볼 수 있다.

 

아래 식의 분자 term을 보면 2계도 미분값의 부호가 음수인 것을 알 수 있으며, 해당 식으로 우리는 maximum $f=p-q$를 얻을 수 있음을 알 수 있다.

$G^{``}(f) = \frac{(-1)(1-f^2) - (p-q-f)(-2f)}{(1-f^2)^2}$

 

즉, 내가 betting 만 한큼을 얻을 수 있고, 잃을 수 있는 게임에서 승률이 $p$ 이고, 발생 가능한 결과가 2개뿐이라면 가진 돈의 $p-q$ 비율만큼을 betting하는 것이 자산 성장률을 maximize 할 수 있는 방법이다.

 

이 식을 유도하는 과정에서 $p = \frac{S}{n}$ 을 사용했기 때문에, 해당 값 $p$ 를 얻기 위해서 대수의 법칙이 작용할 수 있을 정도의 충분한 trial 이 동반되어야 한다.

 

추가적으로 얻을 수 있는 intuition 이 하나 더 있는데, $G(f)$ 식은 $\mathop{\mathbb{E}}[log(\frac{X_n}{X_0})^{\frac{1}{n}}]$ 였다.

 

$log(\frac{X_n}{X_0})^{\frac{1}{n}}$ 이 식을 분리해보면 $\frac{1}{n}log(X_n) - \frac{1}{n}log(X_0)$인데, fixed $n, X_0$ 라고 했을 때, $f = p-q$ 는 결국 $log(X_n)$을 maximize 하는 것이다.

G(f) 에 대한 시각화

 


Stock Market 

알아보았던 kelly criterion을 stock market 의 시나리오에서 적용해본다. 앞서 다룬 케이스와 다른 점은 coin toss와 같은 gambling의 경우 승/패 라는 binary result와 이산적으로 존재하는 반면, 주식 시장의 경우 결과가 연속적으로 존재한다는 점이다. 즉, random variable 이 continous 하다.

 

우선 추가적으로 볼 notation을 소개한다.

$\mu$ = 투자 대상의 평균 return

$\sigma$ = 투자 대상의 return의 표준 편차

$r$ = 대체 투자 대상의 수익률 (treasury bond 와 같은 안전 자산)

 

이에 따라, 논문에서는 coin toss 처럼 binary result로 상황을 단순화하였다. 평균 수익률 $\mu$ 에서 $\pm \sigma$ 일 확률을 50%로 하여 평균 기준 양쪽으로 발생할 확률을 동일하게 하였다. $\mu + \sigma$ 면 꽤 좋은 투자였음을 이야기하고, 반대의 경우 성공적이지 못했음을 이야기한다.

$P(X = \mu + \sigma) = P(X = \mu - \sigma) = 0.5$

 

우리가 가진 돈의 $f$ 만큼을 타겟 자산에 넣고 나머지를 안전 자산에 넣으면 아래와 같은 자산을 얻게 될 것이다. 아래 같은 어떤 시간에 대한 기한을 미리 정하고 (ex. 1년, 10분 etc) 그 기간 동안의 수익률 관련 통계량을 구한 후, 자산 가치에 한 번 곱해준 것이다.

$V(f) = V_0 (1+(1-f)r + fX)$

 

이전 섹션에서 $G(f) = log(\frac{X_n}{X_0})^{\frac{1}{n}}$ 식을 구한 적이 있다. 이는 $V(f) = V_0 e^{G(f) n}$ 식을 만족하는 $G(f)$ 를 구한 것이다. 이번에도 동일하게 $G(f)$ 를 구한다.

 

$V(f) = V_0 (1+(1-f)r + fX)$

$\frac{V(f)}{V_0} = 1+(1-f)r + fX$

$log(\frac{V(f)}{V_0}) = log(1+(1-f)r + fX)$

$\mathop{\mathbb{E}}[log(\frac{V(f)}{V_0})] = \mathop{\mathbb{E}}[log(1+(1-f)r + fX)]$

$= 0.5 (log(1+(\mu + \sigma -r)f)) + 0.5 (log(1+r+(\mu - \sigma - r) f))$

 

우리가 구한 $G(f)$ 은 $n=1$ 에 대한 것이기에 $n$ 에 대해 일반화된 식을 구해보자.

$\frac{V_n}{V_0} = \prod_{i=1}^{n} (1+(1-f)r + f X_i)$

 

이제 위 식의 $\mathop{\mathbb{E}}[\frac{1}{n} log(\frac{V_n}{V_0})]$을 구하면 된다. 이 때, 시점의 단위를 뜻하는, $n$을 $n \rightarrow \infty$ 로 하여, 연속적인 시간대를 표현하게 하여, $n$에 대한 일반식을 구한다.

 

$G_n(f) = \mathop{\mathbb{E}}[log(\frac{V_n}{V_0})^{\frac{1}{n}}] = \frac{1}{n} \mathop{\mathbb{E}}[\sum_{i=1}^{n} log(1+(1-f)r + fX)] = \mathop{\mathbb{E}}[log(1+(1-f)r + fX)]$

 

논문에서는 $g(f) = log(1+(1-f)r + fX)$ 식을 $f$=0으로 하고, $k$를 2까지 하여 다항식으로 근사적으로 표현하는 taylor expansion으로 정리한다.

 

Taylor Expansion)

$f(x) = \sum_{k=0}^{\infty} \frac{f^{(k)}(i)}{k!}x^{k}$

 

$k=0$ 의 경우를 계산해보자.

$g(f) = log(1+(1-f)r + f X)$

$g(0) = log(1+r)$

 

$log(1+r)$은 $r \simeq 0$ 에서 $r$로 근사될 수 있다. linear approximation 을 사용해보면 된다.

$f^{`}(x) = \frac{f(x) - f(0)}{x} \rightarrow f(x) = f(0) + f^{`}(x) x$

$h(r) = log(1+r)$

$h(0) = log(1) = 0$

$h^{`}(r) = \frac{1}{1+r}$

$h(r) = \lim_{r \rightarrow 0} \frac{r}{1+r} = r$

$g(0) = log(1+r) \simeq r$

 

1차, 2차 도함수도 계산해준다. $r \rightarrow 0$ 을 적용해서 식을 더 정리해준다.

$g^{`}(f) = \frac{X-r}{1+(1-f)r + fX}$

$g^{`}(0) = \frac{X-r}{1+r} \simeq X-r$

 

$g^{``}(f) = -\frac{(X-r)^2}{(1+r)^2} \simeq (X-r)^2$

 

$G_{\infty}(f) \simeq \mathop{\mathbb{E}}[r + (X-r)f - \frac{(X-r)^2}{2}f^2 + O(f^3)]$

$= r + (\mu - r)f - \frac{\sigma^2 f^2}{2} + O(f^3)$

 

위 식을 maximize 하는 $f$는 $\frac{\mu - r}{\sigma^2}$ 가 된다.

 

risk free 자산 대비 투자 자산이 갖는 초과 수익률을 투자 위험 대비 얼마나 높은 지를 나타내는 sharpe ratio에 $\sigma$ 를 나눈 값과 같다. $\sigma$ 가 갖는 scale이 $\mu, r$ 과 같기 때문에, 일종의 비율을 나타내기 위해서는 표본 편차가 아닌 분산이라는 면적에 ($\sigma$ 만큼의 선분의 길이를 가진 정사각형을 상상해볼 수 있다) excess return이 차지하는 영역을 계산하는 것으로 해석할 수 있다. (논문이 아닌, 자체적인 해석이니 오류가 있을 수 있다)

 

$G^{`}(f) = \mu - r + \frac{2 f \sigma^2}{2} = 0$

$f^{*} = \frac{\mu - r}{\sigma^2}$

 

논문 상에서 나오는 S&P 500 예시를 갖고 수식을 사용해보자.

S&P500의 59년 수익률 통계량은 아래와 같다.

$\mu = 0.058$

$\sigma = 0.216$

$r = 0.029$

 

위 통계량을 기반으로 우리는 자산의 아래 비율만큼을 (62%) 투자함에 따라 자산 수익률의 기대값을 최대화할 수 있다.

$f^{*} = \frac{0.058 - 0.029}{0.0216^2} \simeq 0.62$