๐Ÿ“Š ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ


๋ณผ๋ฆฐ์ € ๋ฐด๋“œ(Bollinger Bands) ๋Š” ๊ฐ€๊ฒฉ์˜ ๋ณ€๋™์„ฑ(Volatility)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž์‚ฐ์ด ๊ณผ๋งค์ˆ˜ ๋˜๋Š” ๊ณผ๋งค๋„ ์ƒํƒœ์— ์žˆ๋Š”์ง€๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋Œ€ํ‘œ์ ์ธ ๊ธฐ์ˆ ์  ๋ถ„์„ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.


๐Ÿ” 1. ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ๋ž€?

๋ณผ๋ฆฐ์ € ๋ฐด๋“œ๋Š” 1980๋…„๋Œ€ ์กด ๋ณผ๋ฆฐ์ €(John Bollinger) ์— ์˜ํ•ด ๊ฐœ๋ฐœ๋œ ์ง€ํ‘œ๋กœ, ์ด๋™ ํ‰๊ท ์„ ๊ณผ ํ‘œ์ค€ํŽธ์ฐจ๋ฅผ ์ด์šฉํ•ด ์ƒ์„ฑํ•œ ๊ฐ€๊ฒฉ ๋ฐด๋“œ์ž…๋‹ˆ๋‹ค. ๊ฐ€๊ฒฉ์˜ ํ‰๊ท ๊ณผ ๋ณ€๋™์„ฑ์„ ๋™์‹œ์— ๋ณด์—ฌ์คŒ์œผ๋กœ์จ, ์ถ”์„ธ ์ถ”์ข…๊ณผ ๋ฐ˜์ „ ํŒ๋‹จ ๋ชจ๋‘์— ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค.


๐Ÿง  2. ๊ตฌ์„ฑ ์š”์†Œ

๊ตฌ์„ฑ ์š”์†Œ๊ณ„์‚ฐ์‹์„ค๋ช…
์ค‘์‹ฌ์„  (Middle Band)20์ผ ๋‹จ์ˆœ์ด๋™ํ‰๊ท  (SMA)๊ฐ€๊ฒฉ์˜ ํ‰๊ท 
์ƒ๋‹จ ๋ฐด๋“œ (Upper Band)SMA + 2 ร— ํ‘œ์ค€ํŽธ์ฐจ๊ฐ€๊ฒฉ์˜ ๋ณ€๋™ ๋ฒ”์œ„ ์ƒ๋‹จ
ํ•˜๋‹จ ๋ฐด๋“œ (Lower Band)SMA – 2 ร— ํ‘œ์ค€ํŽธ์ฐจ๊ฐ€๊ฒฉ์˜ ๋ณ€๋™ ๋ฒ”์œ„ ํ•˜๋‹จ

์ผ๋ฐ˜์ ์œผ๋กœ ’20์ผ SMA + 2ฯƒ’๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ, ๊ธฐ๊ฐ„๊ณผ ๊ณ„์ˆ˜๋Š” ์กฐ์ • ๊ฐ€๋Šฅ.


๐Ÿ“ˆ 3. ํ•ด์„ ๋ฐฉ๋ฒ•

โœ… ๊ธฐ๋ณธ ํ•ด์„

  • ๊ฐ€๊ฒฉ์ด ์ƒ๋‹จ ๋ฐด๋“œ์— ๋„๋‹ฌํ•˜๊ฑฐ๋‚˜ ๋ŒํŒŒ
    โ†’ ๊ณผ๋งค์ˆ˜ ์‹ ํ˜ธ, ๋ฐ˜๋ฝ ๊ฐ€๋Šฅ์„ฑ
  • ๊ฐ€๊ฒฉ์ด ํ•˜๋‹จ ๋ฐด๋“œ์— ๋„๋‹ฌํ•˜๊ฑฐ๋‚˜ ๋ŒํŒŒ
    โ†’ ๊ณผ๋งค๋„ ์‹ ํ˜ธ, ๋ฐ˜๋“ฑ ๊ฐ€๋Šฅ์„ฑ
  • ๋ฐด๋“œ๊ฐ€ ์ˆ˜์ถ•(Band Squeeze)
    โ†’ ๋ณ€๋™์„ฑ ์ถ•์†Œ, ํฐ ์›€์ง์ž„ ์ „์กฐ
  • ๋ฐด๋“œ๊ฐ€ ํ™•์žฅ(Band Expansion)
    โ†’ ๋ณ€๋™์„ฑ ํ™•๋Œ€, ๊ธ‰๋“ฑ๋ฝ ์ง„ํ–‰ ์ค‘

๐Ÿ“Œ ์‹ค์ „ ์ ์šฉ ์ „๋žต ์˜ˆ์‹œ

์ „๋žต ์œ ํ˜•์กฐ๊ฑดํ–‰๋™
๋ฐ˜์ „๋งค๋งค ์ „๋žต์ƒ๋‹จ ๋ฐด๋“œ ๋ŒํŒŒ ํ›„ ํ•˜๋ฝ ๋ฐ˜์ „๋งค๋„ ์ง„์ž…
์ถ”์„ธ์ถ”์ข… ์ „๋žต๋ฐด๋“œ ํ™•์žฅ + ์ƒ๋‹จ ๋ฐด๋“œ ๋ŒํŒŒ ์ง€์†๋งค์ˆ˜ ์ง„์ž…
์ˆ˜๋ ด ํ›„ ํ™•์‚ฐ๋ฐด๋“œ ์ˆ˜์ถ• ์ƒํƒœ์—์„œ ๊ธ‰๋“ฑ/๊ธ‰๋ฝ๋ฐฉํ–ฅ ํ™•์ธ ํ›„ ์ถ”์„ธ ์ง„์ž…

โš ๏ธ 4. ์ฃผ์˜์‚ฌํ•ญ

  • ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ๋Š” ๋ฐ˜๋“œ์‹œ ๋‹ค๋ฅธ ์ง€ํ‘œ(RSI, MACD ๋“ฑ)์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ด์•ผ ์‹ ๋ขฐ๋„๊ฐ€ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค.
  • ๊ฐ€๊ฒฉ์ด ๋ฐด๋“œ๋ฅผ ๋šซ์—ˆ๋‹ค๊ณ  ํ•ด์„œ ๋ฌด์กฐ๊ฑด ๋ฐ˜์ „์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ฐ•ํ•œ ์ถ”์„ธ๋Š” ๋ฐด๋“œ ๋ฐ–์—์„œ๋„ ๊ณ„์† ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.
  • ๋ฐด๋“œ ํญ์ด ์ข์„์ˆ˜๋ก ๋ณ€๋™์„ฑ์ด ๋‚ฎ๊ณ , ๊ณง ๊ธ‰๊ฒฉํ•œ ์›€์ง์ž„์ด ๋‚˜ํƒ€๋‚  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

๐Ÿ› ๏ธ 5. Python์œผ๋กœ ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ ๊ตฌํ˜„ํ•˜๊ธฐ

import pandas as pd
import matplotlib.pyplot as plt

# ๋ฐ์ดํ„ฐ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
df = pd.read_csv('price_data.csv')  # ์ข…๊ฐ€(Close) ์—ด ํฌํ•จ

# ๋ณผ๋ฆฐ์ € ๋ฐด๋“œ ๊ณ„์‚ฐ
df['MA20'] = df['Close'].rolling(window=20).mean()
df['STD'] = df['Close'].rolling(window=20).std()
df['Upper'] = df['MA20'] + 2 * df['STD']
df['Lower'] = df['MA20'] - 2 * df['STD']

# ์‹œ๊ฐํ™”
plt.figure(figsize=(14,6))
plt.plot(df['Close'], label='Close Price')
plt.plot(df['MA20'], label='20-Day MA', color='blue')
plt.plot(df['Upper'], label='Upper Band', linestyle='--', color='red')
plt.plot(df['Lower'], label='Lower Band', linestyle='--', color='green')
plt.fill_between(df.index, df['Upper'], df['Lower'], color='gray', alpha=0.1)
plt.title('Bollinger Bands')
plt.legend()
plt.show()

๐Ÿ’ก 6. ์š”์•ฝ

์žฅ์ ๋‹จ์ 
๊ฐ€๊ฒฉ๊ณผ ๋ณ€๋™์„ฑ์„ ๋™์‹œ์— ๊ณ ๋ ค์ถ”์„ธ ์˜ˆ์ธก ๋Šฅ๋ ฅ์€ ๋–จ์–ด์ง
์‹œ๊ฐ์  ์ดํ•ด๊ฐ€ ์‰ฌ์›€๋‹จ๋… ์‚ฌ์šฉ ์‹œ ์˜คํ•ด ๊ฐ€๋Šฅ
๋‹ค์–‘ํ•œ ์ „๋žต๊ณผ ๋ณ‘ํ–‰ ๊ฐ€๋Šฅ์ง€ํ‘œ ๋ฏผ๊ฐ๋„ ์กฐ์ • ํ•„์š”

๐Ÿ”š ๋งˆ๋ฌด๋ฆฌ

๋ณผ๋ฆฐ์ € ๋ฐด๋“œ๋Š” ๋‹จ์ˆœํ•˜๋ฉด์„œ๋„ ๊ฐ•๋ ฅํ•œ ๊ธฐ์ˆ ์  ์ง€ํ‘œ์ž…๋‹ˆ๋‹ค. ๊ฐ€๊ฒฉ์˜ ํ‰๊ท ๊ณผ ๋ณ€๋™์„ฑ ๋ฒ”์œ„๋ฅผ ํ•œ๋ˆˆ์— ๋ณด์—ฌ์ฃผ๊ธฐ ๋•Œ๋ฌธ์— ์‹œ์žฅ ํ๋ฆ„์„ ์ดํ•ดํ•˜๊ณ , ๋ฆฌ์Šคํฌ๋ฅผ ์กฐ์ ˆํ•˜๋ฉฐ, ๋งค๋งค ํƒ€์ด๋ฐ์„ ์žก๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์–ธ์ œ๋‚˜ ๊ทธ๋ ‡๋“ฏ ๋‹จ์ผ ์ง€ํ‘œ์— ์˜์กดํ•˜๊ธฐ๋ณด๋‹ค๋Š”, ๋‹ค์–‘ํ•œ ๊ด€์ ๊ณผ ๋„๊ตฌ๋ฅผ ํ•จ๊ป˜ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์•ˆ์ „ํ•œ ์ ‘๊ทผ์ž…๋‹ˆ๋‹ค.


์ฝ”๋ฉ˜ํŠธ

๋‹ต๊ธ€ ๋‚จ๊ธฐ๊ธฐ

์ด๋ฉ”์ผ ์ฃผ์†Œ๋Š” ๊ณต๊ฐœ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•„์ˆ˜ ํ•„๋“œ๋Š” *๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค