brunch

4강. 확률분포 ― 반복 속에서 드러나는 패턴

확률로 돈을 번다

by 골드펜

1. 확률 분포

확률 분포란 비슷한 상황을 여러 번 반복했을 때, 결과의 분포가 어떻게 나타나는지 보여주는 것이다. 동전을 10번 던진다면, 전부 앞면만 나올수도 있지만, 대부분은 5~6번쯤 나온다. 이런 결과의 분포를 보여주는 것이 확률 분포다.


간단한 사례: 주사위 두 개 던지기

주사위 두 개를 동시에 던져서 나오는 두 눈금의 합을 생각해 보자.


나올수 있는 결과는 두 주사위 눈금의 합이다.

2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12

여기에 각 합이 나올 가능성을 계산한다.


2가 나올 확률은 '1과 1'이므로 1/36

3이 나올 확률을 '1과 2', '2와 1'이므로 2/36

...

7이 나올 확률은 1과 6, 2와 5, 3과 4, 4와 3, 5와 2, 6과 1이므로 6/36

이런 식으로 각 경우의 분포에 대한 확률을 구할수 있다.


이 결과를 통해 우리는 다음과 같은 사실을 알 수 있다.

가장 가능성이 높은 값: 합이 7일 때 (6/36)

가장 가능성이 낮은 값: 합이 2 또는 12일 때(1/36)


확률 분포를 알면 복잡한 실험의 결과를 한눈에 파악하고, 어떤 일이 일어날 가능성이 가장 큰지 예측할 수 있다.



2. 이항분포

이항 분포는 간단히 말해 '성공과 실패' 두 가지 결과만 나오는 일을 여러 번 반복했을 때, 성공 횟수가 어떻게 분포될지를 나타내는 확률 분포다. '이항(二項)'이라는 이름처럼, 결과가 딱 두 가지(성공/실패)인 상황에 적용된다.


조건

어떤 상황이 이항 분포를 따르려면 다음 조건을 만족해면 된다.

반복 횟수 고정: 실험이나 시도를 정해진 횟수(n)만큼 반복. (예: 동전을 10번 던진다.)

두 가지 결과: 각 시도의 결과는 성공 또는 실패 둘 중 하나. (예: 동전의 앞면 또는 뒷면)

독립 시행: 각 시도는 서로 영향을 주지 않아야 한다. 앞선 시도의 결과가 다음 시도 확률을 바꾸지 않는다.

성공 확률 일정: 매 시도마다 성공할 확률(p)이 항상 똑같아야 한다. (예: 동전 앞면이 나올 확률은 항상 50%.)


사례) 야구 선수의 홈런 확률 ⚾

어떤 야구 선수가 타석에 들어설 때 홈런을 칠 확률이 p=20%라고 하자. 이 선수가 오늘 10번(n=10) 타석에 들어선다. 이 상황은 이항 분포를 따른다.

타석에 들어서는 것은 10번(n=10) 반복되고, 결과는 홈런(성공) 또는 홈런 아님(실패) 두 가지이며, 각 타석은 독립적이고 성공 확률은 20%로 일정하다.


이항 분포는 다음과 같은 질문에 답을 줄 수 있다.

이 선수가 오늘 3번 홈런을 칠 확률은?

7번 이상 홈런을 칠 확률은?

가장 가능성이 높은 홈런 횟수는?

이항 분포는 이처럼 정해진 횟수(n)와 성공 확률(p)만 알면, 원하는 성공 횟수(x)의 확률을 계산할 수 있다.


엑셀 실습

BINOM.DIST 함수 사용법

용도: 정해진 횟수의 독립적인 시행에서 특정 성공 횟수가 발생할 확률 또는 누적 확률

함수: BINOM.DIST(성공_횟수, 시행_횟수, 성공_확률, 누적_여부)

성공_횟수 (number_s): 원하는 성공 횟수를 지정. (필수)

시행_횟수 (trials): 전체 시도 횟수를 지정. (필수)

성공_확률 (probability_s): 매 시도에서 성공할 확률을 지정. (필수)

누적_여부 (cumulative): 계산 방식을 결정하는 논리값. (필수)

FALSE (0): 정확히 '성공_횟수'만큼 성공할 확률 (확률 질량 함수)을 계산.

TRUE (1): '성공_횟수' 이하로 성공할 확률 (누적 분포 함수)을 계산.


성공확률이 20%일때, 10번 중 정확히 3번 성공할 확률은?
=BINOM.DIST(3,10,0.2,FALSE)
위의 홈런의 예를 대입하면 이렇게 된다.

직접 계산해 보면 20.13%.


불량품 검사, 마케팅 캠페인 성공률 예측 등 이분법적 결과가 나오는 상황에 유용하게 사용할 수 있다.



3. 포아송분포 ― 드문 사건 세기

포아송 분포는 '일정 시간이나 공간 안에서 어떤 사건이 얼마나 드물게 발생하는지'를 예측하는 데 쓰이는 확률 분포이다.

쉽게 말해, 평균적으로 몇 번 발생할지 알고 있을 때, "정확히 몇 번" 또는 "몇 번 이하/이상" 발생할 확률을 계산해 준다.


조건

포아송 분포가 사용되는 상황에는 몇 가지 특징이 있다.

발생 횟수 (x): 우리가 세는 사건의 횟수. 이 횟수에는 제한이 없다 (0번, 1번, 50번 등).

일정 구간: 사건을 세는 기준이 되는 시간(예: 1시간) 또는 공간(예: 1제곱미터)이 정해져 있어야 한다.

평균 발생률 (λ): 그 정해진 구간에서 사건이 평균적으로 몇 번 발생하는지 알고 있어야 한다.


사례) 콜센터 전화 ☎️

어떤 콜센터에 1시간 동안 평균 5통(λ=5)의 전화가 온다고 가정해 보자.

이 상황은 포아송 분포를 따른다. 전화가 오는 것은 드물고 무작위적인 사건이며, 횟수에는 제한이 없다.

이때 포아송 분포는 다음과 같은 질문에 답을 줄 수 있습니다.

다음 1시간 동안 콜센터에 정확히 3통의 전화가 올 확률은 얼마일까?

다음 1시간 동안 10통 이상의 전화가 올 확률은 얼마일까?

전혀 오지 않을(0통) 확률은 얼마일까?

포아송 분포는 이처럼 '평균 발생 횟수(λ)'를 기준으로, 드물게 발생하는 사건의 다양한 횟수(x)별 확률을 계산할 때 매우 유용하다.



사례) 교차로 사건

교차로에서 하루 평균 사고가 0.2건이라고 하면.

함수를 써서 계산하면 다음과 같은 결과가 나온다.


0건: 약 82%
1건: 약 16%

2건: 약 2%

1건도 일어나지 않을 확률이 82%.

1건이 일어날 확률은 16%이고, 최소 1건이라도 일어날 확률은 18%가 된다.


사례) 옵션전략

한 달 평균 0.5번 큰 폭락이 나는 옵션 전략이 있다고 하자.
포아송 분포를 쓰면 “이번 달 0번, 1번, 2번 폭락할 확률”을 계산할 수 있다.


엑셀 실습

POISSON.DIST 함수 사용법

용도: 정해진 구간(시간, 거리, 영역 등) 내에서 어떤 사건이 특정 횟수 발생할 확률 또는 누적 확률을 계산한다.

함수: POISSON.DIST(x, 평균, 누적_여부)

x (x): 관심 있는 사건 발생 횟수를 지정. (필수)

평균 (mean): 주어진 구간 내에서 사건이 발생할 기대 평균 횟수(λ)를 지정. (필수)

누적_여부 (cumulative): 계산 방식을 결정하는 논리값. (필수)

FALSE (0): 정확히 x번 사건이 발생할 확률 (확률 질량 함수)을 계산.

TRUE (1): x번 이하로 사건이 발생할 확률 (누적 분포 함수)을 계산.


평균적으로 5건이 발생하는 시간 동안 정확히 3건이 발생할 확률은?

= POISSON.DIST(3, 5, FALSE)


사건의 발생 횟수는 무한할 수 있지만, 희귀하거나 무작위적인 사건을 모델링하는 데 적합하다.

콜센터의 시간당 전화 수, 웹사이트 시간당 방문자 수, 특정 지역의 연간 교통사고 건수 등에서 활용된다.



비교

이항분포와 포아송분포를 비교하면 다음과 같다.


성공확률이 55%인 게임이 있다고 하자.

10번 중에 성공이 나타날 확률의 분포는 이항분포를 따른다.


이항 샘플.png


5번과 6번이 가장 높은 확률로 나타난다.

한번도 성공이 나타나지 않을 확률과 10번 모두 성공할 확률이 가장 낮게 나타났다.

하지만 확률이 0은 아님도 의미가 있을듯 하다.


어떤 시간대에 사건이 일어날 확률이 0.55번이라고 하자.

과연 이 사건은 몇번이나 일어날수 있을지는 포아송 분포를 따른다.


포아송 샘플.png

사건이 일어나지 않거나, 1번 일어날 확률이 가장 높게 나타난다.

2번 이상 일어날 확률은 11% 정도로 낮음을 알수 있다.

3번 이상 일어날 확률은 매우 낮지만, 마찬가지로 0은 아니다.



4. 실제 데이터로 검증 ― 나스닥과 코스피200

이항분포와 포아송분포는 단순한 교과서 개념이 아니다.


나스닥선물 데이터로 분석을 해보았다.

2000년부터 현재까지 6411거래일.

10거래일 중 상승한 날은 몇일이나 될까?

'비율'은 실재로 카운팅을 한 결과이고, '이항'은 이항분포 함수로 게산한 결과이다.


이항 비교.png


6411 거래일의 상승과 하락중 상승한 날이 54.4%였다.

FREQUENCY 함수로 카운팅한 값과 이항분포 함수로 계산한 값을 비교해 보았다.


예들들어 10거래일중 5번 상승이 나타난 횟수는 전체의 23.38%였다.

이상분포 함수를 써서 계산한 값 23.67%와 거의 근사한 값이 나왔다.



이번에는 3% 이상 하락할 확률을 계산해 보았다.

1년은 1년 동안 몇번 나타나는지, 1달은 1달 동안 몇번 나타나는지를 계산한 값이다.

FREQUENCY 함수로 계산해보면 3% 이상 하락은 277번 나타났다.

1년에 10.8회, 1달에 0.9회 나타났다.


포아송 누적.png


포아송 분포를 1년과 1달로 나누어 보았다.

1년 동안 3% 이상 하락이 0번 나타날 확률은 0에 가깝다.

1달에 1~2번이라도 3% 이상 나타날 확률은 50%가 넘게 나타났다.



코스피200도 계산해 보았다.

실제 데이터에서 5승(23.2%), 6승(21.9%)이 가장 흔했으며, 이항분포로 계산한 결과 역시 같은 구간이 최빈값으로 나타났다.

코스피200의 3% 이상 하락은 연평균 6.6회로 나스닥 보다는 드물게 나타났다.

나스닥이 1달에 1번이라도 나타날 확률은 60% 정도인데, 코스피 200은 33% 정도였다.


만일 풋옵션에 투자 한다면 코스피보다는 나스닥에서 승률이 더 높을듯 하다.


요약

이항분포는 반복되는 투자 속에서 승패의 패턴을 보여준다.
단기적으로는 운에 따라 승패가 엇갈리지만, 거래 횟수가 많아질수록 실제 승률은 이론적 평균에 수렴한다.
즉, 단기 성과의 변동에 흔들리지 않고, 확률에 근거해 장기적인 일관성을 유지하는 것이 핵심이다.


포아송분포는 드물게 발생하는 극단적 사건의 빈도를 설명한다.
큰 폭락이나 급등 같은 리스크는 예외적 사건이 아니라, 평균적인 빈도로 반복되는 확률적 현상이다.
따라서 투자자는 “언제 일어날지 모르지만 반드시 일어나는 일”로 받아들이고,
이를 예측이 아닌 대비의 영역으로 인식해야 한다.


결국 두 분포의 핵심은 같다.
이항분포는 수익의 안정성을, 포아송분포는 위험의 반복성을 보여준다.
투자는 이 두 축 ― “승률의 일관성과 리스크의 빈도” ― 를 동시에 이해할 때 비로소 확률적으로 완성된다.


keyword
목요일 연재
이전 04화3강. 조건부 확률과 베이즈 정리