Σ
SDCalc
PertengahanAplikasi·12 min

Sisihan Piawai Bergerak untuk Siri Masa

Pelajari cara mengira dan mentafsir sisihan piawai bergerak (rolling) untuk analisis siri masa. Termasuk Bollinger Bands, pengkelompokan volatiliti, contoh kod Python, dan aplikasi dunia sebenar dalam kewangan.

Apakah Sisihan Piawai Bergerak?

Sisihan piawai bergerak (juga dipanggil SD rolling atau volatiliti mengekor) mengira sisihan piawai dalam tetingkap masa yang bergeser. Berbeza dengan sisihan piawai statik yang menggunakan semua data sejarah, SD bergerak memberi tumpuan pada cerapan terkini, menjadikannya penting untuk mengesan perubahan volatiliti dari semasa ke semasa.

Teknik ini asas dalam pasaran kewangan, di mana volatiliti tidak tetap tetapi berubah dari semasa ke semasa. Sesuatu saham mungkin tenang selama berbulan-bulan, kemudian tiba-tiba menjadi sangat volatil semasa pengumuman pendapatan atau krisis pasaran. SD bergerak menangkap dinamik ini secara masa nyata.

Mengapa SD Bergerak Penting

Sisihan piawai statik memperlakukan semua data sejarah secara sama rata, tetapi volatiliti terkini selalunya meramalkan volatiliti masa depan dengan lebih baik berbanding sejarah jauh. SD bergerak memberi anda ukuran risiko semasa yang boleh diambil tindakan dan menyesuaikan diri dengan keadaan pasaran yang berubah.

Cara Mengira Sisihan Piawai Rolling

Untuk setiap titik masa, kira sisihan piawai bagi n titik data sebelumnya. Apabila anda bergerak ke hadapan, tetingkap bergeser, sentiasa menggunakan n nilai terkini. Ini mencipta siri masa anggaran volatiliti.

1

Tentukan Tetingkap Anda

Pilih berapa tempoh (contohnya, 20 hari) untuk disertakan dalam setiap pengiraan.
2

Kira SD Pertama

Hitung sisihan piawai bagi n titik data pertama.
3

Geserkan Tetingkap

Bergerak ke hadapan satu tempoh, buang nilai paling lama, tambah yang terbaharu.
4

Ulang

Teruskan sehingga anda mencapai penghujung siri data anda.
python
import pandas as pd
import numpy as np

# Load your time series data
df = pd.read_csv('stock_prices.csv')

# 20-day rolling standard deviation
df['rolling_std_20'] = df['returns'].rolling(window=20).std()

# Annualized volatility (assuming daily returns)
df['annualized_vol'] = df['rolling_std_20'] * np.sqrt(252)

# Multiple windows for comparison
df['rolling_std_10'] = df['returns'].rolling(window=10).std()
df['rolling_std_50'] = df['returns'].rolling(window=50).std()

Perhatikan bahawa (tetingkap-1) nilai pertama akan menjadi NaN kerana anda memerlukan sekurang-kurangnya n cerapan untuk mengira. Dalam amalan, anda boleh menggunakan parameter min_periods untuk mula mengira lebih awal dengan cerapan yang lebih sedikit.

Memilih Saiz Tetingkap yang Betul

Saiz tetingkap mencipta pertukaran antara kereaktifan dan kestabilan:

  • Tetingkap pendek (5-10 hari):Bertindak balas dengan cepat terhadap perubahan volatiliti tetapi bising dan mungkin menghasilkan isyarat palsu
  • Tetingkap sederhana (20-30 hari):Mengimbangi kereaktifan dengan kestabilan; 20 hari ialah piawai industri untuk Bollinger Bands
  • Tetingkap panjang (50-100 hari):Lancar dan stabil tetapi lambat mengesan perubahan rejim; baik untuk analisis aliran

Petua Pro

Gunakan pelbagai saiz tetingkap bersama. Bandingkan SD bergerak 10 hari, 20 hari, dan 50 hari untuk memahami kedua-dua turun naik jangka pendek dan aliran volatiliti jangka panjang. Perbezaan antara ini boleh menandakan perubahan rejim.

Aplikasi Dunia Sebenar

Sisihan piawai bergerak digunakan secara meluas merentasi kewangan dan sains data:

  • Pengurusan Risiko:Mengira Nilai Berisiko (VaR) menggunakan volatiliti terkini dan bukan purata sejarah
  • Penetapan Harga Opsyen:Menganggar parameter volatiliti tersirat untuk model Black-Scholes dan lain-lain
  • Pengurusan Portfolio:Melaraskan saiz kedudukan berdasarkan volatiliti semasa; mengurangkan pendedahan apabila volatiliti melonjak
  • Pengesanan Anomali:Mengenal pasti tempoh luar biasa apabila volatiliti semasa menyimpang dengan ketara daripada purata bergerak
  • Analisis Teknikal:Bollinger Bands, Keltner Channels, dan petunjuk berasaskan volatiliti yang lain

Bollinger Bands Dijelaskan

Bollinger Bands ialah aplikasi sisihan piawai bergerak yang paling terkenal. Dibangunkan oleh John Bollinger pada tahun 1980-an, ia mencipta sampul dinamik di sekitar harga yang menyesuaikan diri dengan volatiliti.

Bollinger Bands

Upper Band = SMA(20) + 2 × Moving SD(20) Lower Band = SMA(20) - 2 × Moving SD(20)

Jalur melebar semasa tempoh volatil dan mengecut semasa tempoh tenang. Pedagang menggunakan ini untuk:

  • Mengenal pasti keadaan terlebih beli/terlebih jual apabila harga menyentuh jalur
  • Mengesan “squeeze” (volatiliti rendah) yang sering mendahului pecahan
  • Menetapkan henti rugi dinamik berdasarkan keadaan pasaran semasa

Pengkelompokan Volatiliti

Salah satu fakta empirikal terpenting dalam kewangan ialah volatiliti berkelompok—volatiliti tinggi cenderung mengikuti volatiliti tinggi, dan rendah mengikuti rendah. Ini diformalkan oleh Robert Engle (Hadiah Nobel 2003) dalam model ARCH.

SD bergerak mendedahkan pengkelompokan ini secara visual. Apabila anda memplot volatiliti rolling dari semasa ke semasa, anda akan melihat rejim jelas volatiliti tinggi dan rendah dan bukannya turun naik rawak. Ini mempunyai implikasi mendalam:

  • Kebolehramalan:Volatiliti esok berkemungkinan serupa dengan hari ini—anda boleh menjangka risiko
  • Belanjawan Risiko:Kurangkan kedudukan apabila memasuki rejim volatiliti tinggi
  • Pemilihan Strategi:Strategi dagangan yang berbeza berfungsi lebih baik dalam persekitaran volatiliti yang berbeza

Kaveat Penting

Walaupun volatiliti berkelompok, perubahan rejim boleh berlaku secara tiba-tiba dan dramatik. Berita utama, kejatuhan pasaran, atau pengumuman dasar boleh mengalihkan rejim volatiliti serta-merta. SD bergerak akan sentiasa ketinggalan perubahan ini—pada masa ia mencerminkan realiti baharu, rejim mungkin sudah berubah lagi.