• Tidak ada hasil yang ditemukan

BAB 3 PERANCANGAN PROGRAM APLIKASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 PERANCANGAN PROGRAM APLIKASI"

Copied!
22
0
0

Teks penuh

(1)

44

PERANCANGAN PROGRAM APLIKASI

3.1 Analisis Masalah

Penelitian peramalan harga saham sudah banyak dilakukan, seperti Zulkarnain(2013) menggunakan ARIMA dan Kombinasi Main Chart + Ichimoku

Chart yang menghasilkan MAPE sebesar 4.14%. Pada penggunaan metode HMM

beberapa diantaranya adalah Hassan (2005) yang menggunakan kombinasi metode

Continous HMM. Penelitian tersebut menghasilkan peramalan dengan MAPE

sebesar 2.01% dan 1.92% dengan menggunakan gabungan metode HMM, ANN and GA (Hassan, Nath, Kirley, 2007).

Kemajuan teknologi baik dari perangkat keras (hardware) maupun perangkat lunak (software) sangat cepat. Dengan majunya teknologi maka proses pengolahan banyak data dapat dilakukan secara cepat, akurat, mudah dan efisien. Tentunya hal ini sangat bermanfaat untuk melakukan peramalan kejadian dimana peramalan membutuhkan data yang banyak dan memiliki dituntut menghasilkan peramalan yang akurat. Salah satu peramalan yang sering digunakan adalah peramalan harga saham.

Sulit untuk meramalkan harga saham dikarenakan polanya yang tidak linier.Dengan menggunakan indikator-indikator teknikal pola pergerakan harga saham dapat terlihat diwaktu yang tepat. Ada ratusan indikator teknikal yang tersedia, tetapi tidak semua indikator berguna. Misalnya, beberapa indikator memberikan informasi yang cocok untuk saham A tetapi tidak cocok digunakan untuk menjelaskan informasi untuk saham B.

(2)

3.2 Usulan Pemecahan Masalah

Agar peramalan harga saham memiliki tingkat akurasi yang tinggi maka dibutuhkan data yang banyak dengan indikator-indikator teknikal yang tepat. Untuk itu dibutuhkan sebuah aplikasi program yang bisa memberikan informasi peramalan harga saham dengan memilih indikator-indikator saham yang tepat guna memberikan hasil peramalan dengan tingkat akurasi yang tinggi. Metode Hidden Markov Model (HMM) merupakan salah satu solusi untuk peramalan harga saham dengan tingkat akurasi yang tinggi, karena metode ini sering digunakan untuk menganalisis dan memprediksi fenomena data time series. Metode tersebut dapat disertai dengan metode Principal Component Analysis (PCA) untuk mencari indikator saham yang tepat guna menyediakan informasi yang tepat untuk harga saham yang akan diramal.

3.3 Desain Penelitian

Berikut tahapan yang akan dilakukan dalam penelitian ini: a. Identifikasi masalah

b. Studi literatur

c. Pemilihan variabel penelitian yang akan digunakan d. Pengumpulan data e. Perancangan progam 1. Analisa kebutuhan 2. Desain Sistem 3. Penulisan Program 4. Pengujian Program 5. Penerapan Program f. Penarikan kesimpulan

(3)

Tahapan-tahapan yang akan dilakukan dalam penelitian ini dapat dilihat dari gambar berikut :

Gambar 3.1 Desain Penelitian

Kesimpulan IdentifikasiMasalah :

• Data dalam jumlah banyak

• Indikator dalam jumlah banyak

• Peramalan yang akurat

Pemilihan variabel penelitian

Data Penelitian : • Pengumpulan data • Rekap data Perancangan Program Studi literatur Analisa Kebutuhan Desain Sistem Penulisan Program Pengujian Program Penerapan Program

(4)

3.4 Perancangan Program

Program ini diharapkan digunakan dapat meramalkan harga saham untuk

open, high, low dan close price, dapat memberikan nilai ketepatan peramalan, dan

menampilkan grafik pergerakan saham. Untuk pengembangan arsitektur dari program, maka program dibuat berdasarkan Use Case Diagram, Activity Diagram,

Sequence Diagram, Class Diagram.

3.4.1. Use Case Diagram

Configure Dataset

Configure Likelihood and Dataset Evaluate

Forecast Import File

<< depends on >>

<< depends on >>

<< depends on >>

(5)

3.4.2. Activity Diagram

3.4.2.1. Activity Diagram Import Data

Push Import Display Browse File

DIalog

Choose File

Push Cancel Push Ok

Show Data

Display Main Form

User System

Gambar 3.3 Activity Diagram Import Data

3.4.2.2. Activity Diagram ConfigureDataset

Push Advance Display Advance

Panel

Choose Default Choose Custom Display Dataset Setting

Display Main Form

User System

Configure Dataset

Inval id Confi gure

Disable Confirm button

Val id Confi gure

Enabled Confirm Button Push Confirm

Button

(6)

3.4.2.3. Activity Diagram Forecast

Push Forecast Calculate Forecast

Display Result

User System

Gambar 3.5 Activity Diagram Forecast

3.4.2.4. Activity Diagram Configure Likelihood Tolerance dan Evaluate Dataset

Calculate Forecast Display Result User System Choose Likelihood Tolerance Choose Amount of Dataset Evaluate

(7)

3.4.3. Sequence Diagram

3.4.3.1. Sequence Diagram Import Data

User form1 Click Import btnImport_Click() HistoricalDownloader data table HistoricalStock DownloadData() retval list data populate data

populateData()

display data

Gambar 3.7 Sequence Diagram Import File

3.4.3.2. Sequence Diagram Configure Dataset

User form1

Click Advance

btnAdvance_Click()

btnConfirm_Click() Show Panel Advance

Configure Dataset

Option OptionForm

Hide Panel Advance

opt

Click Option

btnOption_Click()

showDialog()

OptionForm()

Send Option Data Configure Option

numericTrainingEnd_ValueChanged()

numericTestingStart_ValueChanged()

Get Option Data

btnOk_Click() Click Ok Close Dialog opt opt Click Cancel Close Dialog btnCancel_Click() Hide Panel Advance

Hide Panel Advance

(8)

3.4.3.3. Sequence Diagram Forecast User form1 Click Forecast btnForecast_Click() makeIndicator() populateIndicator() calculatePCA() Component Properties Result PCA ComponentProperties() flag() showPCA() calculateHMM() Data Obs Extract HMM Properties Extract() Send Data Matrix

Send Data HMM HMMProperties() showHMM() populateTesting() obsMakers() forecasting() mainChart() Display Result

Gambar 3.9 Sequence Diagram Forecast

3.4.3.4. Sequence Diagram Configure Likelihood Tolerance dan Evaluate Dataset

User form1

Choose Likelihood Tolerance

comboboxTolerance_SelectedIndexChanged()

calculateSummary()

mainChart() Display Result

Choose Amount Dataset Evaluate

Display Result

calculateSummary()

mainChart()

comboboxEva_SelectedIndexChanged()

Gambar 3.10 Sequence Diagram Configure Likelihood Tolerance dan Dataset Evaluate

(9)

3.4.4. Class Diagram 1 1 1 1 4 4 15 0..* 0..* 0..*

(10)

3.5 Metodologi Penelitian 3.5.1. Sumber Data

Data yang digunakan pada bagian evaluasi penelitian ini adalah data sekunder yaitu historis dari data harga harian saham, berupa open, high, low, close price dan

volume yang diperoleh dari finance.yahoo.com.

3.5.2. Variabel Penelitian

Pada penelitian ini menggunakan variable penelitian harga harian saham, berupa open, high, low, close price dan volume dan variabel teknikal indikator. Variabel teknikal indikator tersebut meliputi Accumulation Distribution Line (AD),

Positive Volume Index (PVI), Negative Volume Index (NVI), On Balance Volume (OBV), Price and Volume Trend Index ( PVT), Rate of Change dengan 7-periode (ROC), Weighted Close (WC), 14-days William %R (William), 20-periode Chaikin Money Flow (CMF), 14-days Average True Range (ATR), 14-days Vortex Index (+VI dan –VI), 20-days Commodity Channel Index (CCI), Ulcer Index (Ulcer), dan ADX (Average Directional Movement).

3.5.3. Teknik Pengumpulan Data

Teknik Pengumpulan data dilakukan dengan metode non-probability

sampling, yaitu mengambil data dengan mengumpulkan data harian harga saham

berupa open, high, low, close price dan volume dari saham. Data tersebut diambil dari 11 saham dengan periode yang berbeda-beda, yaitu

1. S&P500 periode dari 4 Januari 2010 hingga 7 Juni 2013. 2. Electronic Art Inc periode 26 Maret 1990 hingga 19 Juli 2013. 3. Apple periode 8 September 2008 hingga 19 Juli 2013.

(11)

4. Facebook periode 18 Mei 2012 hingga 19 Juli 2013. 5. Google periode 19 Agustus 2010 hingga 19 Juli 2013. 6. IBM periode 1 April 2010 hingga 19 Juli 2013.

7. NASDAQ Composite periode 7 Febuari 2011 hingga 19 Juli 2013. 8. Jakarta Composite periode 21 Juli 2000 hingga 19 Juli 2013. 9. Microsoft periode 15 Maret 2010 hingga 19 Juli 2013. 10. New York Times periode 16 Juli 2003 hingga 19 Juli 2013. 11. Yahoo Inc periode 21 Juli 2008 hingga 19 Juli 2013.

3.5.4. Teknik Pengolahan Data

Pengolahan data akan dilakukan dengan cara sebagai berikut :

1. Proses peramalan dimulai dari pengumpulan data harian harga saham berupa

open, high, low, close price dan volume. Data open/high/low/close disebut

variabel interest disimbolkan dengan huruf V.

2. Indikator-indikator teknikal akan diolah menggunakan data harian harga saham, indikator-indikator teknikal ini meliputi Accumulation Distribution

Line (AD), Positive Volume Index (PVI), Negative Volume Index (NVI), On Balance Volume (OBV), Price and Volume Trend Index (PVT), Rate of Change dengan 7-periode (ROC), Weighted Close (WC), 14-days William %R (William), 20-periode Chaikin Money Flow (CMF), 14-days Average True Range (ATR), 14-days Vortex Index (+VI dan –VI), 20-days Commodity Channel Index (CCI), Ulcer Index (Ulcer), ADX.

(12)

dimana,

= Nilai indikator

= Rata-rata dari indikator teknikal = Standar devisiasi dari indikator teknikal

4. Indikator-indikator teknikal akan dipilih mengunakan Principal Component

Analysis (PCA) sehingga mendapatkan P indikator yang paling efektif

menggambarkan pola pergerakkan data harga saham.

5. Data harga saham beserta indikator yang telah diseleksi akan dibagi menjadi tiga bagian, yaitu dataset dan indikator training, dataset dan indikator test, dan dataset dan indikator evaluate.

6. Proses HMM dilakukan dengan menggunakan 3 state yaitu state increase dimana harga variabel interest pada t+1 mengalami kenaikan dari harga variabel interest pada saat t, state decrease dimana harga variabel interest pada t+1 mengalami penurunan dari harga variabel interest pada saat t, dan

state no change dimana harga variabel interest pada t+1 sama dengan harga

variabel interest pada saat t.

7. Data untuk membentuk transition matrix dan untuk membuat observation

squence diolah dengan cara mensimbolkan data, yaitu :

a. Vt – Vt-1> 0 bearti state increase disimbolkan dengan “I”

b. Vt – Vt-1< 0 bearti state decrease disimbolkan dengan “D”

c. Vt – Vt-1= 0 bearti state no change disimbolkan dengan “S”

8. Dataset training akan diolah untuk menentukan transition matrix pada proses

inisialisasi HMM sesuai dengan variabel interest dan indikator training akan diolah menjadi training observation squence.

(13)

9. Inisialisasi HMM dilakukan dengan parameter transition matrix: A(3x3) yang

telah diolah dari dataset training, untuk nilai dari parameter observation

matrix: B(3xM) dan prior probability:π(3x1)diambil secara random. HMM

dilambangkan dengan model λ=(A, B, π).

10. HMM akan diolah menggunakan algoritma Baum-Welch menggunakan data

training observation squence sehingga model λ= (A, B, π) akan memiliki

parameter yang cocok dengan keadaan dataset training, yang akan disebut sebagai trained HMM.

11. Dataset test dan dataset evaluate diolah untuk mendapatkan likelihood dari

tiap t menggunakan menggunakan algoritma forward dengan trained HMM dan data observation squence diolah dari indikator pada saat t.

12. Peramalan dilakukan dengan menggunakan rumus 2.33.

13.

Hasil Peramalan akan dievaluasi dengan cara menghitung Percentage Error (PE) dan Mean Absolute Percentage Error (MAPE).

3.6 Perancangan Layar 3.6.1. Rancangan Menu Utama

Menu yang terdapat pada Program ‘One Day Ahead” ditampilkan pada tabel 3.1. Dijelaskan juga fungsi tiap menu yang ditampilkan.

Tabel 3.1 Rancangan Menu Program

Menu fungsi

Menu ‘File’ Membuka layar file

Submenu ‘File →Import’ Untuk import data file (*.csv, *.xls, *.xlsx) Submenu ‘File →Exit’ Untuk keluar dari program

(14)

Menu Tujuan

Menu ‘Help’ Membuka layar help

Submenu ‘Help →Show Help’ Untuk membuka layar help Submenu ‘Help →Option’ Untuk membuka layar option

Submenu ‘Help →About us’ Untuk membuka layar profile pembuat

3.6.2. Rancangan Layar Utama

Pada rancangan layar utama program ‘One Day Ahead’ user dapat memilih ‘File’ dan ‘Help’ pada menu utama program dan terdapat juga Worktab dan

Progressbar (Hidden). User dapat memilih file data yang akan dijadikan dataset

untuk proses peramalan atau keluar dari program melalui menu ‘File’. Menu ‘Help’dapat diakses oleh user untuk pengaturan dan penjelasan program.

ProgressBar akan tampil apabila program sudah memiliki dataset yang valid, apabila

program belum memiliki dataset yang valid maka ProgressBar akan tetap tidak terlihat oleh user dan menampilkan pesan bahwa file data tidak valid.

Gambar 3.12 Rancangan Layar Utama

Pada menu ‘File’, user dapat memilih submenu Import dan Exit. Submenu Import akan menampilkan layar browse file untuk user memilih file data, submenu Import

(15)

dapat diakses dengan memilih submenu atau menekan tombol Alt + I. Untuk menutup program, user dapat memilih submenu Exit atau menekan tombol Alt + F4.

Gambar 3.13 Rancangan Layar Menu File Ditekan

Jika SubMenu Import ditekan tampil layar browse file untuk user memilih fil

edata dengan format *.csv, *.xls atau *.xlsxdari harddisk ataupun media

penyimpanan lainnya seperti Flashdisk, Memory Card atau media lain yang mendukung penyimpanan data berformat *.csv, *.xls atau *.xlsx. Setelah berhasil

di-import menjadi dataset ke program maka Worktab dan StatusBar akan terlihat.

Menu ‘Help’ mempunyai Submenu Show Help dengan tombol shortcut Ctrl + H, Option dengan tombol shortcutShift + O dan Aboutdengan tombol shortcut Ctrl + U. Submenu Show Help berfungsi untuk menampilkan petunjuk bagi user untuk menggunakan program. Submenu Option berfungsi mengatur perhitungan PCA dan banyak angka dibelakang koma untuk setiap nilai yang diolah oleh program. Submenu About berfungsi untuk menampilkan profile pembuat program.

(16)

Gambar 3.14 Rancangan Layar Menu Help Ditekan

3.6.3. Perancangan Layar Data

Layar data berada di tab pertama pada WorkTab. Pada tab layar data terdapat 3 panel, yaitu panel Main berisikan tombol untuk import file, tombol untuk menampilkan pengaturan dataset, dan tombol untuk memulai proses peramalan, panel table data untuk menampilkan data date, open price, high price, low price,

close price dan volume dari dataset, dan panel table eksplorasi data untuk

menampilkan means, variance, maximum, minimum value dari dataset pada table data.

Pada panel main terdapat tombol Advance akan menampilkan panel baru yang berfungsi untuk mengatur jumlah dataset untuk training dan testing. Tombol

Forecast yang berfungsi untuk memulai proses peramalan. Setelah proses peramalan

(17)

Gambar 3.15 Perancangan Layar Tab Data

3.6.4. Perancangan Layar Result

Layar Result merupakan tab ketiga pada WorkTab. Layar Result terdiri dari 5

tab yaitu tab Summary, Open Price, High Price, Low Price dan Close Price. Setelah

pengolahan data selesai tab Result dapat diakses.

(18)

Pada Gambar 3.16 menampilkan rancangan layar tab Summary yang berisikan 3 bagian yaitu

1. Panel yang berfungsi untuk menampilkan tanggal hari terakhir dari data,

combobox yang berfungsi untuk mengatur likelihood tolerance dan jumlah dataset evaluate.

2. Table Summary Forecasting berisikan data hasil peramalan dan MAPE dari

peramalan satu hari kedepan harga open, high, low, dan close, dan informasi kategori MAPE.

3. Chart berfungsi untuk menampilkan plot dengan nilai aktual dan nilai

peramalan dari harga open, high, low, dan close pada dataset evaluate.

Gambar 3.17 Perancangan Layar Tab Open pada Tab Result

Pada Gambar 3.17 ditampilkan tab Open, untuk tab High, Low, dan Close memiliki bagian yang sama seperti tab Open yang berisikan 3 bagian yaitu

1. Panel yang berfungsi untuk menampilkan nilai peramalan untuk satu hari

(19)

2. Table Forecasting berisikan data aktual, hasil peramalan, likelihood, dan percentage error dari dataset evaluate,

3. Chart berfungsi untuk menampilkan plot dengan nilai aktual dan nilai

peramalan.

3.6.5. Perancangan Layar Statistic

Tab terakhir pada WorkTab adalah layar statistic. Layar statistic terdiri dari 3 tab yaitu tab Indicator, PCA, dan HMM. Setelah pengolahan data selesai tab statistic

dapat diakses.

Pada tab Indicator ditampilkan Table Indicator yang berisikan nilai indikator-indikator yang telah diolah dari dataset.

Gambar 3.18 Perancangan Layar Tab Indicator pada Tab Result

Tab PCA berisikan data hasil perhitungan PCA yaitu label Result PCA

berfungsi untuk menampilkan secara deskriptif hasil pengolahan PCA, nilai

(20)

PCA berisikan standard deviation, proportions of variance dan cummulative

proportions.

Gambar 3.19 Perancangan Layar Tab PCA pada Tab Result

Gambar 3.20 Perancangan Layar Tab HMM pada Tab Result

Tab HMM dibagi menjadi 4 tab yaitu tab Open, High, Low, dan Close. Tiap tab berisikan 2 panel yaitu panel summary Initial HMM menampilkan model awal

(21)

dari HMM dan panel summary trained HMM menampilkan model HMM yang sudah dilatih melalui algoritma BaumWelchdari variabel yang dipilih.

3.6.6. Perancangan Layar Help

Gambar 3.21 Perancangan Layar Help

Gambar 3.21 menampilkan perancangan layar submenu Help, layar Help berisikan informasi penggunaan program ‘One Day Ahead’.

3.6.7. Perancangan Layar Option

Gambar 3.22 Perancangan Layar Option

Gambar 3.22 menampilkan perancangan layar submenu Option, layar Option berisikan combobox untuk mengatur proses PCA dan angka dibelakang koma.

(22)

3.6.8. Perancangan Layar About

Gambar 3.23 Perancangan Layar About

Gambar 3.23 menampilkan perancangan layar submenu About, layar About berisikan informasi program ‘One Day Ahead’, logo program dan profile dari pembuat program.

Gambar

Gambar 3.1 Desain Penelitian
Gambar 3.2 Use Case Diagram
Gambar 3.3 Activity Diagram Import Data
Gambar 3.5 Activity Diagram Forecast
+7

Referensi

Dokumen terkait

Tingkat pengembalian Pembiayaan Ijarah di BMT Dana Mentari Muhammadiyah Pasar Pon belum bisa dikatakan baik atau dikatakan kurang baik dikarenakan rasio

Kategori kurang efektif sebanyak 20 responden (23%), hal ini disebabkan di dalam pemahaman melanggar HAM memiliki faktor yang mempengaruhi mereka bertindak kejahatan

Pada ruang pendidikan memperlihatkan lantai 1 yaitu lobby yang langsung menuju ruang pengelola, pada lantai lantai 2 menunjukan ruang tunggu untuk ruang pengajar, pada

Sumangga kang rama angkat, nabi Yakub jengkar deui, muntang ka tak-tak Yahoda, prok tepung jeung ratu Mesir, ku Yusup katingali,. bareng areng lungsur, sarta rék awéh salam,

Konversi minyak jelantah sawit menjadi bahan bakar setara diesel melalui reaksi dekarboksilasi dengan pretreatment saponifikasi menggunakan Kalsium Hidroksida telah

Penelitian ini dilakukan penulis dengan maksud untuk memperoleh data dan informasi yang berkaitan dengan pengaruh profitabilitas, ukuran perusahaan dan ukuran KAP

Bunganya lebar dan saling terpisah, sepal (helai kelopak bunganya) berwarna hijau terang yang mana ukuran sisi atasnya kurang lebih 18 x 6 mm, ujungnya melingkar ke belakang,

Namun secara umum dapat dijelaskan bahwa Ordo Siluriformes merupakan kelompok ikan yang memiliki bentuk tubuh kombinasi, berkumis atau bersungut, memiliki sirip