Anda di halaman 1dari 11

Written by Rangga Handika

Regresi Linear dengan R

1.

Model Keuangan
Dalam konteks pembahasan ekonometrika, tentunya kita tidak pernah lepas dari model

ekonomi. Namun buku ini membahas ekonometrika keuangan, yang tentunya menggunakan
model keuangan (bukan model ekonomi). Sub bagian ini membahas secara ringkas
pengertian model ekonomi dan perbedaan utama model keuangan dengan model ekonomi.
Literatur ekonometrika (seperti Hill et al., 2011) memberikan pengertian atas apa yang
dimaksudkan dengan model ekonomi. Model ekonomi merupakan suatu bentuk yang
memaparkan hubungan antara suatu variabel ekonomi dengan variabel ekonomi lainnya yang
akan digunakan untuk melakukan analisa ekonomi secara empiris (atau kuantitatif).
Hubungan antar variabel ekonomi tersebut diformulasikan berdasarkan teori ekonomi yang
ada.
Model keuangan sedikit berbeda dengan model ekonomi. Tentu kita juga bias
mengartikan bahwa model keuangan memaparkan hubungan antara variabel-variabel
keuangan berdasarkan teori keuangan. Lebih spesifik lagi, Brooks (2008) menjelaskan
perbedaan antara model keuangan dan model ekonomi, khususnya terkait perbedaan data
(variabel) keuangan dengan data ekonomi yaitu sebagai berikut:
1. Data ekonomi lebih rentan terhadap kesalahan pengukuran (measurement error) dan revisi
(data revision) sedangkan data keuangan relatif terhindar dari kedua masalah tersebut
karena data keuangan diperoleh ketika terjadi transaksi perdagangan dan dilakukan secara
online dan realtime.
2. Data keuangan tersedia dalam frekuensi yang lebih tinggi (misalnya dalam tiap bulanan
atau mingguan, bahkan ada dalam tiap jam atau menit yang disebut sebagai high
frequency data) sementara data ekonomi biasanya hanya ada tiap tahun atau semester atau
kuartal.
3. Data keuangan memiliki lebih banyak noisy yang artinya lebih rumit untuk memisahkan
komponen tren dari aspek random.
4. Data keuangan cenderung tidak terdistribusi secara normal, padahal tehnik ekonometrika
sebagian besar mengasumsikan distribusi normal.
5. Data keuangan yang memiliki frekuensi yang lebih tinggi cenderung memiliki
karakteristik khusus.

Written by Rangga Handika

Poin nomor 3 hingga nomor 5 memiliki implikasi serius bagi peneliti yang bermaksud
melakukan penelitian empiris di bidang keuangan yang artinya dalam menyusun suatu model
keuangan harus mempertimbangkan aspek-aspek tersebut.
Tiga macam tipe data keuangan yang umum tersedia:
1. Data keuangan time series, yang artinya data suatu variabel keuangan pada suatu runtutan
rentang waktu. Contoh: data harga harian suatu saham pada 2 Januari 2010 sampai dengan
30 Desember 2012.
2. Data keuangan cross section, yang artinya data suatu variabel keuangan pada berbagai
sampel pada suatu titik waktu tertentu. Contoh: data laba seluruh 45 perusahaan LQ-45
pada 31 Desember 2014.
3. Data keuangan panel, yang artinya data suatu variabel keuangan pada berbagai sampel
pada suatu runtutan rentang waktu. Contoh: data harga saham seluruh 45 perusahaan LQ45 pada 2 Januari 2010 sampai dengan 30 Desember 2012.
Contoh model keuangan adalah model ex-post Capital Asset Pricing Model (CAPM)
yang menjelaskan bahwa return suatu saham dapat dijelaskan oleh return pasar saham
(Jones, 2007 ; Bodie et al., 2009):

(5.1)
dimana:
Ri

: return suatu saham (saham i)

rf

: return instrumen keuangan risk free (misalnya BI rate)

i dan i

: parameter dalam model regresi, adalah konstanta, adalah koefisien dari


variabel rM - rf untuk suatu saham i

rM

: return pasar saham, biasanya return indeks (misalnya IHSG)

ei

: komponen idiosyncratic (random / error)

2.

Metode OLS Parameter Regresi


Model keuangan (5.1) dalam analisa ekonometrika kita sebut sebagai model regresi.

Dalam suatu model regresi, ada yang disebut sebagai dependent variable dan independent
variable. Dependent variable adalah suatu variabel yang variasi (perubahannya) dijelaskan
oleh independent variable. Pada model keuangan (5.1), Ri rf merupakan dependent variable
sedangkan RM rf merupakan independent variable.

Written by Rangga Handika

Suatu model keuangan regresi memiliki sejumlah asumsi sebagai berikut (Brooks, 2008
; Hill et al., 2011):
1. Expected value dari random error (e) adalah E(e) = 0.
2. Nilai varians dari random error (e) adalah var(e) = 2 (konstan).
3. Error yang satu dengan error yang lain secara statistik bersifat independen, atau
diformulasikan sebagai berikut cov(ei, ej) = 0.
4. Independent variable tidak bersifat random, dan minimal ada 2 nilai yang berbeda untuk 2
observasi dependent variable yang berbeda.
5. Nilai komponen error terdistribusi secara normal e ~ N(0, 2)
6. Komponen error dengan independent variable secara statistik bersifat independen, atau
diformulasikan sebagai berikut cov(ei, xi) = 0.
Dengan demikian, setiap model regresi harus dianalisa apakah observasinya memenuhi
asumsi-asumsi di atas. Tehnik analisa asumsi-asumsi tersebut bernama regression diagnostic
yang akan dibahas pada pertemuan berikutnya.
Berdasarkan model keuangan (5.1), jika data time series untuk dependent variable dan
independent variable tersedia, maka parameter regresi dan dapat ditentukan. Salah satu
tehnik menentukan parameter regresi adalah menggunakan tehnik ordinary least square
(OLS).
Tehnik OLS secara singkat dapat dijelaskan bahwa koefisien (intercept) dan koefisien
(slope) ditentukan sedemikian rupa sehingga garis lurus yang tercipta dari parameter dan
merupakan garis lurus yang paling fit / tepat yang menghubungkan antara dependent
variable dan independent variable (Hill et al., 2011). Garis lurus tersebut merupakan nilai
dependent variable yang diharapkan berdasarkan nilai suatu independent variable. Perbedaan
antara nilai yang diharapkan dengan nilai actual suatu dependent variable itulah yang disebut
sebagai residual. Tehnik OLS mencari parameter dan sedemikian rupa sehingga nilai
residualnya minimal. Detail proses tehnik OLS ini dapat dilihat pada Brooks (2008)
Chapter 2.

3.

Model Regresi Sederhana dan Regresi Berganda


Model regresi sederhana (simple linear regression) adalah model regresi dengan 1

(satu) independent variable. Sedangkan model regresi berganda (multiple linear regression)
adalah model regresi dengan 2 (dua) atau lebih independent variables.
Berdasarkan model keuangan (5.1) dan data time series harian harga saham Bank BNI
dan harga IHSG pada 30 Desember 2004 hingga 31 Desember 2014 (terdapat pada file

Written by Rangga Handika

DATA_KEUANGAN_1.csv), maka kita dapat menyusun suatu model keuangan regresi


sederhana sebagai berikut:

(5.2)
dimana:
RBNI

: return harian saham BNI

dan

: parameter dalam model regresi sederhana (5.2)

rIHSG

: return harian IHSG

: komponen idiosyncratic (random / error)

Komponen rf pada model (5.2) diabaikan karena nilai rf untuk harian akan sangat kecil
(mendekati 0) sehingga dapat diabaikan. Perlu diperhatikan juga bahwa data time series
harian yang ada adalah data volume dan harga, bukan return. Return suatu saham dapat
dihitung dengan menggunakan selisih log harga saham hari ini dengan log harga saham hari
sebelumnya, atau pada R digunakan rumus sebagai berikut:
diff(log(vektor kolom harga saham)
Perintah R untuk model regresi sederhana (5.2):
data <- read.csv("C:/Users/hp/Documents/Buku/Buku 1/Data/DATA_KEUANGAN_1.csv")
# membaca data keuangan
head(data, n=5) # menampilkan 5 baris pertama data
tail(data, n=5) # menampilkan 5 baris terakhir data
## Load dan install package "tseries"
## Load dan install package "zoo"
PriceBBNI <- matrix(data[,3]) # membuat vektor kolom harga saham harian BNI
head(PriceBBNI, n=5)
tail(PriceBBNI, n=5)
RDate <- matrix(data[2:nrow(data),1])
# membuat vektor kolom tanggal return harga saham BNI (baris 2 s/d akhir)
RDate = strptime(RDate, "%d/%m/%Y",tz="GMT")
# memformat vektor waktu dd/mm/yyyy CSV menjadi format waktu standar R
RDate = data.frame(RDate) # memformat vektor kolom RDate
head(RDate, n=5)
tail(RDate, n=5)
BNIReturn <- diff(log(PriceBBNI)) # membuat vektor kolom return saham harian BNI
RBNI = data.frame(RDate,BNIReturn)
# membuat matriks RBNI yang terdiri dari vektor kolom tanggal dan return BNI
head(RBNI, n=5)
tail(RBNI, n=5)

Written by Rangga Handika

plot(RDate, RBNI$BNIReturn,xlab="Date",ylab="Return Saham BNI")


# menampilkan scatterplot return harian BNI
PriceIHSG <- matrix(data[,5]) # membuat vektor kolom harga saham harian IHSG
head(PriceIHSG, n=5)
tail(PriceIHSG, n=5)
IHSGReturn <- diff(log(PriceIHSG)) # membuat vektor kolom return saham harian IHSG
RIHSG = data.frame(RDate,IHSGReturn)
head(RIHSG, n=5)
tail(RIHSG, n=5)
plot(RDate, RIHSG$IHSGReturn,xlab="Date",ylab="Return IHSG")
# menampilkan scatterplot return harian IHSG

plot(RBNI$BNIReturn ~ RIHSG$IHSGReturn,xlab="Return IHSG",ylab="Return BNI")


lm_5_2 <- lm(RBNI$BNIReturn ~ RIHSG$IHSGReturn) # regresi OLS model 5.2
abline(lm_5_2) # menggambarkan garis regresi pada plot

Written by Rangga Handika

names(lm_5_2) # isi hasil analisa regresi OLS model 5.2


output:
[1] "coefficients" "residuals" "effects"
"rank"
[5] "fitted.values" "assign"
"qr"
"df.residual"
[9] "na.action" "xlevels"
"call"
"terms"
[13] "model"
intepretasi:
Ada 13 sub-report hasil analisa regresi OLS model 5.2 melalui perintah lm_5_2
summary(lm_5_2) # laporan utama hasil regresi OLS model 5.2
output:
Call:
lm(formula = RBNI$BNIReturn ~ RIHSG$IHSGReturn)
Residuals:
Min
-0.142250

1Q
-0.010305

Median
-0.001269

3Q
0.008988

Max
0.181666

Coefficients:
Estimate
Std. Error t value Pr(>|t|)
(Intercept)
-0.0002867 0.0004338
-0.661
0.509
RIHSG$IHSGReturn
1.2028554 0.0297064
40.491 <2e-16 ***
--Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
Residual standard error: 0.02115 on 2381 degrees of freedom
(92 observations deleted due to missingness)
Multiple R-squared: 0.4078, Adjusted R-squared: 0.4075
F-statistic: 1640 on 1 and 2381 DF, p-value: < 2.2e-16
intepretasi:
Residuals merupakan nilai residu (error) dengan rentang nilai minimal, kuartil pertama,
median (kuartil kedua), kuartil ketiga dan maksimal.
Coefficients merupakan angka koefisien hasil estimasi OLS parameter (intercept) dan
(variabel return IHSG RIHSG$IHSGReturn), koefisiennya pada kolom Estimate,
beserta nilai standard error ada kolom Std. Error, nilai t-statistic pada kolom tvalue dan nilai p-value pada kolom Pr(>|t|). Pada output tersebut, nilai estimasi OLS
parameter adalah negatif dan sangat kecil (mendekati nol) tetapi secara statistik tidak
signifikan; sedangkan parameter adalah positif dan signifikan secara statistik pada
tingkat keyakinan 99.9 persen (100 persen 0.1 persen).
Baris Signif. codes: menunjukkan bahwa tanda *** untuk tingkat keyakinan 99.9
persen, tanda ** untuk tingkat keyakinan 99 persen, tanda * untuk tingkat
keyakinan 95 persen, dan tanda . untuk tingkat keyakinan 90 persen. Tanda ini akan
dimunculkan (jika estimate suatu coefficient secara statistik signifikan) pada sebelah sisi
kanan nilai p-value (angka pada kolom Pr(>|t|)). Pada output di atas, kita mellihat

Written by Rangga Handika

tanda *** di sebelah kanan angka p-value coefficient <2e-16 (lebih kecil daripada
angka 2 x 10-16).
Nilai standar error residual (komponen error model regresi (5.2)) sebesar 0.02115
dengan 2381 derajat bebas. Ada informasi disebutkan bahwa sebanyak 92 observasi
dieliminasi karena ketiadaan data (missing values).
Nilai Goodness of fit model regresi (5.2) sebesar 0.4078 (unadjusted R-squared) dan
0.4075 (adjusted R-squared). Penulis merekomendasikan menggunakan angka adjusted Rsquared1. Artinya bahwa variasi (perubahan) dependent variable return saham BNI dapat
dijelaskan 40,75 persen melalui variasi (perubahan) independent variable return IHSG
pada model regresi (5.2).
Nilai F-statistik adalah 1640 untuk 1 variabel (variabel return IHSG
RIHSG$IHSGReturn) pada 2381 derajat bebas dengan nilai p-value < 2.2e-16 (lebih kecil
daripada angka 2 x 10-16), yang artinya variabel return IHSG secara statistik signifikan
mempengaruhi variabel return saham BNI. Nilai p-value F-statistik untuk 1 variabel akan
sama dengan nilai p-value pada independent variabel tersebut.

lm_5_2$coefficients
# melaporkan nilai estimate, standar error, t-statistic dan p-value koefisien parameter
output:
(Intercept)
RIHSG$IHSGReturn
-0.0002866825
1.2028554279
intepretasi:
Nilai estimate sama dengan nilai pada kolom Estimate pada Coefficients yaitu
sebesar -0.0002866825 (untuk intercept ) dan 1.2028554279 (untuk ).
confint(lm_5_2, level = 0.95)
# menyusun interval (dengan keyakinan 95 persen) koefisien parameter
output:
(Intercept)
RIHSG$IHSGReturn

2.5 %
-0.001137331
1.144602387

97.5 %
0.000563966
1.261108469

intepretasi:
Menampilkan batas bawah (kolom 2.5 %) dan batas atas (kolom 97.5 %) pada
interval estimasi koefisien parameter dan pada tingkat keyakinan 95 persen.
Beberapa code R perintah lainnya (Kleiber dan Zeileis, 2008 Bab 3):
print( )
coef( )
residuals ( )
fitted ( )
annova ( )
1

menampilkan output
menampilkan angka estimasi OLS parameter pada model regresi
menampilkan angka seluruh residuals estimasi OLS model regresi
menampilkan nilai fit (expected value dependent variable)
melakukan perbandingan model regresi nested

Brooks (2008) Chapter 3 menjelaskan perbedaan antara unadjusted R-squared dan adjusted R-squared dan
alasan mengapa sebaiknya menggunakan nilai adjusted R-squared.

Written by Rangga Handika

predict ( )
plot ( )
confint ( )
deviance ( )
vcov ( )
logLik ( )
AIC ( ) / BIC ( )

melakukan prediksi dengan model regresi berdasarkan suatu data


melakukan plot diagnosa suatu model regresi
nilai confidence interval koefisien parameter pada model regresi
nilai jumlah kuadrat residuals
estimasi matriks variance-covariance
nilai log-likelihood model regresi
nilai kriteria informasi model regresi

Berdasarkan model keuangan (5.1) dan data time series harian harga saham Bank BNI,
harga IHSG, harga ASX 200 (Indeks harga saham Australia) dan harga SP 500 (Indeks harga
saham Amerika Serikat) pada 30 Desember 2004 hingga 31 Desember 2014 (terdapat pada
file DATA_KEUANGAN_1.csv), maka kita dapat menyusun suatu model keuangan
regresi berganda sebagai berikut:

(5.3)

dimana:
RBNI

: return harian saham BNI

, 1, 2 dan 3

: parameter dalam model regresi berganda (5.3)

rIHSG

: return harian IHSG

rASX 200

: return harian indeks ASX 200

rSP 500

: return harian indeks SP 500

: komponen idiosyncratic (random / error)

Perintah R untuk model regresi berganda (5.3) melanjutkan perintah regresi sederhana (5.2)
sebelumnya:

PriceASX <- matrix(data[,7]) # membuat vektor kolom harga saham harian ASX 200
head(PriceASX, n=5)
tail(PriceASX, n=5)
ASXReturn <- diff(log(PriceASX)) # membuat vektor kolom return saham harian ASX 200
RASX = data.frame(RDate,ASXReturn)
head(RASX, n=5)
tail(RASX, n=5)
plot(RDate, RASX$ASXReturn,xlab="Date",ylab="Return ASX 200")
# menampilkan scatterplot return harian ASX 200

Written by Rangga Handika

lm_5_3 <- lm(RBNI$BNIReturn ~ RIHSG$IHSGReturn + RASX$ASXReturn)


# regresi OLS model 5.3
names(lm_5_3) # isi hasil analisa regresi OLS model 5.3
output:
[1] "coefficients" "residuals" "effects"
"rank"
[6] "assign"
"qr"
"df.residual" "na.action"
[11] "call"
"terms"
"model"

"fitted.values"
"xlevels"

intepretasi:
Ada 13 sub-report hasil analisa regresi OLS model 5.3 melalui perintah lm_5_3
summary(lm_5_3) # laporan utama hasil regresi OLS model 5.3
output:
Call:
lm(formula = RBNI$BNIReturn ~ RIHSG$IHSGReturn + RASX$ASXReturn)
Residuals:
Min
-0.140647

1Q
-0.010364

Median
-0.001190

3Q
0.009134

Max
0.180638

Coefficients:
Estimate
Std. Error
t value
(Intercept)
-0.0002427
0.0004442
-0.547
RIHSG$IHSGReturn 1.1692907
0.0355936
32.851
RASX$ASXReturn 0.0909580
0.0461628
1.970
--Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1

Pr(>|t|)
0.5848
<2e-16 ***
0.0489 *

Written by Rangga Handika

Residual standard error: 0.02127 on 2293 degrees of freedom


(179 observations deleted due to missingness)
Multiple R-squared: 0.4089, Adjusted R-squared: 0.4084
F-statistic: 793 on 2 and 2293 DF, p-value: < 2.2e-16
intepretasi:
Residuals merupakan nilai residu (error) dengan rentang nilai minimal, kuartil pertama,
median (kuartil kedua), kuartil ketiga dan maksimal.
Coefficients merupakan angka koefisien hasil estimasi OLS parameter (intercept), 1
(variabel return IHSG RIHSG$IHSGReturn) dan 2 (variabel return indeks ASX 200
RASX$ASXReturn), koefisiennya pada kolom Estimate, beserta nilai standard error ada
kolom Std. Error, nilai t-statistic pada kolom t-value dan nilai p-value pada kolom
Pr(>|t|). Pada output tersebut, nilai estimasi OLS parameter adalah negatif dan
sangat kecil (mendekati nol) tetapi secara statistik tidak signifikan; parameter 1 adalah
positif dan signifikan secara statistik pada tingkat keyakinan 99.9 persen (100 persen
0.1 persen) sedangkan parameter 2 adalah positif kecil dan signifikan secara statistik
pada tingkat keyakinan 95 persen (100 persen 5 persen).
Baris Signif. codes: menunjukkan bahwa tanda *** untuk tingkat keyakinan 99.9
persen, tanda ** untuk tingkat keyakinan 99 persen, tanda * untuk tingkat
keyakinan 95 persen, dan tanda . untuk tingkat keyakinan 90 persen. Tanda ini akan
dimunculkan (jika estimate suatu coefficient secara statistik signifikan) pada sebelah sisi
kanan nilai p-value (angka pada kolom Pr(>|t|)). Pada output di atas, kita mellihat
tanda *** di sebelah kanan angka p-value coefficient 1 <2e-16 (lebih kecil daripada
angka 2 x 10-16) dan tanda * di sebelah kanan angka p-value coefficient 2 0.0498.
Nilai standar error residual (komponen error model regresi (5.3)) sebesar 0.02127
dengan 2293 derajat bebas. Ada informasi disebutkan bahwa sebanyak 179 observasi
dieliminasi karena ketiadaan data (missing values).
Nilai Goodness of fit model regresi (5.3) sebesar 0.4098 (unadjusted R-squared) dan
0.4084 (adjusted R-squared). Penulis merekomendasikan menggunakan angka adjusted Rsquared2. Artinya bahwa variasi (perubahan) dependent variable return saham BNI dapat
dijelaskan 40,84 persen melalui variasi (perubahan) independent variables return IHSG
dan return ASX 200 pada model regresi (5.3).
Nilai F-statistik adalah 793 untuk 2 variabel (variabel return IHSG
RIHSG$IHSGReturn dan variabel return ASX 200 RASX$ASXReturn) pada 2293
derajat bebas dengan nilai p-value < 2.2e-16 (lebih kecil daripada angka 2 x 10-16), yang
artinya variabel return IHSG dan variabel return ASX 200 secara bersama-sama
(keduanya) signifikan secara statistik dalam mempengaruhi variabel return saham BNI.

lm_5_3$coefficients
# melaporkan nilai estimate, standar error, t-statistic dan p-value koefisien parameter
output:
(Intercept)
-0.0002427471

RIHSG$IHSGReturn
1.1692906819

RASX$ASXReturn
0.0909579806

Brooks (2008) Chapter 3 menjelaskan perbedaan antara unadjusted R-squared dan adjusted R-squared dan
alasan mengapa sebaiknya menggunakan nilai adjusted R-squared.

Written by Rangga Handika

intepretasi:
Nilai estimate sama dengan nilai pada kolom Estimate pada Coefficients yaitu
sebesar -0.0002427471 (untuk intercept ), 1.1692906819 (untuk 1) dan 0.0909579806
(untuk 2).
confint(lm_5_3, level = 0.95)
# menyusun interval (dengan keyakinan 95 persen) koefisien parameter
output:
(Intercept)
RIHSG$IHSGReturn
RASX$ASXReturn

2.5 %
97.5 %
-0.001113787 0.0006282926
1.099491698 1.2390896655
0.000432808 0.1814831533

intepretasi:
Menampilkan batas bawah (kolom 2.5 %) dan batas atas (kolom 97.5 %) pada
interval estimasi koefisien parameter , 1 dan 2 pada tingkat keyakinan 95 persen.

Daftar Pustaka
Bodie, Z., Kane, A. & Marcus, A. J. 2009. Investments 8th edition, McGraw-Hill / Irwin.,
New York USA.
Brooks, C., 2008. Introductory Econometrics for Finance 2nd edition, Cambridge University
Press, New York USA.
Danielsson, J., 2011. Financial Risk Forecasting, John Wiley & Sons, United Kingdom.
Hill, R. C., Griffiths, W. E. & Lim, G. C. 2011. Principles of Econometrics 4th edition, John
Wiley & Sons Inc., NJ USA.
Jones, C. P., 2007. Investments 11th edition, John Wiley & Sons Inc., NJ USA.
Kleiber, C. & Zeileis, A. 2008. Applied Econometrics With R, Springer, Spring Street, NY.
Venables, W. N., Smith, D. M. & R Core Team. 1999 2004. An Introduction to R.