BaşlayınÜcretsiz Başlayın

Bitcoin ve Ethereum Eşbütünleşik mi?

Eşbütünleşme iki adımdan oluşur: eşbütünleşme vektörünü elde etmek için bir zaman serisini diğerine göre regresyonlamak ve ardından regresyonun artıklarına ADF testi uygulamak. Son örnekte, ilk adıma gerek yoktu çünkü zımnen eşbütünleşme vektörünün \(\small (1,-1)\) olduğunu varsaydık. Başka bir deyişle, (birim dönüşümü yaptıktan sonra) iki serinin farkını aldık. Burada her iki adımı da yapacaksın.

Bir kriptoparayı, bitcoin'i (BTC), diğer bir kriptopara olan ethereum'a (ETH) göre regresyonlayacaksın. Regresyon katsayısını \(\small b\) olarak adlandıralım; bu durumda eşbütünleşme vektörü basitçe \(\small (1,-b)\) olur. Sonra BTC \(\small - b \) ETH üzerinde ADF testini uygula. Bitcoin ve Ethereum fiyatları BTC ve ETH DataFrame'lerine önceden yüklenmiştir.

Bu egzersiz

Python ile Zaman Serisi Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Regresyon için statsmodels modülünü ve adfuller fonksiyonunu içe aktar
  • sm.add_constant() kullanarak ETH DataFrame'ine sabit terim ekle
  • sm.OLS(y,x).fit() ile BTC'yi ETH üzerinde regresyonla; burada y bağımlı değişken, x bağımsız değişkendir ve sonuçları result içine kaydet.
    • Sabit terim result.params[0] içinde, eğim ise result.params[1] içindedir
  • BTC \(\small - b \) ETH üzerinde ADF testini çalıştır

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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])
Kodu Düzenle ve Çalıştır