• Tidak ada hasil yang ditemukan

Presented as Partial of the Requirements to Obtain the Sarjana Teknik Degree In Informatics Engineering

N/A
N/A
Protected

Academic year: 2019

Membagikan "Presented as Partial of the Requirements to Obtain the Sarjana Teknik Degree In Informatics Engineering"

Copied!
108
0
0

Teks penuh

(1)

i

Skripsi

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika

Oleh :

ANDRIYANTO

055314006

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS dan TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

ii

Final Project

Presented as Partial of the Requirements to

Obtain the

Sarjana Teknik

Degree

In Informatics Engineering

By :

ANDRIYANTO

055314006

STUDY PROGRAM OF INFORMATICS ENGINEERING

DEPARTEMENT OF INFORMATICS ENGINEERING

FACULTY OF SIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

(3)
(4)
(5)

v  

Segala Sesuatu yang Terjadi dalam Hidup Ini, Adalah Hasil dari Apa yang Kita Pikirkan

Keberuntungan adalah Bagian dari Suatu Kemenangan,

Keberuntungan Seseorang

(6)

PROG DOLLA yang dibu Program S Dharma Y dari skrips gelar kesa Perguruan dicantumk GRAM APL AR (AMER

uat untuk m

Studi Teknik

Yogyakarta, s

si yang sudah

rjanaan di l

Tinggi atau

kan sebagaim

LIKASI PE

RIKA SER

melengkapi s

k Informatik

sejauh yang

h dipublikas

lingkungan

u Instansi m

mana mestiny vi ERAMALA RIKAT) ME JENKI sebagian per ka, Fakultas saya ketahu

sikan dan ata

Universitas

manapun, ke

ya.

AN KURS R

ENGGUNA

NS

rsyaratan m

Sains dan T

ui bukan mer

au pernah di

Sanata Dha ecuali bagian Y RUPIAH T AKAN ME menjadi Sarja Teknologi U rupakan tiru ipakai untuk arma Yogya

n yang sum

Yogyakarta Penu Andriy NIM 055 TERHADA TODE BO ana Teknik Universitas S

uan atau dup

k mendapatk

akarta maup

mber informa

(7)

vii

investasi dan pengembangan perusahaan. Suatu perusahaan akan memprediksi dan mempertimbangkan keuntungan perusahaan sebelum melakukan penanaman modal atau pengembangan perusahaan. Salah satu langkah perusahaan untuk mengembangkan dan menjalankan perusahaan dengan baik adalah dengan melakukan peminjaman dana untuk pembiayaan dan perluasan perusahaan, baik melalui pinjaman dalam bentuk rupiah atau dalam bentuk dollar (US$).

Setelah terjadinya krisis ekonomi, pergerakan kurs di Indonesia mengalami fluktuasi yang cukup tajam. Terjadinya fluktuasi ini, tentunya mendapatkan pengaruh dari beberapa variable ekonomi dan non-ekonomi diantaranya adalah tingkat suku bunga dalam dan luar negeri, jumlah uang beredar, tigkat inflasi dan tingkat harga yang diindikasikan dengan tingkat inflasi. Hal ini menyebabkan naiknya nilai tukar mata uang Negara-negara maju seperti Amerika Serikat(US$).

(8)

viii

influence a company in the conduct of investment decisions and corporate development. A company will predict and consider the company's profit before investment or development companies. One of the company to develop and run the company well is by borrowing funds for the financing and expansion of the company, either through a loan in the form of rupiahs or in dollars (U.S. $).

After the economic crisis, exchange rate movements in Indonesia experienced a sharp fluctuations. These fluctuations, must obtain the influence of several economic variables and non-economic such as the interest rates at home and abroad, the money supply, inflation and price level indicated by the rate of inflation. This causes the rise in currency exchange rates Developed countries like the United States (U.S. $).

(9)

Yang bert Nam NIM Demi peng Universita PROG DOLL

Beserta p memberik menyimpa pangkalan Internet at saya maup saya sebag Demikian Dibuat di Pada tangg Yang men ( Andriyan anda tangan ma : Andr M : 0553

gembangan as Sanata Dh

GRAM APL LAR(AMER

perangkat y kan kepada

an, mengali n data, men

tau media la pun membe gai penulis.

pernyataan

Yogyakarta gal : 30 Agu nyatakan

nto )

n dibawah i riyanto

14006

n ilmu penge harma kary LIKASI PE RIKA SER yang diper a Perpustak ihkan dalam ndistribusik ain untuk ke erikan royal

n ini yang sa

a

ustus 2009

ix ni, saya ma

etahuan, say ya ilmiah say

ERAMALA RIKAT) ME JENKI

rlukan ( b kaan Univ m bentuk m kan secara epentingan lti kepada s

aya buat den

ahasiswa Un

ya memberi ya yang berj

AN KURS R ENGGUNA

NS

bila ada ) versitas Sa media lain, m

terbatas, da akademis ta aya selama ngan sebena niversitas Sa ikan kepada rjudul : RUPIAH T AKAN MET ). Dengan anata Dhar mengelolany

an mempub anpa perlu m

tetap menc arnya. anata Dharm a Perpustaka TERHADA TODE BOX demikian rma hak u

(10)

x

YESUS atas kasih karunia dan keselamatan, serta kepada ROH KUDUS atas penyertaan, hikmat, akal dan budi sehingga saya dapat menyelesaikan skripsi yang berjudul “PROGRAM APLIKASI PERAMALAN KURS RUPIAH TERHADAP DOLLAR (AMERIKA SERIKAT) MENGGUNAKAN

METODE BOX-JENKINS”.

Skripsi ini disusun untuk memenuhi salah satu syarat memperoleh gelar sarjana teknik program studi teknik informatika. Skripsi ini diharapkan dapat menjadi suatu bahan bacaan dan pertimbangan bagi semua pihak yang memerlukan dan menggunakannya.

Penulis mengucapkan banyak terima kasih kepada pihak-pihak yang telah membantu, membimbing, dan memberikan petunjuk selama proses pengerjaan skripsi, pembuatan naskah skripsi, hingga tersusunnya naskah skripsi ini. Tidak lupa, penulis mengucapkan terima kasih kepada :

1. Bapak Yosef Agung Cahyanta, S.T., M.T., selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

2. Bapak Puspaningtyas Sanjaya Adi, S.T., M.T., selaku Ketua Jurusan Teknik Informatika Universitas Sanata Dharma Yogyakarta.

(11)

do 6. Te yan dan ini Se Karunia-N di atas. Sk senang ha mungkin m lebih luas memberi m amu. eman-teman

ng tidak da n bantuan i.

moga Tuha Nya kepada

kripsi ini te ati menerim masih bisa m s dan anali manfaat bag

n Teknik In apat saya se yang diberi

an Yang M semua piha entu saja ma ma kritik d

mengemban isa yang le gi kita semu

xi nformatika

ebutkan satu ikan, sehing

Maha Esa ak yang tela asih jauh da dan saran d ngkan hasil ebih tajam. ua.

angkatan 2 u persatu, t gga saya d

senantiasa ah memberi ari sempurn demi perba penelitian i . Akhirnya

2005 dan te terima kasih dapat menye memberik ikan segala na, sehingga aikan. Kepa ini pada rua a semoga s

Yogy

eman-teman h atas duku elesaikan sk

(12)

xii

HALAMAN MOTTO ... v 

PERNYATAAN KEASLIAN KARYA ... vi 

ABSTRAKSI ... vii 

ABSTRACT ... viii 

LEMBAR PERNYATAAN PERSETUJUAN ... ix 

KATA PENGANTAR ... x 

DAFTAR ISI ... xii 

DAFTAR TABEL ... xviii 

DAFTAR GAMBAR ... xviii 

BAB 1 ... 1 

PENDAHULUAN ... 1 

1.1. LATAR BELAKANG MASALAH ... 1 

1.2. RUMUSAN MASALAH ... 3 

1.3. BATASAN MASALAH ... 3 

1.4. TUJUAN PENELITIAN ... 4 

1.5. METODE PENELITIAN ... 4 

1.6. SISTEMATIKA PENULISAN ... 5 

BAB 2 ... 6 

LANDASAN TEORI ... 6 

2.1. KURS MATA UANG ... 6 

(13)

xiii

2.3.1.1  Mempersiapkan Deret Input dan Output ... 13 

2.3.1.1.1  Pembedaan Data ... 13 

2.3.1.1.2  Estimasi Parameter AR dan MA untuk Deret Input ... 14 

2.3.1.2  Pemutihan Deret Input ... 16 

2.3.1.3  Pemutihan Deret Output ... 17 

2.3.1.4  Penghitungan Korelasi-Silang untuk Deret Input dan Output yang Telah Diputihkan ... 18 

2.3.1.5  Penaksiran Langsung Bobot Respons Impuls ... 19 

2.3.1.6  Penetapan (r,s,b) untuk Model Fungsi Transfer yang Menghubungkan Deret Input dan Output ... 20 

2.3.1.7  Penaksiran Awal Deret gangguan(nt) ... 20 

2.3.1.8  Penetapan (pn,qn) untuk Model ARIMA(pn,0,qn) dari Deret Gangguan (nt) ... 20 

2.3.2.  Tahap 2 : Penaksiran Parameter-Parameter Model Fungsi Transfer 21  2.3.2.1  Taksiran Awal Nilai Parameter ... 21 

2.3.2.2  Taksiran Akhir Nilai Parameter ... 21 

2.3.3.  Penghitungan Nilai Sisa Model(r,s,b) yang Menghubungkan Deret Input dan Output ... 23 

2.3.4.  Tahap 4 : Penggunaan Model Fungsi Transfer untuk Peramalan .... 24 

2.3.5.  Penghitungan Ketepatan Ramalan ... 25 

(14)

xiv

3.1.1.  Gambaran Umum Sistem ... 27 

3.1.2.  Fungsi Utama Sistem ... 28 

3.2. KEBUTUHAN SISTEM ... 28 

3.2.1.  Use Case Diagram ... 28 

3.2.2.  Kebutuhan Perangkat Keras ... 29 

3.3. DESAIN FUNGSI TRANSFER ... 30 

3.3.1  Gambaran Umum Proses Fungsi Transfer ... 30 

3.3.2  Blok Diagram Proses Fungsi Transfer ... 32 

3.3.3  Proses Pembentukan Fungsi Transfer ... 35 

3.3.3.1.  Proses Pemutihan Deret Input Output ... 35 

3.3.4  Peramalan dengan Model Fungsi Transfer ... 44 

3.3.5  Data Flow Diagram ... 46 

3.3.5.1  DFD Level 0 ... 46 

3.3.5.2  DFD Level 1 ... 47 

3.3.5.3  DFD Level 2 Proses Open Data ... 48 

3.3.5.4  DFD Level 2 Proses Peramalan ... 48 

3.3.5.5  DFD Level 3 Proses Pemutihan Deret Input-Output ... 49 

3.3.5.6  DFD Level 3 Proses Penaksiran Model Fungsi Transfer ... 50 

3.3.5.7  DFD Level 4 Proses Pemutihan Deret Inflasi-Kurs ... 51 

(15)

xv

3.3.6.1  Frame Utama ... 55 

3.3.6.2  Frame Open File Data ... 56 

3.3.6.3  Frame Tampilan Data ... 56 

3.3.6.4  Frame Tampilan Hasil Peramalan ... 57 

3.3.6.5  Frame About Box ... 57 

3.3.7  Pengumpulan Data ... 58 

BAB 4 ... 59 

IMPLEMENTASI dan HASIL ... 59 

4.1. IMPLEMENTASI PROSES ... 59 

4.1.1.  Proses Pemutihan Deret Input Output ... 59 

4.1.2.  Penarikan Bobot Respons Impuls untuk Deret input ( 1) dan Deret Output ( ) ... 64 

4.1.3.  Penarikan Parameter Fungsi Transfer untuk Deret Input ( 1) dan Deret Output ( ) ... 66 

4.1.4.  Pengamatan Deret Noise(N) untuk pengaruh Deret Input terhadap Deret Output ... 67 

4.1.5.  Pencarian Parameter AR dan MA untuk Model ARIMA deret Noise(N) ... 68 

4.1.6.  Pengamatan Deret Nilai Sisa Residual ... 68 

4.1.7.  Pengamatan Deret Noise Model Fungsi Transfer ( ) ... 69 

(16)

xvi

4.4. Kelebihan Sistem ... 75 

4.5. Kekurangan Sistem ... 76 

BAB 5 ... 77 

KESIMPULAN dan SARAN ... 77 

5.1. Kesimpulan ... 77 

5.2. Saran ... 77 

DAFTAR PUSTAKA ... 79 

(17)

xvii

Tabel 2. Hasil Prediksi ... 73 

Tabel 3. Besar Bunga Bulanan ... 74 

Tabel 4. Data Nilai Tukar Rupiah Tahun 2008 ... 74 

Tabel 5. Data Nilai Tukar Rupiah Tahun 2001 - 2008 ... 80 

Tabel 6. Data Tingkat Inflasi Tahun 2001 - 2008 ... 81 

Tabel 7. Data Tingkat Suku Bunga Tahun 2001 - 2008 ... 83 

Tabel 8. Data Jumlah Uang Beredar Tahun 2001 - 2008 ... 85 

(18)

xviii

Gambar 3 Tahapan Pembentukan Pemodelan Fungsi Transfer (lanjutan) ... 12 

Gambar 4 Use Case Diagram ... 28 

Gambar 5 Blok Diagram Pembentukan Model Fungsi Transfer ... 32 

Gambar 6 Flowchart Pencarian Parameter AR dan MA Deret Input-Output ... 37 

Gambar 7 Flowchart Pemutihan Deret Input-Output ... 38 

Gambar 8 Flowchart Penarikan Bobot Respons Impuls ... 39 

Gambar 9 Flowchart Penarikan Parameter Fungsi Transfer ... 40 

Gambar 10 Flowchart Pencarian Deret Noise(N) ... 41 

Gambar 11 Flowchart Pencarian Parameter AR dan MA Deret Noise(N) ... 42 

Gambar 12 Flowchart Pengamatan Deret Nilai Sisa Residual (a) ... 43 

Gambar 13 Flowchart Pengamatan Deret Noise Fungsi Transfer (n) ... 44 

Gambar 14 Flowchart Peramalan dengan Model Fungsi Transfer ... 45 

Gambar 15 DFD Level 0 ... 46 

Gambar 16 DFD Level 1 ... 47 

Gambar 17 DFD Level 2 Proses Data Kurs Rp-USD ... 48 

Gambar 18 DFD Level 2 Proses Peramalan ... 49 

Gambar 19 DFD Level 3 Proses Pemutihan Deret Input-Output ... 50 

Gambar 20 DFD Level 3 Proses Penarikan Bobot Respons Impuls ... 50 

Gambar 21 DFD Level 4 Proses Pemutihan Deret Inflasi-Kurs ... 51 

(19)

xix

Gambar 25 Antarmuka FrameOpen file Data ... 56 

Gambar 26 Antarmuka Frame Tampilan Data ... 56 

Gambar 27 Antarmuka Frame Hasil Peramalan ... 57 

Gambar 28 Antarmuka FrameAbout Box ... 57 

(20)

1

BAB 1

PENDAHULUAN

1.1. LATAR BELAKANG MASALAH

Nilai tukar mata uang (kurs) merupakan salah satu faktor yang mempengaruhi suatu perusahaan dalam melakukan pengambilan keputusan investasi dan pengembangan perusahaan. Suatu perusahaan akan memprediksi dan mempertimbangkan keuntungan perusahaan sebelum melakukan penanaman modal atau pengembangan perusahaan. Salah satu langkah perusahaan untuk mengembangkan dan menjalankan perusahaan dengan baik adalah dengan melakukan peminjaman dana untuk pembiayaan dan perluasan perusahaan, baik melalui pinjaman dalam bentuk rupiah atau dalam bentuk dollar (US$).

(21)

perubahan kurs ini dapat berpengaruh pada kenaikan bahkan penurunan nilai suatu perusahaan sesuai dengan kebijakan yang diambil oleh suatu perusahaan.

Setelah terjadinya krisis ekonomi, pergerakan kurs di Indonesia mengalami fluktuasi yang cukup tajam. Terjadinya fluktuasi ini, tentunya mendapatkan pengaruh dari beberapa variable ekonomi dan non-ekonomi diantaranya adalah tingkat suku bunga dalam dan luar negeri, jumlah uang beredar, tigkat inflasi dan tingkat harga yang diindikasikan dengan tingkat inflasi. Hal ini menyebabkan naiknya nilai tukar mata uang Negara-negara maju seperti Amerika Serikat(US$). Perubahan kurs yang mencolok menyebabkan penurunan investasi perusahaan-perusahaan di Indonesia, salah satu penyebabnya adalah dengan naiknya nilai tukar dollar terhadap rupiah berpengaruh juga pada nilai pembayaran dalam bentuk dollar.

Dengan melihat faktor tersebut, maka diperlukan suatu pengamatan terhadap perubahan nilai tukar dollar. Dengan melakukan pengamatan tersebut, manajemen perusahaan akan dapat memprediksi nilai tukar dollar untuk membuat suatu keputusan mengenai peminjaman luar negeri (dalam bentuk dollar) dan mengetahui nilai bunga pinjaman per bulannya. Prediksi tingkat kurs untuk masa / periode ke depan dapat dilakukan dengan melakukan peramalan ( forecasting ).

(22)

AR(Autoregresive), MA(Moving Average), ARIMA (Box-Jenkins) dan pendekatan-pendekatan lainnya. Dalam skripsi ini, penulis menggunakan pendekatan ARIMA (Box-Jenkins) multivariat - fungsi transfer untuk melakukan peramalan kurs.

1.2. RUMUSAN MASALAH

Dengan melihat latar belakang masalah maka rumusan masalah pada skripsi ini adalah bagaimana membuat program untuk meramalkan kurs rupiah terhadap dollar (US$) yang menghasilkan nilai prediksi dalam periode bulan yang dapat digunakan untuk menmenghitung perkiraan nilai bunga bulanan dari pinjaman. Variabel yang digunakan adalah tingkat suku bunga dalam dan luar negeri, jumlah uang beredar dan tingkat harga yang diindikasikan dengan tingkat inflasi.

1.3. BATASAN MASALAH

Dalam melakukan peramalan nilai tukar rupiah terhadap USD dengan metode Box-Jenkins dilakukan batasan-batasan sebagai berikut:

1. Data yang digunakan adalah data nilai tukar rupiah terhadap USD, jumlah uang beredar(JUB), tingkat inflasi dan tingkat suku bunga dengan periode bulanan.

2. Hasil peramalan kurs merupakan peramalan dalam periode bulan.

(23)

1.4. TUJUAN PENELITIAN

Tujuan skripsi ini adalah :

1. Mengimplementasikan algoritma peramalan dengan metode Box-Jenkins multivariat - fungsi transfer ke dalam sebuah program.

2. Meramalkan kurs Rupiah terhadap USD menggunakan metode Box-Jenkins multivariat - fungsi transfer.

3. Mengetahui presestase kebenaran hasil peramalan mengguakan metode Box-Jenkins multivariat - fungsi transfer.

1.5. METODE PENELITIAN

Metode penelitian pada skripsi ini adalah :

1. Studi pustaka mengenai teknik peramalan dengan menggunakan metode Box-Jenkins multivariat – fungsi transfer.

2. Pencarian data historis untuk nilai tukar rupiah terhadap USD, tingkat inflasi, tingkat suku bunga dan jumlah uang beredar.

3. Membuat analisis dan desain untuk program yang akan dibuat.

4. Mengimplementasikan analisis dan desain tersebut ke dalam sebuah program aplikasi.

5. Analisa hasil peramalan yang dihasilkan program

(24)

• Menggunakan program untuk meramalkan prediksi nilai tukar rupiah terhadap USD dalam beberapa hari kedepan dengan menggunakan deret data history, dan catat hasil peramalan.

• Bandingkan hasil peramalan dengan deret data pembanding dan hitung prosentase keberhasilan / kebenaran hasil peramalan.

1.6. SISTEMATIKA PENULISAN

BAB I PENDAHULUAN

Bab ini berisi tentang latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, dan metodologi penelitian yang digunakan serta sistematika isi penulisan laporan.

BAB II LANDASAN TEORI

Bab ini menjelaskan konsep dan teori dasar yang mendukung penulisan skripsi ini.

BAB III ANALISIS dan PERANCANGAN SISTEM

Bab ini berisi pembahasan mengenai analisis kebutuhan, desain dan perancangan aplikasi peramalan.

BAB IV IMPLEMENTASI dan ANALISA HASIL

Bab ini berisi implementasi dari hasil perancangan pada Bab III dan analisis terhadap hasil pengujian dari aplikasi yang telah dibangun.

BAB V KESIMPULAN dan SARAN

(25)

6

BAB 2

LANDASAN TEORI

2.1. KURS MATA UANG

Kurs mata uang asing adalah harga dalam negeri dari mata uang luar negeri (asing). Kurs tukar ini dipertahankan sama di semua bagian pasar oleh abitrase. Abitrase mata uang asing berkenan kepada pembelian mata uang asing bilamana harganya rendah dan menjualnya bilamana harganya tinggi. Suatu kenaikan dalam kurs tukar disebut depresiasi atau pengurangan nilai mata uang dalam negeri dalam hubungannya dengan mata uang asing. Suatu penurunan dalam kurs disebut apresiasi atau suatu kenaikan dalam nilai mata uang dalam negeri.

Pada umumnya, kurs mata uang asing ditentukan oleh perpotongan dari kurva pemintaan pasar untuk mata uang asing dan penawaran dari mata uang asing. Permintaan untuk mata uang asing timbul terutama selama mengimpor barang-barang dan jasa-jasa dari luar negeri dan membuat investasi-investasi dan pinjaman luar negeri. Penawaran uang mata asing timbul selama mengekspor barang-barang dan jasa-jasa dan menerima investasi-investasi dan pinjaman-pinjaman luar negeri.

(26)

Suku Bunga (Dornbusch dan Fischer, 1989:105)

Kenaikan tingkat bunga relatif dalam negeri terhadap luar negeri akan menyebabkan depresiasi mata uang (kenaikan kurs valas atau kenaikan nilai kurs luar negeri), sehingga akan ada hubungan positif antara selisih tingkat suku bunga dengan nilai kurs valas. Naiknya suku bunga domestik berarti akan terjadi kenaikan tingkat harga dalam negeri.

Inflasi (Ackley, 1982:539; Dornbusch dan Fischer, 1989:7)

Perbedaan tingkat inflasi Indonesia dengan Amerika memberikan pengaruh dalam mendepresiasi nilai Rp/US$. Kenaikan tingkat inflasi Indonesia terhadap inflasi Amerika akan menyebakan melemahnya nilai Rupiah terhadap US$.

Uang yang Beredar (Dornbusch dan Fischer, 1989:339)

Dasar teori Frenkel tersebut menyatakan bahwa kurs akan mencapai keseimbangan bila terdapat stok uang dua negara yang ingin dipegang. Karena itu, harga relatif mata uang kedua negara harus dinyatakan dalam bentuk penawaran dan permintaan. Kenaikan x% dari penawaran uang domestik akan menyebabkan depresiasi kurs sebesar x%.

(27)

kesejahteraan suatu negara, dapat menyebabkan kenaikan nilai tukar negara tersebut.

Tingkat Pendapatan Masyarakat (Sukirno, 1999:11)

Kenaikan pendapatan nominal domestik relatif terhadap luar negeri akan menimbulkan apresiasi kurs valas, di mana harga-harga dalam negeri akan turun relatif terhadap harga luar negeri, nilai tukar domestik akan turun.

Politik (Dornbusch dan Fischer, 1989:110)

Keadaan politik dalam negeri dan luar negeri sangat berpengaruh terhadap kenaikan ataupun penurunan nilai tukar. Kebijakan-kebijakan pemerintah yang dikeluarkan akan membuat nilai tukar rupiah naik atau turun. Dengan kata lain, semakin memburuknya keadaan politik suatu negara dapat menyebabkan penurunan nilai kurs.

2.2. PERAMALAN

(28)

pola hubungan antara variabel yang akan diperkirakan dengan variabel waktu, yang merupakan deret waktu, atau time series.

Metode-metode peramalan dengan menggunakan pola hubungan antara variabel yang akan diperkirakan dengan variabel waktu, atau analisa deret waktu terdiri dari :

a. Metode smoothing, yang mencakup metode data lampau (past data), metode rata-rata kumulatif, metode moving averages, dan metode

exponential smoothing.

b. Metode Box Jenkins, yang menggunakan dasar deret waktu dengan model matematis, agar kesalahan yang terjadi dapat sekecil mungkin.

c. Metode proyeksi tren dengan regresi, merupakan dasar garis tren untuk suatu persamaan matematis, sehingga dengan dasar persamaan tersebut dapat diproyeksikan nilai yang diteliti untuk masa depan.

Metode peramalan yang didasarkan atas penggunaan analisa pola hubungan antara variabel yang akan diperkirakan dengan variabel lain yang mempengaruhinya, yang bukan waktu, yang disebut metode korelasi atau sebab akibat (causal methods), terdiri dari

(29)

2.3. FUNGSI TRANSFER

Gambar 1 Pemodelan Fungsi Transfer

Pada konsep/model fungsi transfer terdapat deret berkala output (Yt), yang diperkirakan akan dipengaruhi oleh deret berkala input ( Xt) dan input-input lain yang digabungkan dalam satu kelompok yang disebut gangguan(noise),Nt. Seluruh system tersebut adalah system yang dinamis, jadi deret input Xt memberikan pengaruhnya kepada deret output melalui fungsi transfer, yang mendistribusikan dampak Xt melalui beberapa waktu yang akan datang. Tujuan fungsi transfer adalah untuk menetapkan model yang sederhana yang menghubungkan Yt, Xt dan Nt. dengan kata lain tujuan utama pemodelan ini adalah untuk menetapkan peranan indicator penentu

(30)

Tahapan-Tahapan dalam Pembentukan Pemodelan Fungsi Transfer

(31)

Gambar 3 Tahapan Pembentukan Pemodelan Fungsi Transfer (lanjutan)

(32)

2.3.1. Tahap 1 : Identifikasi Bentuk Model Fungsi Transfer

Tahap identifikasi bentuk model fungsi transfer memiliki beberapa proses diantaranya adalah mempersiapkan deret input dan output, pemutihan deret input dan output, penghitungan korelasi silang deret input dan output, penghitungan langsung bobot response impulse, penetapan r,s,b , pengamatan deret noise dan penetapan model ARIMA untuk deret noise.

2.3.1.1 Mempersiapkan Deret Input dan Output

Dalam tahap ini, deret input dan output yang ada distasionerkan terlebih dahulu. Stasioneri data dapat dilakukan dengan melakukan pembedaan data seperti dijelaskan sebagai berikut :

2.3.1.1.1 Pembedaan Data

Untuk mendapatkan kestasioneran deret berkala dapat dilakukan dengan menggunakan pembedaan(differencing) untuk mendapatkan deret berkala yang stasioner. Jadi untuk mendapatkan kestasioneran dapat dibuat deret berkala baru yang terdiri dari perbedaan nilai antara periode yang berturut-turut :

(33)

tidak maka perlu dilakukan pembedaan pertama kembali dari data hasil pembedaan pertama yang dihasilkan sebelumnya :

′′

Bila deret berkala pada pembedaan ini belum mencapai stasioneritas maka dapat dilakukan kembali pembedaan sampai tercapailah stasioneritas dari data.

2.3.1.1.2 Estimasi Parameter AR dan MA untuk Deret Input

Tahap kedua dalam mempersiapkan data adalah mencari model ARIMA(p,d,q) untuk deret input dan membuat estimasi parameter AR dan MA dari model tersebut. Model ARIMA(p,d,q) merupakan model yang memerlukan stasioneritas data, data yang stasioner telah didapatkan melalui tahap pertama. Sehingga untuk mendapatkan parameter AR dan MA cukup menggunakan model ARMA dari daret input yang telah dibedakan.

Dalam mencari parameter AR dan MA, langkah pertama yang harus dilakukan adalah mengestimasi parameter AR telebih dahulu dengan menggunakan model Autoregressive. Model Autoregressive dapat dirumuskan dengan :

Dimana : = Data ke t

, , … , = parameter-parameter Autoregressive

(34)

Estimasi parameter AR dapat dilakukan dengan berbagai metode, salah satunya adalah dengan metode matrix. Metode ini dapat dijelaskan sebagai berikut :

Dimana : 1

1 …

1

; ;

adalah parameter AR, merupakan suatu notasi vektor sehingga dapat mewakili beberapa parameter AR.

Setelah mendapatkan parameter AR, selanjutnya adalah mengestimasi parameter MA model. Estimasi parameter MA dilakukan dengan pendekatan autokorelasi dari deret yang dianalisis. Langkah tersebut dapat dijelaskan sebagai berikut :

1

1 2

; 2

(35)

2.3.1.2 Pemutihan Deret Input

Pemutihan deret input adalah proses menghilangkan seluruh pola yang diketahui sehingga mendapatkan white noise. Pemutihan deret input dpat dilakukan dengan rumus :

t x

x

t

x

B

B

)

(

)

(

θ

φ

α

=

Dimana

= operator autoregresif,

 = operator rata-rata bergerak dan

= deret input yang diputihkan (white noise).

Pada persamaan tersebut dan merupakan notasi vektor sehingga dalam prakteknya dapat meampung lebih dari satu variable. Sebagai contoh pemutihan deret input, misalkan suatu deret input dimodelkan sebagai ARIMA(1,1,1) maka persamaan pemutihan deret input akan menjadi :

1 1

Untuk memudahkan penyelesaian, persamaan tersebut dapat ditansformasikan ke dalam bentuk :

Dengan menggunakan persamaan tersebut, nilai untuk ditetapkan sebagai 0 (nol) karena tidak memiliki . Sedangkan untuk mencari nilai dan dapat dilakukan dengan cara sebagai

(36)

Dengan persamaan yang sama pemutihan untuk nilai ke 4 sampai ke n

dapat dicari.

2.3.1.3 Pemutihan Deret Output

Dalam model fungsi tansfer, pemutihan deret input dilakukan dengan persamaan yang sama dengan pemutihan deret input. Hal ini dilakukan untuk menjaga integritas model fungsi transfer. Persamaan untuk pemutihan deret output pada dasarnya adalah sebagai berikut :

t x

x

t

y

B

B

)

(

)

(

θ

φ

β

=

Sebagai contoh, untuk deret input dengan model ARIMA(1,1,1) seperti pada 2.3.1.2 maka pemutihan deret output dapat dirumuskan sebagai berikut :

1 1

Dimana

= parameter AR dari deret input, = parameter MA dari deret input.

(37)

Seperti pada pemutihan deret input, nilai untuk ditetapkan sebagai 0(nol) karena tidak memiliki . Sedangkan untuk mencari nilai dan dapat dilakukan dengan cara sebagai berikut :

Dengan persamaan yang sama pemutihan untuk nilai ke 4 sampai ke n

dapat dicari.

2.3.1.4 Penghitungan Korelasi-Silang untuk Deret Input dan Output yang

Telah Diputihkan

Penghitungan korelasi-silang dapat dilakukan dengan :

• Penghitungan kovarians antara X dan Y

)

)(

(

1

=

(k)

C

_ 1 _

β

β

α

α

αβ

+

− =

t k

k n

t

t

n

Dimana k = 0,1,2,3,…, X= deret input yang diputihkan, Y = deret output

yang diputihkan,

__

X

= rata-rata deret X dan

__

Y

= rata-rata deret Y.

)

)(

(

1

=

(k)

C

_ 1 _

α

α

β

β

βα

+

− =

t k

k n

t

t

(38)

• Penghitungan korelasi-silang β α αβ ββ αα αβ αβ

S

S

k

C

C

C

k

C

(

)

)

0

(

)

0

(

)

(

=

(k)

r

=

2.3.1.5 Penaksiran Langsung Bobot Respons Impuls

Setelah mendapatkan deret input dan output yang telah diputihkan, maka diperlukan penghitungan korelasi silang antara hasil pemutihan deret input dan output. Penghitungan ini dilakukan untuk mendapatkan bobot impuls. Penghitungan bobot impuls untuk deret input dan output yang telah diputihkan dapat dilakukan dengan menggunakan rumus :

α β αβ

S

S

k

r

(

)

=

v

k dimana 2 1 ) ( n 1 =

= − n t X Xt Sα , 2 1 ) ( n 1 =

= − n t Y Yt Sβ , ) )( ( n 1 = 1 Y Y X Xt

r t k

k n t − − − =

αβ
(39)

2.3.1.6 Penetapan (r,s,b) untuk Model Fungsi Transfer yang

Menghubungkan Deret Input dan Output

Prinsip yang digunakan dalam menentukan nilai(r,s,b) adalah sebagai berikut :

• Sampai lag waktu ke b, korelasi-silang tidak akan berbeda dari nol secara signifikan.

• Untuk s time lag selanjutnya, korelasi-silang tidak akan memperlihatkan adanya pola yang jelas

• Untuk r time lag selanjutnya, korelasi-silang akan memperlihatkan suatu pola yang jelas

2.3.1.7 Penaksiran Awal Deret gangguan(nt)

Dengan menggunakan persamaan berikut :

Y

t

= v(B) x

t

+ n

t

Maka dapat diketahui gangguan untuk Yt adalah sebagai berikut :

n

t

= Y

t

– v

0

x

t

– v

1

x

t-1

– v

2

x

t-2

- … - v

g

x

t-g

2.3.1.8 Penetapan (pn,qn) untuk Model ARIMA(pn,0,qn) dari Deret

Gangguan (nt)

(40)

untuk mendapatkan model ARIMA yang sesuai dilakukan sama dengan metode pencarian model ARIMA pada deret input.

2.3.2. Tahap 2 : Penaksiran Parameter-Parameter Model Fungsi Transfer

Tahap penaksiran parameter model fungsi transfer memiliki dua proses yaitu pengamatan awal nilai parameter dan pengamatan akhir nilai parameter. Kedua proses tersebut dapat dijelaskan sebagai berikut :

2.3.2.1 Taksiran Awal Nilai Parameter

Setelah mendapatkan model fungsi transfer, maka akan dapat diperkirakan parameter-parameter yang ada dalam model tersebut. Misalnya model fungsi transfer yang didapat adalah :

t t

a

B

B

B

x

B

B

B

B

)

1

(

)

1

(

)

1

(

)

(

=

Y

2 1 1 1 2 2 2 1 2 2 1 0

t

φ

φ

θ

δ

δ

ω

ω

ω

+

Parameter-parameter yang didapat adalah ω0,ω1,ω2,δ1,δ2,θ1,φ1dan φ2.

2.3.2.2 Taksiran Akhir Nilai Parameter

Pada tahap ini, dengan menggunakan nilai pembobot (v) yang telah diketahui, maka nilai dari parameter-parameter yang didapatkan pada tahap 2-1 dapat diketahui. Sebagai contoh, misalnya model fungsi transfer memiliki bobot impuls sebanyak 16 (v v v  v Dengan melihat persamaan model fungsi transfer pada 2.3.2.1, penaksiran parameter-parameter model fungsi transfer dapat dilakukan dengan melihat persamaan-persamaan berikut :

(41)

0 (2)

(3) (4) (5) (6)

(7) (8)

• Untuk mencari nilai dan dapat dilakukan dengan menyelesaikan persamaan 6 dan 7. Kedua persamaan tersebut dapat dicari dengan mencoba-coba nilai dan untuk mendapatkan nilai yang sama atau mendekati v dan v 

• Dengan mengasumsikan v dan vsama dengan nol, maka sesuai dengan persamaan 3, nilai adalah :

0 0

0 0

Setelah mendapatkan nilai , dan , pencarian nilai dilakukan dengan menggunakan persamaan 4 dan untuk mencari nilai

(42)

2.3.3. Penghitungan Nilai Sisa Model(r,s,b) yang Menghubungkan Deret

Input dan Output

Penghitungan Nilai Sisa Model(r,s,b) yang Menghubungkan Deret Input dan Output merupakan tahap terakhir dalam pembentukan model fungsi transfer yaitu tahap Uji Diagnosis Model Fungsi Transfer. Sesuai dengan model fungsi transfer contoh pada 2.3.2.1, yang dituliskan kembali sebagai berikut :

t t

a

B

B

B

x

B

B

B

B

)

1

(

)

1

(

)

1

(

)

(

=

Y

2 1 1 1 2 2 2 1 2 2 1 0

t

φ

φ

θ

δ

δ

ω

ω

ω

+

Pencarian deret nilai sisa ( ) model fungsi transfer dapat dilakukan dengan mentransformasikan model fungsi transfer menjadi :

Dimana

(43)

Pada contoh model ini menggunakan r,s,b sama dengan 2. Dengan menggunaka persamaan tersebut, kita mengasumsikan nilai

, , , , dan menjadi nol. Dengan demikian, nilai deret sisa

yang didapatkan adalah , , , … , atau tedapat (n – 1 – r – s – b) nilai .

2.3.4. Tahap 4 : Penggunaan Model Fungsi Transfer untuk Peramalan

Setelah mendapatkan semua parameter model fungsi transfer dan deret nilai sisa, maka model fungsi transfer telah terpenuhi dan dapat digunakan untuk melakukan peramalan. Sebagai contoh model fungsi transfer pada 2.3.2.1 adalah sebagai berikut :

t t

a

B

B

B

x

B

B

B

B

)

1

(

)

1

(

)

1

(

)

(

=

Y

2 1 1 1 2 2 2 1 2 2 1 0

t

φ

φ

θ

δ

δ

ω

ω

ω

+

(44)

2.3.5. Penghitungan Ketepatan Ramalan

Untuk menghitung ketepatan ramalan, dapat digunakan metode

Mean Absolute Precentage Error. Metode ini menghasilkan presentase error dari hasil peramalan. Rumus dari metode tersebut adalah sebagai berikut :

n

X

F

X

t t

t

(

100

)

/

=

MAPE

n

1 i

=

(45)

27

BAB 3

ANALISIS dan PERANCANGAN SISTEM

3.1. ANALISIS SISTEM

3.1.1. Gambaran Umum Sistem

Aplikasi yang akan dibangun adalah program aplikasi berbasis desktop yang dapat memberikan prediksi/ramalan kurs rupiah terhadap US$ dengan periode bulan kepada user. Hasil dari prediksi ini diharapkan dapat membantu analis perusahaan dalam menentukan banyaknya bunga pinjaman yang harus dibayarkan setiap bulannya. Dengan mengetahui besar bunga pinjaman perusahaan, maka pimpinan perusahaan dapat mempertimbangkan untuk melakukan pinjaman dalam bentuk rupiah atau dalam bentuk dollar.

(46)

selisih tingkat suku bunga Indonesia dan Amerika yang diasumsikan mempengaruhi perubahan kurs.

3.1.2. Fungsi Utama Sistem

Fungsi dari aplikasi yang dibangun adalah memberikan prediksi/ramalan nilai kurs untuk periode beberapa bulan kedepan. Hasil peramalan ini dapat digunakan oleh analis ekonomi perusahaan untuk menghitung besarnya bunga bulanan yang dari pinjaman yang dilakukan perusahaan. Dengan demikian, diharapkan sistem ini dapat membantu perusahaan dalam mengambil keputusan mengenai pemilihan peminjaman perusahaan dalam bentuk dollar.

3.2. KEBUTUHAN SISTEM

3.2.1. Use Case Diagram

(47)

Seperti pada gambar 4, aplikasi ini memiliki 1 user yaitu analis ekonomi perusahaan. Analis perusahaan merupakan orang yang bertugas menganalisa perubahan-perubahan ekonomi baik dalam ataupun luar negeri untuk memberikan saran kepada pimpinan perusahaan mengenai kemungkinan-kemungkinan keputusan pengembangan perusahaan yang akan diambil. Pada kasus ini, user dapat melakukan 2 kegiatan dalam aplikasi ini yaitu Open data kurs, inflasi, JUB dan tingkau suku bunga dan melihat hasil peramalan.

Penjelasan dari setiap use case yang ada adalah sebagai berikut :

Tabel 1. Definisi Use Case

Use Case Deskripsi

Open data kurs, inflasi, JUB dan tingkau suku bunga

Pada use case ini user dapat mengambil data kurs, inflasi, JUB dan tingkat suku bunga pada suatu file dengan format .xls Melihat hasil peramalan Pada use case ini user dapat

melihat/mengetahui hasil peramalan nilai kurs untuk masa datang yang dihasilkan oleh aplikasi.

3.2.2. Kebutuhan Perangkat Keras

Perangkat keras yang digunakan untuk membangun sistem ini adalah: 1. Intel® Celeron® 2.26 Ghz

2. Ram 512 Mb

3. Sistem Operasi Windows XP Profesional SP 2 4. Keyboard

(48)

3.3. DESAIN FUNGSI TRANSFER

3.3.1 Gambaran Umum Proses Fungsi Transfer

Rumus dasar pembentukan fungsi transfer adalah sebagai berikut : –

1

rumus diatas merupakan model fungsi transfer untuk satu deret input dan satu deret output. Sedangkan rumus untuk fungsi transfer dengan 3 input adalah sebagai berikut :

1

1

1

dimana :

= deret output,

= deret input pertama, = deret input kedua, = deret input ketiga,

dan = parameter fungsi transfer untuk input 1, dan = parameter fungsi transfer untuk input 2,

dan = parameter fungsi transfer untuk input 3,

B = Backshift operator (nilai pada waktu sebelumnya), = deret noise model fungsi transfer, dan

(49)

Pada aplikasi yang dibangun, proses untuk mendapatkan nilai , , dan , , dapat dijelaskan pada poin 3.3.2.1 sampai dengan poin 3.3.2.3. Setelah mendapatkan nilai , , dan , , nilai yang harus dicari adalah nilai .

Nilai dapat dicari dengan mengguakan rumus :

Dari rumus tersebut perlu dicari terlebih dahulu nilai , nilai merupakan deret nilai sisa residu seperti dijelaskan pada BAB 2. Untuk mendapakkan nilai , pertama tama adalah mencari deret noise untuk deret output dengan ketiga deret input ( ) yang bisa di rumuskan sebagai berikut :

1

1

1

Setelah mendapatkan nilai , maka barulah nilai dapat dicari dengan menggunakan rumus

1 1

(50)

3.3.2 Blok Diagram Proses Fungsi Transfer

Untuk mengimplementasikan persamaan-persamaan tersebut ke dalam sebuah program, maka diperlukan adanya desain proses dari program. Dalam program ini, proses yang ada mengacu pada persamaan-persamaan pada poin 3.3.1. Untuk lebih jelasnya dapat dilihat pada diagram blok berikut :

(51)

Gambar xx merupakan blok diagram dari proses yang ada dalam program yang akan dibangun, blok diagram ini dapat dijelaskan sebagai berikut :

a. Pemutihan Deret Input dan Output

Dalam pemutihan deret input dan output terdapat dua proses, proses pertama adalah pencarian parameter AR dan MA dari deret input dan output dan proses kedua adalah proses pemutihan deret input dan output itu sendiri. Hasil dari proses ini adalah deret input (alpha) dan output (betha) yang telah diputihkan yang merupakan

white noise dari deret input dan output. b. Penghitungan Bobot Respons Impuls

Proses kedua juga memiliki 2 proses didalamnya, yaituu mencari korelasi silang antara deret alpha dan betha baru kemudian dengan menggunakan deret input dan output yang telah diputihkan, sistem akan menghitung bobot respons impuls dengan asumsi deret input akan mempengaruhi perubahan deret output dalam periode k. c. Penarikan Parameter Fungsai Transfer dari Deret Input dan

Output

(52)

d. Pengamatan Deret Noise(N) Untuk Pengaruh Deret Input terhadap Deret Output

Bobot respons impuls yang didapatkan pada proses sebelumnya digunakan oleh sistem untuk mencari deret noise dari data input dan output. Proses ini akan menghasilkan deret noise (N). e. Pencarian Parameter AR dan MA untuk Deret Noise (N)

Deret noise yang dihasilkan oleh proses sebelumnya, kemudian dimodelkan kedalam sebuah model ARIMA untuk mendapatkan parameter AR dan MA dari deret noise.

f. Pengamatan Deret Nilai Sisa Residual

Setelah mendapatkan deret noise(N), hasil ini kemudian digunakan untuk mencari deret nilai sisa residual, yang nantinya dapat digunakan untuk proses selanjutnya untuk mencari deret noise fungsi transfer (n).

g. Pencarian Deret Noise Fungsi Transfer (n)

Dengan menggunakan deret nilai sisa residual dari proses sebelumnya dan deret noise (N), maka dapat dicari deret noise fungi transfer(n).

h. Peramalan

(53)

3.3.3 Proses Pembentukan Fungsi Transfer

Dengan mengacu pada blok diagram yang telah dijelaskan pada sub-bab sebelumnya, sub-bab ini akan menjelaskan proses fungsi transfer yang ada dalam program yang akan dibuat. Proses yang ada dalam program yang akan dibuat dapat dijelaskan sebagai berikut :

3.3.3.1. Proses Pemutihan Deret Input Output

Proses pemutihan deret input output memiliki dua langkah di dalamnya, langkah-langkah tersebut adalah pencarian parameter AR dan MA untuk deret input dan pemutihan deret input uoutput. Langkah-langkah tersebut dapat dijelaskan sebagai berikut :

a. Mencari Parameter AR dan MA untuk Model ARIMA(p,d,q) Deret Input( )

Pada proses ini, model ARIMA(p,d,q) digunakan untuk mendapatkan parameter AR dan MA dari deret input. Pada model ini, p adalah orde autoregressive, d adalah orde pembedaan data dan q adalah orde movingaverrage. Dalam program yang akan dibuat, model ARIMA yang digunakan adalah ARIMA(1,1,1). Langkah ini sesuai dengan bab 2.3.1.1.2.

(54)

kemudian ditransformasikan dalam matrix Z[ ][ ] yang merupakan matrix dua dimensi, Ztranspose[ ] [ ] yang merupakan hasil transpose dari matrix Z[ ][ ], matrix Y[ ] yang merupakan matrix 1 dimensi dengan data pembedaan itu sendiri dan matrix Ytranspose[ ] yang merupakan hasil transpose matrix Y[ ].

Setelah mendapatkan matrix-matrix tersebut, langkah selanjutnya adalah mengalikan matrix Z dengan matrix Ztranspose menjasi matrix Ztranspose_Z[ ]. Hasil perkalian ini kemudian dicari inversnya (mencari invers dari matrix Ztranspose_Z). Setelah mendapatkan matrix Ztranspose_Z, langkah selanjutnya adalah mengalikan matrix Ztranspose_Z dengan matrix Ytranspose untuk mendapatkan parameter AR0 dan parameter AR1.

(55)

Untuk mempermudah pengertian langkah-langkah proses ini, dapat di lihat pada gambar xx. Gambar xx merupakan flowchart untuk proses pencarian parameter AR dan MA dari deret input.

(56)

b. Pemutihan Deret Input ( ) dan Deret Output ( )

Setelah menetapkan model ARIMA untuk deret input ( ) dan deret kurs ( ), langkah selanjutnya adalah memutihkan deret input

( ) dan deret kurs ( ). Proses ini dapat dijelaskan sebagai berikut :

Gambar 7 Flowchart Pemutihan Deret Input-Output

(57)

3.3.3.2. Penarikan Bobot Respons Impuls untuk Deret input ( ) dan Deret Output ( )

Proses pemutihan deret input ( ) dan deret kurs ( ), akan menghasilkan deret inflasi yang diputihkan (alpha) dan deret kurs yang diputihkan (betha). Dengan menggunakan kedua deret ini, proses penarikan bobot impuls dapat dijelaskan sebagai berikut :

Hitung

korelasi silang antara alpha dan betha Kovarian alpha dan

Kovarian betha

Hitung bobot impulse dari alpha dan betha

bobotImpulse[i] = korelasiSilang[i] * Math.sqrt(covarianceBetha / covarianceAlpha);

Return bobotImpulse

B

D

Gambar 8 Flowchart Penarikan Bobot Respons Impuls

(58)

respons impuls kemudian ditampung ke dalam sebuah array bobotImpuls[ ]. Proses ini dapat dilihat pada gambar 17.

3.3.3.3. Penarikan Parameter Fungsi Transfer untuk Deret Input ( ) dan Deret Output ( )

Setelah menaksirkan bobot respons impuls dari deret input ( )

dan deret kurs ( ), proses selanjutnya adalah Penarikan parameter fungsi transfer untuk deret inflasi ( ) dan deret kurs ( ). Proses ini dapat dijelaskan sebagai berikut :

Gambar 9 Flowchart Penarikan Parameter Fungsi Transfer

(59)

3.3.3.4. Pengamatan Deret Noise(N) untuk pengaruh Deret Input terhadap

Deret Output

Proses pengamatan deret noise deret inflasi, jumlah uang beredar, suku bunga terhadap kurs dapat dijelaskan debagai berikut :

E

Input deret y1[ ], y2[ ] , y3[ ] dan Y[ ]

Int i=0 Nt[ ] = new double[ ]

i < Y.length

Nt[ i ] = Y[ i ] – y1[ i ] – y2[ i ] – y3[ i ] i++

Ya

Return Nt[ ]

Tidak

G

Gambar 10 Flowchart Pencarian Deret Noise(N)

(60)

3.3.3.5. Pencarian Parameter AR dan MA untuk Deret Noise(N)

Seperti pada gambar 21, langkah untuk mencari parameter AR dan MA untuk deret noise (N) dilakukan seperti pada pencarian parameter AR dan MA dari deret input. Hanya saja, model ARIMA yang digunakan untuk mencari parameter AR dan MA pada deret noise (N) ini adalah ARIMA(2,0,1). Proses ini menghasilkan parameter AR0, AR1, AR2 dan MA0.

F

Input deret N[ ]

Z[][] = transformasi data N ke dalam metrix sesuai dengan orde autoregresif Ztranspose[][] = transpose matrix Z

Y[] = data N dari index ke p(orde AR) sampai n Ytranspose[] = transpose matrix Y

hitung Z * Ztranspose

Hitung invers matrix dari Z * Ztranspose

Hitung invers Ztranspose_Z * Ytranspose Parameter AR = matrix hasil perkalian

Cari hasil ramalan dan error ramalan menggunakan parameterAR

Gunakan parameterAR, hasil ramalan dan error ramalan untuk mencari parameterMA

H Return AR0, AR1, AR2, MA0

(61)

3.3.3.6. Pengamatan Deret Nilai Sisa Residual

Seperti pada gambar, dengan menggunakan hasil dari pengamatan deret noise (N), deret nilai sisa residual ( ) dapat dicari dengan langkah-langkah sebagai berikut :

Gambar 12 Flowchart Pengamatan Deret Nilai Sisa Residual (a)

(62)

3.3.3.7. Pengamatan Deret Noise Model Fungsi Transfer ( )

Deret noise fungsi transfer ( ), sesuai dengan rumus 3.2, proses pencarian deret noise ( ) dapat dijelaskan sebagai berikut :

Gambar 13 Flowchart Pengamatan Deret Noise Fungsi Transfer (n)

3.3.4 Peramalan dengan Model Fungsi Transfer

(63)

Gambar 14 Flowchart Peramalan dengan Model Fungsi Transfer

(64)

3.3.5 Data Flow Diagram

Data flow diagam (DFD) merupakan diagram yang digunakan untuk mempermudah desain proses yang ada dalam sebuah program. Dalam bab ini, untuk mempermudah pemahaman proses-proses yang ada dalam program, blok diagram pada sub-bab sebelumnya di transformasikan ke dalam sebuah DFD.

3.3.5.1 DFD Level 0

Gambar 15 DFD Level 0

(65)

3.3.5.2 DFD Level 1

Gambar 16 DFD Level 1

(66)

3.3.5.3 DFD Level 2 Proses Open Data

Gambar 17 DFD Level 2 Proses Data Kurs Rp-USD

Proses open data merupakan proses dimana sistem mengambil data dari sebuah file .xls dan memparsing data pada file tersebut untuk ditampilkan kepada user. Data yang diperlukan adalah data histori kurs, inflasi, jumlah uang beredar dan tingkat suku bunga. Data ini nantinya digunakan sistem untuk dianalisis dan menentukan perhitungan prediksi.

3.3.5.4 DFD Level 2 Proses Peramalan

(67)

parameter-parameter ini digunakan untuk menaksirkan model fungsi transfer. Setelah mendapatkan model fungsi transfer. Kemudian dicari parameter-parameter fungsi transfer yang digunakan untuk mencari prediksi nilai untuk 12 periode kedepan. Hasil prediksi ini kemudian ditampilkan kepada user.

Gambar 18 DFD Level 2 Proses Peramalan

3.3.5.5 DFD Level 3 Proses Pemutihan Deret Input-Output

(68)

suku bunga), masing input dengan output (data kurs), masing-masing harus dicari deret pemutihannya.

Gambar 19 DFD Level 3 Proses Pemutihan Deret Input-Output

3.3.5.6 DFD Level 3 Proses Penaksiran Model Fungsi Transfer

(69)

Proses penaksiran model fungsi transfer, memiliki 3 proses di dalamnya, yaitu penaksiran parameter awal fungsi transfer, pencarian deret nilai sisa dan penaksiran parameter akhir fungsi transfer. Ketiga proses ini akan menghasilkan nilai-nilai parameter dari model fungsi transfer yang kemudian akan digunakan untuk proses peramalan.

3.3.5.7 DFD Level 4 Proses Pemutihan Deret Inflasi-Kurs

Gambar 21 DFD Level 4 Proses Pemutihan Deret Inflasi-Kurs

(70)

diputihkan. Proses pertama adalah proses pembedaan data, dalam proses ini data input dan output dibedakan terlebih dahulu untuk mendapatkan stasioneritas data. Setelah membedakan data, proses selanjutnya adalah mencari parameter AR dan MA untuk deret input yang telah diputihkan.

Parameter AR dan MA yang dihasilkan kemudian digunakan untuk memutihkan deret input dan deret output. Langkah terakhir dalam proses ini adalah menghitung korelasi silang antara deret input dan output yang telah diputihkan yang nantinya digunakan oleh proses selanjutnya.

3.3.5.8 DFD Level 4 Proses Pemutihan Deret Jumlah Uang Beredar-Kurs

(71)
(72)

3.3.5.9DFD Level 4 Proses Pemutihan Deret Suku Bunga-Kurs

(73)

3.3.6 De pro yai abo fra 3.3.6.1 F d u esain Antar Desain a ogram. Prog itu frame ut

out box. Su

ame tersebut

Frame Utam

Aplik dan beberapa utama. rmuka antarmuka a gram aplika tama, open ub-bab ini ak

t.

ma

Ga kasi ini mer a frame inte

adalah desa asi yang aka

file data, tam kan menjela

ambar 24 Anta rupakan apli ernal (intern

ain tampilan an dibuat me

mpilan data askan meng

armuka Frame

ikasi yang m

nal frame) y

n dari frame

emiliki bebe a, hasil pera

enai desain

e Utama memiliki sa yang berada

yang ada d erapa frame

amalan dan n dari

frame-tu frame uta a pada frame

dalam

e

(74)

3.3.6.2 F

fo S m

3.3.6.3 F

Frame Open

Fram ormat .xls ( Setelah mem menampilka

Frame Tam

n File Data

Gamba me ini diguna

MS Excel) milih file, pr annya dalam

mpilan Data

Gamba

ar 25 Antarmu akan untuk pada direkt rogram akan m frame tam

a

ar 26 Antarmu

uka FrameOp

mengambil tori penyimp n memparsin mpilan data.

uka Frame Tam

pen file Data l data pada panan pada ng data pad

mpilan Data

(75)

fr a 3.3.6.4 F p in 3.3.6.5 F m p Fram rame open d ada pada file

Frame Tam

Pada fr

peramalan d nformasi me Frame Abou Gamb merupakan f program bes

me ini akan m data. Data p e MS Excel

mpilan Hasi

frame ini, sy alam bentuk engenai MS

Gambar

ut Box

Gam

bar 14 meru frame untuk serta dengan

muncul sete pada table m

yang di am

l Peramala

ystem memb k tabel. Sela SE dari hasi

r 27 Antarmuk

mbar 28 Antarm

upakan desa k memberik n versi prog

elah user me merupakan h mbil.

an

berikan info ain itu juga il peramalan

ka Frame Has

muka FrameA

ain frameab

an informas ran dan pem

emilih file M hasil parsing ormasi meng akan ditam n. sil Peramalan About Box

bout box, fr si mengenai mbuatnya.

MS Excel p g dari data y

(76)

3.3.7 Pengumpulan Data

Data yang digunakan adalah data sekunder yang didapatkan dari internet dan sumber sumber yang lain. Data yang diambil merupakan data dengan periode bulanan. Dengan menggunakan data ini, prediksi nilai kurs yang dihasilkan juga dalam periode bulan.

Berikut adalah sumber data yang digunakan: • www.bi.go.id

• www.inflationdata.com • www.federalreserve.com

(77)

59

BAB 4

IMPLEMENTASI dan HASIL

4.1. IMPLEMENTASI PROSES

Dengan mengacu pada analisis dan desain yang telah dijelaskan pada BAB 3, bab ini membahas implementasi analisis dan desain tersebut ke dalam sebuah program. Implementasi proses yang terdapat dalam program dilakukan sesuai dengan desain proses-proses yang telah dibuat.

4.1.1. Proses Pemutihan Deret Input Output

Pada desain dan proses, proses pemutihan Deret Input Output terdiri dari 2 proses di dalamnya, implementasi proses-proses tersebut adalah sebagai berikut :

a. Mencari Parameter AR dan MA untuk Model ARIMA(p,d,q) Deret Inflasi ( ) dan Deret Kurs ( )

Pada penggalan program, terlihat bahwa untuk mendapatkan parameter Autoregressif dilakukan dengan menggunakan bantuan matrix. Hal ini dikarenakan penulis menggunakan metode matrix untuk mendapatkan parameter-parameter Autoregressif tersebut.

double[] pembedaanPertama = new double[data.length - orde];

(78)

System.out.println("pembedaan I " + pembedaanPertama[i - orde]);

}

public double[] pembedaanOrde(double[] data, int orde) {

double[] pembedaanOrde = new

double[data.length];

for (int i = orde; i < data.length; i++) { double x = data[i] - data[i - 1]; pembedaanOrde[i] = x;

}

return pembedaanOrde; }

public double[] differencing(double[] data) { if (d == 1) {

return pembedaanPertama(data, 1); } else if (d == 0) {

return data; } else {

double[] pembedaan = data; double[] pembedaanOrde = data; for (int i = 0; i < d - 1; i++) {

pembedaan = pembedaanPertama(pembedaan,i + 1);

pembedaanOrde = pembedaanOrde(pembedaan,i + 1);

}

return pembedaanOrde; }

}

public Autoregresive(int ordeAR, double[] data) { this.data = data;

this.ordeAR = ordeAR;

this.setZ(); this.setY(); }

public void setZ() {

int pTemp = ordeAR - 1; int index1 = 0;

int index2;

Z = new double[data.length - ordeAR][ordeAR + 1];

for (int i = pTemp; i < data.length - 1; i++) { Z[index1][0] = 1;

int pTemp2 = pTemp;

(79)

public void setY() {

Y = new double[data.length - ordeAR]; int index = 0;

for (int i = ordeAR; i < data.length; i++) { Y[index] = data[i];

index++; }

}

public double[] getParameter() { double[][] Ztranspose =

Matrix.transposeMatrix(Z);

double[][] Ztranspose_Z =

Matrix.perkalianMatrix(Ztranspose, Z); double[] Ztranspose_Y =

Matrix.perkalianMatrix(Ztranspose, Y); double[][] Ztranspose_ZInvers = Matrix.inversMatrix(Ztranspose_Z);

parameterAR =

Matrix.perkalianMatrix(Ztranspose_ZInvers, Ztranspose_Y);

return parameterAR; }

Setelah mendapatkan parameter Autoregressif, proses berikutnya adalah mencari parameter-parameter Movingaverrage. Untuk mendapatkan parameter-parameter ini, digunakan juga parameter-parameter autoregressif yang telah didapatkan dari proses sebelumnya. Proses ini juga menggunakan hasil ramalan yang didapatkan dari proses autoregresif dan nilai error dari hasil ramalan tersebut. Setelah mendapatkan hasil ramalan dan error dari proses autoregresif, pencarian parameter MA dapat dilakukan. Pencarian parameter-parameter MA dilakukan secara iteratif untuk mendapatkan parameter yang paling minimal.

(80)

ramalanAR = new double[data.length - ordeAR]; error = new double[data.length - ordeAR]; for (int i = ordeAR; i < data.length; i++) { ramalanAR[i - ordeAR] = parameterAR[0] + parameterAR[1] * data[i - ordeAR];

}

return ramalanAR; }

public double[] getError() {

for (int i = ordeAR; i < data.length; i++) { error[i - ordeAR] = data[i] - ramalanAR[i - ordeAR];

}

return error; }

double[] errorT1 = new double[errorAR.length - 1]; double[] errorT2 = new double[errorAR.length - 1];

double SE[] = new double[100]; parameterMA = new double[q];

for (int i = 1; i < errorAR.length; i++) { errorT1[i - 1] = errorAR[i];

errorT2[i - 1] = errorAR[i - 1]; }

System.out.println("panjang eror = " + errorT1.length);

double SETerkecil = 99999; int indexMA1 = 0;

int indexMA2 = 0; int percobaan = 0;

System.out.println("panjang data = " + data.length);

for (int iterasi1 = 0; iterasi1 < 10; iterasi1++) {

parameterMA[0] = -2 + (iterasi1 * 0.4); for (int iterasi2 = 0; iterasi2 < 10; iterasi2++) {

double tempJumlah = 0; double temp = 0;

parameterMA[1] = -1 + (iterasi2 * 0.2); for (int i = 3; i < data.length; i++) { temp = parameterAR[0] +

(parameterAR[1] * data[i]) + (parameterAR[2] * data[i - 1]) -

(parameterMA[0] * errorT1[i - 3]) - (parameterMA[1] * errorT2[i - 3]);

tempJumlah += Math.pow(data[i] - temp,2);

}

SE[percobaan] = tempJumlah / (data.length - 2);

(81)

SETerkecil = SE[percobaan]; indexMA1 = iterasi1;

indexMA2 = iterasi2; }

temp = 0;

tempJumlah = 0; percobaan++; }

}

parameterMA[0] = -2 + (indexMA1 * 0.4); parameterMA[1] = -1 + (indexMA2 * 0.2); for (int i = 3; i < data.length; i++) { double temp = parameterAR[0] +

(parameterAR[1] * data[i]) + (parameterAR[2] * data[i - 1]) -

(parameterMA[0] * errorT1[i - 3]) - (parameterMA[1] * errorT2[i - 3]);

System.out.print("pembedaan1 ke-" + i + " = " + data[i]);

System.out.println(", ramalan" + i + " = " + temp);

}

b. Pemutihan Deret Input ( ) dan Deret Output ( )

Pemutihan deret input dilakukan untuk memperoleh white noise αt . untuk mencari white noise untuk deret input, harus di identifikasi dahulu model ARIMA untuk deret input. Proses ini dilakukan pada algoritma sebelumnya.

double[] alpha;

alpha = new double[pembedaan.length - getD()];

for (int i = getD(); i < (pembedaan.length); i++) {

System.out.println("PEMBEDAAN KE-" + i + " = " + pembedaan[i]);

System.out.println((i - 1) + " = " + pembedaan[i-1]);

alpha[i - getD()] = pembedaan[i] - (getParameterAR()[1] * pembedaan[i - 1]) -

(getParameterMA()[0] * alpha[i - 1]);

}

double[] betha;

betha = new double[pembedaan.length - getD()];

(82)

betha[i - getD()] = pembedaan[i] - (getParameterAR()[1] * pembedaan[i - 1]) -

(getParameterMA()[0] * betha[i - 1]);

}

Untuk pemutihan deret output juga sama dengan algoritma pemutihan deret input, hanya saja model ARIMA untuk model output disamakan dengan model pada deret input.

4.1.2. Penarikan Bobot Respons Impuls untuk Deret input ( ) dan

Deret Output ( )

Setelah mendapatkan deret input dan output yang diputihkan, penaksiran bobot impuls dilakukan dengan mengasumsikan deret input mempengaruhi perubahan deret output dalam jangka periode 12 bulan. Oleh karena itu, terdapat 13 bobot impuls yang harus dicari yaitu v0, v1, v2 … , v12. Pencarian bobot impuls dilakukan dengan mengalikan autokovarian dari white noise deret input (alpha) dan white noise deret output (betha) pada lag 0 sampai 12 dikali variansi betha bagi variansi alpha. Implementasi prosespenaksiran bobot impulse dalam program adalah sebagai berikut :

public void setMeanAlpha() { double tempJumlah = 0; int n = alpha.length;

for (int i = 0; i < alpha.length; i++) { if (alpha[i] == 0) {

n = n - 1; } else {

tempJumlah += alpha[i]; }

}

meanAlpha = tempJumlah / n;

System.out.println("mean alpha = " + meanAlpha + " n = " + n);

(83)

public void setMeanBetha() { double tempJumlah = 0; int n = betha.length;

for (int i = 0; i < betha.length; i++) { if (betha[i] == 0) {

n = n - 1; } else {

tempJumlah += betha[i]; }

}

meanBetha = tempJumlah / n;

System.out.println("mean betha = " + meanBetha); }

public void setCovarianceAlphaBetha() {

covarianceAlphaBetha = new double[orde + 1]; double tempJumlah = 0;

for (int i = 0; i <= orde; i++) { tempJumlah = 0;

for (int j = 0; j < alpha.length - i; j++) { tempJumlah += (alpha[j] - meanAlpha) * (betha[j + i] - meanBetha);

// System.out.println("alpha = " + alpha[j]); }

System.out.println("temp = " + tempJumlah); covarianceAlphaBetha[i] = tempJumlah / (alpha.length);

System.out.println("Covariance AB " + i + " = " + covarianceAlphaBetha[i]);

} }

public void setCovarianceAlpha() { double tempJumlah = 0;

int n = alpha.length;

for (int j = 0; j < alpha.length; j++) {

tempJumlah += (alpha[j] - meanAlpha) * (alpha[j] - meanAlpha);

}

covarianceAlpha = tempJumlah / alpha.length; System.out.println("variansi alpha = " + covarianceAlpha);

}

public void setCovarianceBetha() { double tempJumlah = 0;

int n = betha.length;

for (int j = 0; j < betha.length; j++) {

tempJumlah += (betha[j] - meanBetha) * (betha[j] - meanBetha);

}

(84)

}

public void setKorelasiSilangAlphaBetha() { korelasiSilang = new double[orde + 1]; for (int i = 0; i <= orde; i++) {

korelasiSilang[i] = covarianceAlphaBetha[i] / Math.sqrt(covarianceAlpha * covarianceBetha);

System.out.println("rAB = " + korelasiSilang[i]);

} }

public void setBobotImpulse() {

bobotImpulse = new double[orde + 1]; for (int i = 0; i <= orde; i++) {

bobotImpulse[i] = korelasiSilang[i] * Math.sqrt(covarianceBetha / covarianceAlpha); }

}

4.1.3. Penarikan Parameter Fungsi Transfer untuk Deret Input ( ) dan

Deret Output ( )

Pencarian parameter model ini dilakukan secara iteratif untuk mendapatkan nilai-nilai parameter yang tepat. Program ini menggunakan metode Marquardt untuk mendapatkan minimalisasi parameter-parameter model fungsi transfer. Seperti pada penggalan program diatas, terdapat beberapa parameter model antara lain d1,d1,w0,w1 dan w2. Dari penggalan program dapat dilihat bahwa bobot impuls memiliki peran penting dalam pencarian parameter model.

double d1, d2, w0, w1, w2; LMA lma = new LMA(

new TaksiranParameter(), new double[]{1, 1}, new double[][]{ // y x0 x1

{bobotImpulse[5], bobotImpulse[3], bobotImpulse[4]},

{bobotImpulse[6], bobotImpulse[4], bobotImpulse[5]}

(85)

lma.fit();

System.out.println("iterations: " + lma.iterationCount);

System.out.println(

"chi2: " + lma.chi2 + ",\n" +

"param0: " + lma.parameters[0] + ",\n" + "param1: " + lma.parameters[1]);

d1 = lma.parameters[0]; // MARQUARDT d2 = lma.parameters[1]; // MARQUARDT w0 = bobotImpulse[2];

w1 = d2 * bobotImpulse[2] + d2 * 0 - bobotImpulse[3];

w2 = d1 * bobotImpulse[3] + d2 * bobotImpulse[2] - bobotImpulse[4];

4.1.4. Pengamatan Deret Noise(N) untuk pengaruh Deret Input terhadap

Deret Output

Dengan menggunakan bobot impuls dari proses sebelumnya, pencarian deret noise antara deret input dan output dapat dilakukan. Pada proses ini nose untuk data pada waktu ke 1 sampai 12 adalah 0 karena terdapat asumsi bahwa deret input mempengaruhi deret output data jangka waktu 12 bulan.

noise = new double[betha.length - (bobotImpulse.length - 1)];

double noiseTemp = 0;

System.out.println("panjang petha = " + bobotImpulse.length);

for (int i = (bobotImpulse.length - 1); i < alpha.length; i++) {

noiseTemp = betha[i];

System.out.print(betha[i] + " ");

for (int j = 0; j < (bobotImpulse.length); j++) {

noiseTemp -= bobotImpulse[j] * alpha[i - j];

System.out.print("- (" + bobotImpulse[j] + " * " + alpha[i - j] + ")");

}

System.out.println("");

noise[i - (bobotImpulse.length - 1)] = noiseTemp;

(86)

4.1.5. Pencarian Parameter AR dan MA untuk Model ARIMA deret

Noise(N)

Berikut merupakan potongan program implementasi dari pencarian parameter AR dan MA untuk model ARIMA deret noise (N).

Autoregresive noiseAR = new Autoregresive(2, nt); double[] paramAR = noiseAR.getParameter();

double[] ramalanNoise = noiseAR.getRamalan(paramAR); double[] errorNoise = noiseAR.getError();

MovingAverrage noiseMA = new MovingAverrage(1, nt, ramalanNoise);

double[] paramMA = noiseMA.getParameterMA21(nt);

4.1.6. Pengamatan Deret Nilai Sisa Residual

Seperti dijelaskan sebelumnya, penghitungan deret nilai sisa residual digunakan untuk membantu mencari deret noise fungsi transfer (lihat blok diagram dan penjelasannya). Implementasi dari pengamatan deret nilai sisa residual adalah sebagai berikut :

double d1, d2, d3, d4;

double e0, e1, e2, e3, e4; double f1, f2, f3;

d1 = (-1 * delta[0]) - parameterAR[1];

d2 = (-1 * delta[1]) - parameterAR[2] + (delta[0] * parameterMA[0]);

Gambar

Gambar 1 Pemodelan Fungsi Transfer
Gambar 2 Tahapan Pembentukan Pemodelan Fungsi Transfer
Gambar 3 Tahapan Pembentukan Pemodelan Fungsi Transfer (lanjutan)
Gambar 4 Use Case Diagram
+7

Referensi

Dokumen terkait

(1-tailed) Laju.Inflasi.. Dapat disimpulkan bahwa ketiga faktor yaitu jumlah uang beredar, suku bunga bank dan kurs rupiah terhadap dollar mempengaruhi nilai laju inflasi. 2)

Analisis Pengaruh Nilai Tukar (Kurs) Dolar Amerika/Rupiah (US$/Rp), Tingkat Suku Bunga SBI, Inflasi, dan Jumlah Uang Beredar (M2) Terhadap Indeks Harga Saham Gabungan (IHSG) di

Rheince Sibarani : Pengaruh Tingkat Suku Bunga SBI dan Kurs Dollar Terhadap Jumlah Uang Beredar di Indonesia, 2006... UNIVERSITAS SUMATERA UTARA

Tujuan penelitian ini adalah untuk mengkaji pengaruh Jumlah Uang Beredar, Tingkat Suku Bunga SBI, Inflasi, Kurs, Produk Domestik Bruto, dan Suku Bunga Simpanan Luar Negeri pada

Gilang Rizky Dewanty 2013 dengan judul “Analisis Pengaruh Inflasi, Suku Bunga, Jumlah Uang Beredar, Kurs Nilai Tukar Dollar Amerika/ Rupiah, dan Harga Emas Dunia Terhadap

Variabel yang digunakan antara lain : produk domestik bruto (PDB), jumlah uang beredar dalam arti luas (M2), suku bunga sertifikat bank Indonesia (SBI), dan kurs rupiah

Tujuan penelitian ini adalah untuk mengkaji pengaruh Jumlah Uang Beredar, Tingkat Suku Bunga SBI, Inflasi, Kurs, Produk Domestik Bruto, dan Suku Bunga Simpanan Luar Negeri pada

Ini berarti variabel Inflasi di Indonesia dapat dijelaskan oleh Jumlah uang beredar, Kurs rupiah terhadap Dollar, Suku bunga dan PDB serta Krisis ekonomi sebesar 78,12 persen,