Apakah Bitcoin dan Ethereum Berkointegrasi?
Kointegrasi melibatkan dua langkah: meregresikan satu deret waktu terhadap deret lainnya untuk mendapatkan vektor kointegrasi, lalu melakukan uji ADF pada residual regresi. Pada contoh terakhir, tidak perlu melakukan langkah pertama karena kita secara implisit mengasumsikan vektor kointegrasi adalah \(\small (1,-1)\). Dengan kata lain, kita mengambil selisih antara kedua deret (setelah konversi satuan). Di sini, Anda akan melakukan kedua langkah.
Anda akan meregresikan nilai satu cryptocurrency, bitcoin (BTC), terhadap cryptocurrency lain, ethereum (ETH). Jika koefisien regresinya kita sebut \(\small b\), maka vektor kointegrasinya adalah \(\small (1,-b)\). Selanjutnya lakukan uji ADF pada BTC \(\small - b \) ETH. Harga Bitcoin dan Ethereum sudah dimuat sebelumnya dalam DataFrame BTC dan ETH.
Latihan ini adalah bagian dari kursus
Analisis Deret Waktu dengan Python
Petunjuk latihan
- Impor modul statsmodels untuk regresi dan fungsi
adfuller - Tambahkan konstanta ke DataFrame
ETHmenggunakansm.add_constant() - Regresikan
BTCterhadapETHmenggunakansm.OLS(y,x).fit(), di mana y adalah variabel terikat dan x adalah variabel bebas, lalu simpan hasilnya diresult.- Intersep berada di
result.params[0]dan kemiringan (slope) diresult.params[1]
- Intersep berada di
- Jalankan uji ADF pada BTC \(\small - b \) ETH
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Import the statsmodels module for regression and the adfuller function
import statsmodels.api as sm
from statsmodels.tsa.stattools import adfuller
# Regress BTC on ETH
ETH = sm.___(ETH)
result = sm.OLS(___,___).fit()
# Compute ADF
b = result.params[1]
adf_stats = adfuller(___['Price'] - b*___['Price'])
print("The p-value for the ADF test is ", adf_stats[1])