PERANCANGAN PERANGKAT LUNAK PREDIKSI PERGERAKAN HARGA SAHAM DENGAN METODE RELATIVE STRENGTH INDEX (RSI)
SKRIPSI
SHAFIRA GUSLINA 051401060
PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2009
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
2
PERANCANGAN PERANGKAT LUNAK PREDIKSI PERGERAKAN HARGA SAHAM DENGAN METODE RELATIVE STRENGTH INDEX (RSI)
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer
SHAFIRA GUSLINA 051401060
PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2009
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
3
PERSETUJUAN
Judul
Kategori Nama Nomor Induk Mahasiswa Program Studi Departemen Fakultas
: PERANCANGAN PERANGKAT LUNAK PREDIKSI PERGERAKAN HARGA SAHAM DENGAN METODE RELATIVE STRENGTH INDEX (RSI) : SKRIPSI : SHAFIRA GUSLINA : 051401060 : SARJANA (S1) ILMU KOMPUTER : ILMU KOMPUTER : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, 15 Juli 2009
Komisi Pembimbing
:
Pembimbing 2
Pembimbing 1
Drs. James Piter Marbun, M.Kom NIP. 131 639 804
Prof. Dr. Muhammad Zarlis NIP. 131 570 434
Diketahui/Disetujui oleh Departemen Ilmu Komputer FMIPA USU Ketua,
Prof. Dr. Muhammad Zarlis NIP 131 570 434
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
4
PERNYATAAN
PERANCANGAN PERANGKAT LUNAK PREDIKSI PERGERAKAN HARGA SAHAM DENGAN METODE RELATIVE STRENGTH INDEX (RSI)
SKRIPSI
Penulis mengakui bahwa skripsi ini adalah hasil karya penulis sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 15 Juli 2009
SHAFIRA GUSLINA 051401060
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
5
PENGHARGAAN
Puji dan syukur penulis panjatkan ke hadirat Allah SWT atas berkat, rahmat dan karunia yang diberikan-Nya sehingga penulis dapat menyelesaikan skripsi ini dalam waktu yang telah ditetapkan. Shalawat dan Salam penulis hadiahkan kepada Nabi Besar Muhammad SAW. Ucapan terima kasih yang sebesar-besarnya penulis sampaikan kepada Bapak Prof. Dr. Muhammad Zarlis sebagai Dosen Pembimbing I dan Bapak Drs. James Piter Marbun, M.Kom sebagai Dosen Pembimbing II atas bimbingan, saran, masukan kepada penulis untuk menyempurnakan kajian ini. Panduan ringkas dan padat dan profesional telah diberikan kepada penulis agar penulis dapat menyelesaikan tugas ini. Selanjutnya kepada para Dosen Penguji Bapak Syahril Efendi, S.Si, MIT dan Bapak Drs. Muhammad Firdaus, M.Si atas saran dan kritikan yang sangat berguna bagi penulis. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi Ilmu Komputer, Bapak Prof. Dr. Muhammad Zarlis dan Bapak Syariol Sitorus, S.Si., MIT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Program Studi Ilmu Komputer FMIPA USU, pegawai-pegawai di Program Studi Ilmu Komputer FMIPA USU, teman-teman sekelas KomB, sahabat-sahabat terbaik, Wenty, Cahaya, Weny serta kekasih hati M. Abduh Aswin, S.Kom, terima kasih atas motivasi dan perhatiannya. Penulis menyadari bahwa skripsi ini masih jauh dari sempurna, karena kesempurnaan hanya milik Allah dan kekurangan adalah milik penulis. Oleh karena itu, penulis menerima saran dan kritik yang bersifat membangun demi penyempurnaan skripsi ini. Semoga dapat bermanfaat bagi kita semuanya.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
6
ABSTRAK
Dewasa ini investasi tidak lagi didominasi oleh investasi konvensional seperti tabungan, dan lain-lain tetapi sudah dimulai dengan investasi saham yang lebih besar menghasilkan keuntungan. Hal ini yang mendasari pembuatan dari skripsi ini. Kajian ini bertujuan untuk membangun suatu perangkat lunak yang berfungsi untuk memprediksi pergerakan harga saham dengan menggunakan salah satu indikator/metode dalam analisis teknikal saham, yaitu metode Relative Strength Index (RSI). Perangkat lunak ini dibangun menggunakan bahasa pemrograman PHP 5 dan database server MySQL 5. Metodologi pengembangan perangkat lunak ini menggunakan metodologi berorientasi objek dengan tools UML (Unified Modelling Language). Hasil dari penelitian ini berupa perangkat lunak yang dapat memudahkan kalangan umum maupun profesional untuk melakukan pengambilan keputusan dalam perdagangan saham sehingga dapat meminimalisasi kerugian yang timbul akibat keterbatasan pengetahuan tentang analisis pergerakan harga saham.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
7
STOCK PRICE TREND PREDICTION SOFTWARE DESIGN USING RELATIVE STRENGTH INDEX (RSI) METHOD
ABSTRACT
Nowadays investment is not only dominated by conventional ways such as bank’s deposit, etc. but it has started with investing stocks that brought more promising profits. That’s where the ideas of this thesis came from. The purpose of this study is to develop a software that had ability to calculate and give the prediction about stock’s price trend using one of the most popular indicator in stock’s technical analysis which called Relative Strength Index (RSI) method. The software was developed by PHP 5 programming language and MySQL 5 as it’s database server. The analysis and design of the software development process was based on object oriented methodology using UML (Unified Modelling Language) as it’s tools to build the blueprint of the system. The result of this thesis is a software that can help public or professional people to make a right decision in stock marketing so it can minimize loss that caused by knowledge limitation about stock’s price trend analysis.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
8
DAFTAR ISI
Halaman Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar Bab 1
Bab 2
Pendahuluan 1.1 Latar Belakang 1.2 Rumusan Masalah 1.3 Batasan Masalah 1.4 Tujuan Penelitian 1.5 Manfaat Penelitian 1.6 Metodologi Penelitian 1.7 Sistematika Penulisan Landasan Teori 2.1 Saham 2.1.1 Jenis-Jenis Saham 2.2 Analisis Fundamental 2.3 Analisis Teknikal 2.3.1 Prinsip Analisis Teknikal 2.3.2 Jenis-Jenis Harga 2.3.3 Trend Pasar 2.3.3.1 Uptrend 2.3.3.2 Downtrend 2.3.3.3 Sideways 2.3.4 Indikator Teknikal 2.3.4.1 Oscillator 2.3.5 Exponential Moving Average 2.3.6 Relative Strength Index 2.3.6.1 Rumus Relative Strength Index 2.3.6.2 Periode yang Biasa Digunakan 2.4 Konsep Pemodelan Objek 2.4.1 Objek dan Kelas 2.4.2 Atribut dan Operasi 2.4.3 Hubungan (Relationship) 2.5 UML (Unified Modelling Language)
ii iii iv v vi vii x xi
1 2 3 3 4 4 5
7 8 9 10 10 11 12 12 13 13 13 14 17 17 18 20 21 21 22 23 23
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
9
2.5.1 Analisis Persyaratan dengan UML 2.5.2 Desain dengan UML 2.5.3 Teknik Analisis dan Desain Sistem dengan UML 2.5.4 Diagram-Diagram dalam UML 2.5.4.1 Use Case Diagram 2.5.4.2 Activity Diagram 2.5.4.3 Class Diagram 2.5.4.4 Sequence Diagram 2.5.4.5 Package Diagram 2.5.4.6 Deployment Diagram Bab 3
Analisis dan Perancangan 3.1 Analisis 3.1.1 Analisis Penggunaan Metode Relative Strength Index (RSI) 3.1.2 Deskripsi Umum Perangkat Lunak 3.1.3 Analisis Kebutuhan Fungsional 3.1.4 Tujuan Pengembangan Perangkat Lunak 3.1.5 Analisis Kebutuhan Data 3.1.5.1 Data Masukan 3.1.5.2 Data Keluaran 3.1.6 Analisis Batasan Perangkat Lunak 3.1.7 Pemodelan Use Case 3.1.7.1 Diagram Use Case 3.1.7.2 Definisi Aktor 3.1.7.3 Definisi Use Case 3.1.7.4 Skenario Use Case 3.1.7.4.1 Skenario Use Case Melihat Informasi IHSG 3.1.7.4.2 Skenario Use Case Melihat Dashboard IHSG Harian 3.1.7.4.3 Skenario Use Case Melihat Informasi Historis IHSG 3.1.7.4.4 Skenario Use Case Melihat Informasi Saham 3.1.7.4.5 Skenario Use Case Melihat Dashboard Saham Harian 3.1.7.4.6 Skenario Use Case Melihat Informasi Historis Saham 3.1.7.4.7 Skenario Use Case Melakukan Analisis Teknikal Menggunakan RSI 3.1.7.4.8 Skenario Use Case Mengunduh Data IHSG setiap 15 menit 3.1.7.4.9 Skenario Use Case Mengunduh Data Historis IHSG 3.1.7.4.10 Skenario Use Case Mengunduh Data Saham setiap 30 menit 3.1.7.4.11 Skenario Use Case Mengunduh Data Historis Saham Manual
24 24 25 26 26 29 32 36 37 37
39 39 40 40 41 42 42 42 43 44 44 46 46 49 49 50 52 53 54 55 56 58 60 61 63
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
10
3.2 Perancangan 3.2.1 Perancangan Kelas 3.2.2 Perancangan Antarmuka 3.2.2.1 Navigasi Antarhalaman 3.2.2.2 Perancangan Dialog Halaman 3.2.2.2.1 Rancangan Halaman Utama 3.2.2.2.2 Rancangan Halaman Dashboard IHSG 3.2.2.2.3 Rancangan Halaman Historis IHSG 3.2.2.2.4 Rancangan Halaman Daftar Saham 3.2.2.2.5 Rancangan Halaman Dashboard Saham 3.2.2.2.6 Rancangan Halaman Historis Saham 3.2.2.2.7 Rancangan Halaman Analisis Teknikal RSI 3.2.3 Perancangan Logika Data Bab 4
Bab 5
65 65 74 74 76 77 78 79 79 80 81 82 84
Implementasi 4.1 Implementasi 4.1.1 Lingkungan Implementasi 4.1.2 Perangkat Keras 4.1.3 Perangkat Lunak 4.1.4 Implementasi Antarmuka 4.1.4.1 Halaman Utama Aplikasi 4.1.4.2 Halaman Dashboard IHSG 4.1.4.3 Halaman Historis IHSG 4.1.4.4 Halaman Daftar Saham 4.1.4.5 Halaman Dashboard Saham 4.1.4.6 Halaman Historis Saham 4.1.4.7 Halaman Analisis Teknikal RSI 4.1.4.8 Halaman Hasil Analisis RSI 4.1.5 Implementasi Perancangan Logika Data
88 88 88 89 89 89 90 92 93 94 95 97 97 100
Penutup 5.1 Kesimpulan 5.2 Saran
105 105
Daftar Pustaka Lampiran A: Contoh Penghitungan Dengan RSI Lampiran B: Listing Program
106 108 111
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
11
DAFTAR TABEL
Halaman Tabel 2.1 Tabel 3.1 Tabel 3.2 Tabel 3.3
Multiplisitas Aktor pada Model Use Case SAFIRA Definisi Use Case perangkat lunak SAFIRA Relasi Logika antartabel pada ERD
33 46 47 87
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
12
DAFTAR GAMBAR
Halaman Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 2.7 Gambar 2.8 Gambar 2.9 Gambar 2.10 Gambar 2.11 Gambar 2.12 Gambar 2.13 Gambar 2.14 Gambar 2.15 Gambar 2.16 Gambar 2.17 Gambar 2.18 Gambar 2.19 Gambar 2.20 Gambar 2.21 Gambar 2.22 Gambar 2.23 Gambar 2.24 Gambar 2.25 Gambar 2.26 Gambar 2.27 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5
Kelas dan Objek Atribut dan Nilai Operasi Aktor Use Case Hubungan Asosiasi Hubungan Cakupan Hubungan Perluasan Hubungan Generalisasi Simbol Awal Activity Simbol Akhir Activity Action State Activity State Transisi (Transition) Percabangan (Branching) Forking dan Joining Kelas, Atribut dan Operasi Hubungan Asosiasi Hubungan Agregasi Hubungan Komposisi Hubungan Generalisasi Hubungan Realisasi Constraint dan Notes Sequence Diagram Package Diagram Simpul-Simpul pada Deployment Diagram Hubungan Antarsimpul Use Case Diagram SAFIRA Activity Diagram untuk Use Case Melihat Informasi IHSG Activity Diagram untuk Use Case Melihat Dashboard IHSG Harian Activity Diagram untuk Use Case Melihat Informasi Historis IHSG Activity Diagram untuk Use Case Melihat Informasi
22 22 23 26 27 27 28 28 28 29 29 29 30 30 31 31 32 33 34 34 34 35 35 36 37 38 38 45 50 51 52
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
13
Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 3.9 Gambar 3.10 Gambar 3.11 Gambar 3.12 Gambar 3.13 Gambar 3.14 Gambar 3.15 Gambar 3.16 Gambar 3.17 Gambar 3.18 Gambar 3.19 Gambar 3.20 Gambar 3.21 Gambar 3.22 Gambar 3.23 Gambar 3.24 Gambar 3.25 Gambar 3.26 Gambar 3.27 Gambar 3.28 Gambar 3.29 Gambar 3.30 Gambar 4.1 Gambar 4.2 Gambar 4.3 Gambar 4.4 Gambar 4.5 Gambar 4.6 Gambar 4.7 Gambar 4.8 Gambar 4.9 Gambar 4.10
Saham Activity Diagram untuk Use Case Melihat Dashboard Saham Harian Activity Diagram untuk Use Case Melihat Informasi Historis Saham Activity Diagram untuk Use Case Melakukan Analisis Teknikal Menggunakan RSI Activity Diagram untuk Use Case Mengunduh Data IHSG setiap 15 menit Activity Diagram untuk Use Case Mengunduh Data Historis IHSG Activity Diagram untuk Use Case Mengunduh Data Saham setiap 30 menit Activity Diagram untuk Use Case Mengunduh Data Historis Saham Manual HTTP Request diperlihatkan sebagai suatu kejadian inisialisasi antara client dan server Interaksi antara lapisan presentasi, bisnis, dan data Web page output dari server ke client Penerapan pola MVC Struktur Class Diagram dasar Struktur Class Diagram yang sudah disempurnakan Pemisahan Class Diagram untuk level Framework dan Aplikasi lengkap dengan atribut dan operasinya Statechart diagram memperlihatkan navigasi dari aplikasi Layout yang konsisten digunakan untuk setiap halaman Rancangan Halaman Utama Aplikasi Rancangan Halaman Dashboard IHSG Rancangan Halaman Historis IHSG Rancangan Halaman Daftar Saham Rancangan Halaman Dashboard Saham Rancangan Halaman Historis Saham Rancangan Halaman Analisis Teknikal RSI Rancangan Halaman Hasil Analisis RSI Entity Relationship Diagram (ERD) Perangkat Lunak SAFIRA Halaman Utama Aplikasi SAFIRA Halaman Dashboard IHSG Halaman Historis IHSG Halaman Daftar Saham Halaman Dashboard Saham Halaman Historis Saham Halaman Analisis Teknikal RSI Halaman Hasil Analisis RSI dengan periode 9 hari Halaman Hasil Analisis RSI dengan periode 14 hari Halaman Hasil Analisis RSI dengan periode 25 hari
53 54 55 57 59 60 62 64 66 67 68 69 70 71 73 75 77 77 78 79 80 81 82 83 84 85 90 91 92 93 95 96 97 98 99 100
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
14
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Investasi merupakan suatu langkah seseorang dalam pemenuhan kebutuhan di masa yang akan datang. Dewasa ini dunia investasi tidak lagi didominasi oleh jenis investasi konvensional seperti tabungan, deposito di bank atau di lembaga keuangan lain yang memberikan bunga. Para investor saat ini mulai tertarik untuk menanamkan modalnya melalui pembagian kepemilikan perusahaan yang ditandai dengan surat berharga yang disebut saham. Proses investasi menggunakan saham dilakukan dengan cara jual beli sejumlah saham yang akan menentukan persentase kepemilikan seorang investor terhadap perusahaan yang bersangkutan. Proses jual beli tersebut dilakukan dengan cara lelang di suatu tempat perdagangan khusus yang disebut dengan bursa saham atau pasar modal.
Berinvestasi di bursa saham menjanjikan keuntungan yang jauh lebih besar dibandingkan jenis investasi konvensional. Keuntungan tersebut diperoleh dalam bentuk dividen (keuntungan dari hasil pembagian laba perusahaan) dan capital gain (keuntungan dari hasil jual beli saham berupa kelebihan nilai jual dari nilai beli saham). Investasi di saham rata-rata dapat memberikan yield (tingkat pengembalian) 10-30% per tahun, sedangkan tabungan atau deposito di bank hanya dapat Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
15
memberikan yield 5-10% per tahun (Dominic, 2008: 14). Walaupun demikian risiko yang mungkin dihadapi juga cukup besar. Hal ini mungkin terjadi jika seorang investor membeli saham dengan harga terlalu tinggi dan menjual dengan harga terlalu rendah. Risiko dari investasi saham ini akan terasa lebih besar terutama bagi kalangan umum ataupun pemula yang mungkin sama sekali buta dan belum mempunyai pengalaman sedikit pun tentang investasi ini tetapi dalam waktu dekat berniat untuk berinvestasi di bursa saham, ditambah lagi dengan masalah bahwa pada saat sekarang ini kebanyakan penganalisisan saham dilakukan secara manual dimana hal itu akan memakan waktu yang lama dan kurang efektif dalam mengolah data saham yang sangat banyak jumlahnya. Terdapat berbagai faktor yang dapat mempengaruhi naik turunnya harga saham. Dengan demikian diperlukan analisis dan tindakan yang tepat dalam berinvestasi di bursa saham agar seorang investor (baik dari kalangan profesional maupun kalangan umum) dapat melakukan transaksi pembelian dan penjualan pada saat yang tepat.
Prediksi pergerakan harga saham dapat dilakukan dengan dua cara, yaitu dengan menggunakan analisis fundamental dan analisis teknikal. Analisis fundamental adalah analisis yang dilakukan dengan menggunakan data fundamental perusahaan penerbit saham, misalnya laporan keuangan ditambah dengan tingkat suku bunga, inflasi, ekonomi makro, dan faktor-faktor relevan lainnya yang digunakan untuk memperhitungkan nilai wajar (nilai intrinsik) dari saham suatu perusahaan serta memastikan bahwa saham yang dibeli merupakan saham perusahaan yang berkinerja baik (Tryfino, 2009: 17). Sedangkan analisis teknikal adalah analisis yang menggunakan pengujian atas pergerakan harga saham di masa lampau dan masa kini dengan menggunakan berbagai metode kuantitatif untuk tujuan prediksi (forecast) pergerakan harga saham di masa yang akan datang (Hendarto, 2005: 51). Metode kuantitatif ini dikenal juga dengan sebutan indikator di dalam analisis teknikal.
Dalam Tugas Akhir ini akan dibangun sebuah perangkat lunak yang akan menggunakan salah satu metode kuantitatif (indikator) dalam analisis teknikal yaitu metode Relative Strength Index (RSI), yang nantinya diharapkan dapat mengatasi permasalahan dalam analisis pergerakan harga saham. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
16
1.2 Rumusan Masalah
Berdasarkan latar belakang di atas, maka dapat dirumuskan permasalahan sebagai berikut: a. Bagaimana cara kerja dan kebenaran metode RSI dalam memprediksi pergerakan harga saham. b. Bagaimana merancang dan mengimplementasikan metode RSI dalam memprediksi pergerakan harga saham ke dalam bentuk perangkat lunak dengan menggunakan UML (Unified Modelling Language).
1.3 Batasan Masalah
Agar pembahasan penelitian ini tidak menyimpang dari apa yang telah dirumuskan, maka diperlukan batasan-batasan. Batasan-batasan dalam penelitian ini adalah: a. Data saham yang akan dipergunakan dalam Tugas Akhir ini adalah data historis saham yang terdapat pada situs http://finance.yahoo.com, dimana data sahamnya hanya berasal dari Jakarta Stock Exchange (Bursa Efek Jakarta). b. Data saham yang digunakan adalah harga penutupan (closing price) saja. c. Hanya menggunakan Relative Strength Index (RSI) sebagai metode/indikator yang utama dan Exponential Moving Average sebagai metode/indikator bantu. d. Sinyal yang ditampilkan pada grafik adalah sinyal jual (kondisi overbought) dan sinyal beli (kondisi oversold). e. RSI akan diuji menggunakan periode 9, 14 dan 25 hari. f. Tidak menggunakan analisis fundamental, hanya dengan analisis teknikal. g. Tidak membahas segi sistem pengambilan keputusan. h. Analisis dan perancangan perangkat lunak menggunakan metodologi berorientasi objek dengan tools UML (Unified Modelling Language). i.
Perangkat lunak ini akan dibangun dengan menggunakan bahasa pemrograman PHP 5 dan database server MySQL 5.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
17
1.4 Tujuan Penelitian
Tujuan penelitian ini adalah dapat mempercepat dan mengotomasikan proses penganalisisan saham secara teknikal dengan metode RSI sehingga hasil prediksi yang didapat lebih akurat dan dapat dihandalkan jika dibandingkan dengan perhitungan secara manual.
1.5 Manfaat Penelitian
Manfaat penelitian ini adalah untuk mempermudah pengambilan keputusan dalam perdagangan saham sehingga dapat meminimalisasi kerugian yang timbul akibat keterbatasan pengetahuan tentang analisis pergerakan harga saham.
1.6 Metodologi Penelitian
Penelitian yang akan dilakukan nantinya direncanakan ke dalam langkah-langkah secara sistematis. Penelitian ini dilakukan dengan beberapa tahapan, yaitu: 1. Kepustakaan Pada tahap ini akan dilakukan studi literatur tentang permasalahan yang ada untuk dijadikan referensi dalam memahami analisis teknikal, khususnya metode RSI. Sumber didapat dari perpustakaan dan internet. 2. Analisis Pada tahap ini akan dilakukan analisis masalah yang dikaji serta mendefinisikan batasan-batasan terhadap masalah tersebut, serta melakukan analisis terhadap kebutuhan perangkat lunak yang akan dibangun. 3. Perancangan Perangkat Lunak
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
18
Pada tahap ini akan dilakukan perancangan global terhadap perangkat lunak yang akan dibangun, dilanjutkan dengan perancangan yang lebih detail yang meliputi perancangan fungsional dan perancangan antarmuka. 4. Implementasi Pada tahap ini akan dibangun perangkat lunak berdasarkan perancangan yang telah dibuat dengan menggunakan bahasa pemrograman PHP 5 dan database server MySQL 5.
5. Dokumentasi Pada tahap ini akan disusun laporan Tugas Akhir secara lengkap dengan proses analisis, perancangan, dan implementasi perangkat lunak.
1.7 Sistematika Penulisan
Sistematika penulisan dari Tugas Akhir ini terdiri dari beberapa bagian utama, yaitu sebagai berikut:
BAB 1
PENDAHULUAN Dalam bab ini diuraikan tentang latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, serta sistematika penulisan Tugas Akhir.
BAB 2
LANDASAN TEORI Dalam bab ini diuraikan landasan teori yang digunakan dalam memecahkan masalah dan membahas masalah yang ada. Bab ini membahas konsep saham, analisis harga saham, analisis fundamental, analisis teknikal dan metode Relative Strength Index.
BAB 3
ANALISIS DAN PERANCANGAN
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
19
Dalam bab ini diuraikan tentang analisis kebutuhan perangkat lunak yang akan dikembangkan, beserta perancangan pengembangannya.
BAB 4
IMPLEMENTASI Dalam bab ini diuraikan tentang implementasi dari perangkat lunak yang dibangun
berdasarkan
hasil analisis dan perancangan pada
bab
sebelumnya.
BAB 5
PENUTUP Dalam bab ini diuraikan tentang kesimpulan yang didapat setelah pelaksanaan Tugas Akhir ini, beserta saran-saran untuk perbaikan dan pengembangan di masa yang akan datang.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
20
BAB 2
LANDASAN TEORI
2.1 Saham
Saham adalah surat berharga tanda bukti kepemilikan seseorang atas suatu perusahaan yang berbentuk perseroan terbatas (PT) (Habib, 2008: 105). Saham merupakan salah satu jenis investasi yang banyak digunakan saat ini dan telah melampaui kepopuleran jenis investasi konvensional seperti tabungan, deposito di bank atau di lembaga keuangan lain yang memberikan bunga. Akan tetapi berbeda dengan jenis investasi konvensional, investasi dengan saham tidak selalu mensyaratkan pengembalian uang yang diinvestasikan dan bunga. Artinya jika perusahaan gagal mendapatkan keuntungan maka pemegang saham tidak akan mendapatkan bagian. Oleh karena itu, investasi dengan saham harus dilakukan dengan bantuan analisis yang tepat sehingga dapat
memaksimalkan
keuntungan
dan
menghindari
kerugian.
Keuntungan
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
21
berinvestasi saham dapat diperoleh dalam bentuk dividen (keuntungan dari hasil pembagian laba perusahaan) dan capital gain (keuntungan dari hasil jual beli saham berupa kelebihan nilai jual dari nilai beli saham).
Saham diperdagangkan di bursa saham atau pasar modal dimana penjual dan pembeli saling dipertemukan untuk menentukan harga melalui mekanisme lelang. Bursa tersebut dapat berupa bangunan fisik atau jaringan komputer yang memfasilitasi perdagangan secara elektronik.
Selain mengetahui informasi saham, harus diketahui juga infomasi indeks saham (stock index). Indeks saham adalah sebuah indikator yang menunjukkan atau mengukur tingkat harga rata-rata dari sebagian atau seluruh harga saham yang diperdagangkan di suatu bursa saham dan nilainya selalu berfluktuasi (Tan, 2008: 3). Penyajian informasi indeks saham bervariasi, antara lain adalah Indeks Harga Saham Individual (Individual Stock Index) dan Indeks Harga Saham Gabungan (Composite Stock Index). Indeks harga saham individual mencatat pergerakan harga masingmasing saham sampai pada waktu tertentu, sedangkan indeks harga saham gabungan mencatat pergerakan harga saham gabungan seluruh saham dalam sebuah bursa saham. Sebuah negara memiliki indeks saham masing-masing, contohnya: Jakarta Composite (Indonesia) dan LQ45 (Indonesia), Nikkei (Jepang), Hangseng (Hongkong), dan lain-lain. Indeks Harga Saham Gabungan digunakan untuk mengukur kinerja gabungan saham yang tercatat dalam suatu bursa saham.
2.1.1 Jenis-Jenis Saham
Ada beberapa sudut pandang untuk membedakan saham, yaitu (Vibby, 2007: 24): 1. Ditinjau dari segi kemampuan dalam hak tagih atau klaim, saham dapat dibedakan menjadi: a. Common Stock, yaitu saham biasa. Jika masyarakat membicarakan saham umumnya yang mereka maksud adalah saham jenis ini. Saham jenis ini merupakan jenis saham yang paling banyak diperdagangkan. Kepemilikan Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
22
saham jenis ini merepresentasikan klaim atas pendapatan dan aset perusahaan serta hak suara dalam rapat tahunan pemegang saham. Dalam jangka panjang, investasi dengan common stock menjanjikan keuntungan yang lebih besar daripada jenis investasi lain. Akan tetapi, saham jenis ini juga memiliki risiko paling besar. Apabila perusahaan bangkrut atau dilikuidasi, maka pembagian dividen dan aset perusahaan akan dibayarkan terlebih dahulu kepada debitor dan pemegang saham jenis preferred stock. Jika hasil pembagian tersebut tidak bersisa maka pemegang saham jenis common stock tidak akan mendapatkan bagian. b. Preferred Stock, yaitu saham yang memiliki jaminan dividen dalam jumlah yang tetap selamanya. Hal ini berbeda dengan saham jenis common stock yang jumlah dividennya tidak terjamin sehingga ada kemungkinan tidak mendapat dividen sama sekali. Keuntungan lain dari saham jenis preferred stock adalah jika perusahaan bangkrut atau dilikuidasi, pembagian dividen dan aset perusahaan akan dibayarkan terlebih dahulu kepada pemilik saham jenis ini sebelum kepada pemilik saham jenis common stock. 2. Ditinjau dari kinerja perdagangan, saham dapat dibedakan menjadi: a. Blue-Chip Stock, yaitu saham jenis common stock dari perusahaan yang memiliki reputasi tinggi, sebagai leader dalam industri sejenis, memiliki pendapatan yang stabil, dan konsisten dalam membayar dividen. b. Income Stock, yaitu saham dari suatu perusahaan yang memiliki kemampuan membayar dividen lebih tinggi dari rata-rata dividen yang dibayarkan pada tahun sebelumnya. c. Growth Stock, yaitu saham dari perusahaan yang memiliki pertumbuhan pendapatan yang tinggi. Saham jenis ini diterbitkan oleh perusahaan yang memiliki reputasi tinggi sebagai leader dalam industri sejenis. d. Speculative Stock, yaitu saham dari perusahaan yang tidak konsisten dalam memperoleh pendapatan dari tahun ke tahun sehingga memiliki kemungkinan kecil untuk memberikan nilai pengembalian investasi yang normal atau tinggi. e. Counter Cyclical Stock, yaitu saham yang nilainya tidak terpengaruh oleh perubahan situasi ekonomi dan bisnis secara umum.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
23
2.2
Analisis Fundamental
Analisis fundamental adalah analisis yang dilakukan dengan menggunakan data fundamental perusahaan penerbit saham, misalnya laporan keuangan ditambah dengan tingkat suku bunga, inflasi, ekonomi makro dan faktor-faktor relevan lainnya yang digunakan untuk memperhitungkan nilai wajar (nilai intrinsik) dari saham suatu perusahaan serta memastikan bahwa saham yang dibeli merupakan saham perusahaan yang berkinerja baik (Tryfino, 2009: 17).
Prinsip pada analisis fundamental ini adalah jika harga saham di pasar modal lebih tinggi daripada nilai intrinsik saham tersebut pada satu waktu, maka saham tersebut dianggap terlalu mahal harganya (kondisi overvalue) dan disarankan untuk dijual. Sedangkan jika harga saham pada suatu waktu lebih rendah daripada nilai intrinsik saham tersebut pada waktu itu, maka saham tersebut dianggap terlalu murah (kondisi undervalue) dan disarankan untuk dibeli. Akan tetapi, analisis ini tidak bisa memberikan gambaran trend yang sedang terjadi pada suatu saham sehingga tidak bisa memberikan keputusan kapan membeli dan menjual saham tersebut serta analisis ini sangat rumit dan cenderung memakan waktu yang lama.
2.3
Analisis Teknikal
Analisis teknikal adalah analisis untuk memprediksi pergerakan harga saham di masa depan dengan menggunakan data historis saham di masa lampau dan masa kini dengan bantuan grafik serta metode kuantitatif (indikator) (Hendarto, 2005: 48). Kelebihan analisis teknikal adalah analisis ini relatif cepat dan mudah, tidak perlu terlibat dalam angka-angka keuangan yang rumit dan memberikan sinyal kapan saat yang tepat untuk melakukan investasi. Dalam pandangan analisis teknikal, semua faktor fundamental sudah masuk kedalam dan direpresentasikan oleh harga yang terbentuk, sehingga tidak perlu lagi mempertimbangkan segi fundamental suatu
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
24
saham. Analisis teknikal pertama kali di populerkan oleh Charles Dow dan dikenal dengan prinsip Teori Dow (Dow Theory) pada akhir abad 19.
Analisis teknikal tidak berusaha untuk memprediksi angka pasti harga suatu saham. Output analisis teknikal adalah gambaran mengenai kecenderungan harga saham di pasaran berdasarkan data-data harga saham di masa lalu. Berdasarkan gambaran tersebut, seorang analis dapat memberikan saran kepada investor mengenai waktu yang tepat untuk melakukan pembelian, penjualan, atau menahan sahamnya.
2.3.1 Prinsip Analisis Teknikal
Secara umum analisis teknikal mempunyai tiga prinsip dasar utama, yaitu (Vibby, 2007: 44): 1. Segala faktor yang mempengaruhi nilai intrinsik suatu saham sudah tercermin dalam aksi pasar. Karena itu, alih-alih mempelajari faktor-faktor luar yang sedemikian banyak, para analis teknikal memilih untuk mempelajari perubahan harga saham (aksi pasar). 2. Harga saham bergerak dengan mengikuti trend, dan sebuah trend akan lebih cenderung untuk berlanjut daripada berubah. Analisis teknikal dilakukan dengan membentuk sebuah grafik dari pergerakan harga saham di pasar. Grafik ini kemudian dianalisis agar trend-trend yang ada bisa dikenali pada tahap awal pembentukannya. Setelah analis teknikal bisa mengenali trend yang sedang berlaku, maka perdagangan akan dilakukan sejalan dengan trend tersebut sampai muncul pertanda bahwa trend akan berbalik. 3. Apa yang sudah pernah terjadi akan cenderung berulang. Konsep ini terbentuk karena pasar modal dijalankan oleh manusia. Pada dasarnya psikologi manusia tidak pernah berubah dan dapat ditebak. Setiap orang pasti ingin membeli saham dari perusahaan yang memiliki prospek cerah.
2.3.2 Jenis-Jenis Harga Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
25
Dalam bagian ini akan dijelaskan berbagai jenis harga saham yang mungkin digunakan dalam analisis teknikal, yaitu: 1. Opening price Opening price suatu saham adalah harga saham tersebut pada awal periode tersebut. Opening price pada suatu hari adalah harga saham tersebut pada saat pasar modal dibuka pada hari ini. Opening price pada suatu bulan adalah harga saham tersebut pada saat pasar modal dibuka, pada hari pertama pasar modal beroperasi pada bulan itu. 2. Closing price Closing price suatu saham adalah harga saham tersebut pada akhir periode tersebut. Closing price pada suatu hari adalah harga saham tersebut pada saat pasar modal ditutup pada hari itu. Closing price pada suatu bulan adalah harga saham tersebut pada saat pasar modal ditutup pada hari terakhir pasar modal beroperasi pada bulan itu. 3. High price High price suatu saham adalah harga tertinggi yang pernah dicapai saham tersebut pada suatu periode. 4. Low price Low price suatu saham adalah harga terendah yang pernah dicapai saham tersebut pada suatu periode.
Harga yang paling sering digunakan dalam analisis teknikal adalah harga penutupan (closing price). Harga penutupan dianggap sebagai harga yang paling penting dalam satu hari/satu periode.
2.3.3 Trend Pasar
Trend pasar merefleksikan arah pergerakan harga saham secara umum. Trend merupakan hal esensial dalam pendekatan teknikal. Teknik-teknik yang digunakan dalam pendekatan teknikal semuanya bertujuan untuk melakukan perdagangan sesuai Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
26
dengan trend tersebut. Dalam perdagangan saham dikenal tiga jenis trend utama, yaitu: uptrend (trend kenaikan), downtrend (trend penurunan), dan sideways (kondisi biasa).
2.3.3.1 Uptrend
Uptrend adalah situasi dimana harga penutupan tertinggi suatu saham pada suatu periode lebih tinggi dari harga penutupan tertinggi pada periode sebelumnya dan harga penutupan terendahnya juga lebih tinggi dari harga penutupan terendah pada periode sebelumnya. Uptrend terjadi karena jumlah pembeli lebih banyak daripada penjual saham sebagai akibat dari peningkatan kepercayaan investor terhadap pasar. Para investor akan berlomba-lomba untuk menjadi yang pertama dalam memasuki fase awal trend ini dengan harapan akan mendapatkan capital gain seiring dengan peningkatan harga saham. Kondisi uptrend sering juga disebut dengan istilah bullish atau bull market.
2.3.3.2 Downtrend
Downtrend adalah situasi dimana harga penutupan terendah suatu saham pada suatu periode lebih rendah dari harga penutupan terendah pada periode sebelumnya dan harga penutupan tertingginya juga lebih rendah dari harga penutupan tertinggi pada periode sebelumnya. Downtrend terjadi karena jumlah pembeli lebih sedikit daripada penjual saham. Hal ini diakibatkan oleh sentimen negatif terhadap pasar. Para investor akan segera melakukan penjualan saham untuk menghindari kerugian akibat harga jual sahamnya lebih rendah daripada harga yang mereka bayar saat pembelian. Kondisi downtrend sering juga disebut bearish atau bear market.
2.3.3.3 Sideways
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
27
Sideways adalah situasi dimana harga penutupan tertinggi suatu saham pada suatu periode sama rata dengan harga penutupan tertinggi pada periode sebelumnya dan harga penutupan terendahnya juga sama rata dengan harga penutupan terendah pada periode sebelumnya. Hal ini terjadi karena jumlah pembeli dan penjual berimbang. Pada situasi ini sentimen yang berkembang di pasar tidak terlalu mempengaruhi keputusan para investor.
2.3.4 Indikator Teknikal
Indikator teknikal adalah suatu metode kuantitatif atau formula untuk tujuan prediksi pergerakan harga saham dengan cara mengolah data saham dari serangkaian pergerakan harga saham sebelumnya yang diaplikasikan dalam bentuk titik-titik data di grafik. (Hendarto, 2005: 87). Data harga dapat berupa kombinasi dari open, close, high, atau low pada periode waktu tertentu. Sebagai contoh rata-rata dari tiga close: (41+43+43) = 42.33 adalah sebuah titik data. Akan tetapi, sebuah titik data kurang memberikan informasi sehingga tidak dapat dijadikan indikator. Rangkaian titik-titik data pada periode waktu tertentu diperlukan untuk dapat dijadikan referensi yang valid dalam analisis. Dengan adanya periode waktu, perbandingan dapat dilakukan antara situasi saat ini dengan situasi di masa lalu. Untuk tujuan analisis, biasanya indikator teknikal digambarkan dalam grafik berdekatan dengan grafik harga saham. Setelah digambarkan dalam grafik, indikator dapat dibandingkan dengan grafik harga yang bersesuaian.
Indikator teknikal memberikan perspektif yang unik terhadap kekuatan dan arah dari pergerakan harga saham. Secara garis besar ada tiga fungsi indikator teknikal, yaitu: 1. To alert, indikator teknikal dapat memberikan peringatan untuk mengamati pergerakan harga dengan lebih cermat untuk mengidentifikasi perubahan harga saham baik saat melemah maupun menguat. 2. To confirm, indikator teknikal dapat digunakan untuk mengkonfirmasi sinyal yang dihasilkan oleh metode analisis teknikal yang lain. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
28
3. To predict, indikator teknikal dapat digunakan untuk memprediksi pergerakan harga saham di masa yang akan datang.
Indikator teknikal melakukan penyaringan terhadap pergerakan harga dengan menggunakan formula. Dengan kata lain, indikator teknikal bukanlah refleksi langsung dari pergerakan harga. Analisis terhadap indikator teknikal harus diikuti dengan studi pergerakan harga. Hal ini diperlukan untuk menghindari kesalahan dalam pembacaan sinyal. Contohnya: jika indikator teknikal memberikan sinyal beli, sedangkan pola grafik harga menunjukkan downtrend, maka mungkin saja sinyal tersebut adalah sinyal yang salah.
2.3.4.1 Oscillator
Oscillator adalah indikator teknikal yang nilainya berfluktuasi naik dan turun melewati suatu garis tengah atau diantara batas-batas tertentu seiring dengan perubahan nilainya dalam jangka waktu tertentu. Oscillator adalah tipe indikator yang paling efektif digunakan pada kondisi pasar normal atau tidak mengikuti trend yang dikenal dengan istilah sideways. Sebagaimana dijelaskan sebelumnya bahwa pergerakan harga saham dipengaruhi oleh sentimen pasar. Harga saham berfluktuasi di antara periode optimis dan pesimis. Oscillator dapat memberikan petunjuk kapan sentimen-sentimen tersebut mencapai titik ekstrim. Saat pasar sedang mengikuti trend tertentu, oscillator sebaiknya digunakan sebagai alat bantu, bukan sebagai alat utama. Seberapapun kuatnya sinyal yang diberikan oscillator, tetap lebih penting untuk berdagang sesuai dengan arah trend.
Pergerakan grafik oscillator mengikuti/menyerupai pergerakan harga saham. Jika harga saham sedang naik kemungkinan besar oscillator juga akan bergerak naik, sebaliknya oscillator akan bergerak turun jika harga sedang mengalami penurunan. Pergerakan tersebut lebih banyak di antara batas-batas yang telah ditentukan sedangkan pergerakan yang terus berlanjut mengikuti trend sangat jarang terjadi.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
29
Ada banyak tipe oscillator dan beberapa indikator teknikal dapat dikategorikan ke dalam lebih dari satu kategori oscillator. Secara garis besar, oscillator dapat dibedakan menjadi dua tipe, yaitu: 1. Centered Oscillator, yaitu oscillator yang berfluktuasi naik dan turun melewati suatu garis tengah. Oscillator jenis ini efektif digunakan untuk mengidentifikasi kuat dan lemah atau arah dari momentum dibalik pergerakan harga suatu saham. Momentum akan bernilai positif bila oscillator bergerak di atas nilai tengah dan akan bernilai negatif bila oscillator bergerak di bawah nilai tengah. Contoh indikator teknikal bertipe centered oscillator adalah Rate of Change (ROC) dan MACD. 2. Banded Oscillator, yaitu oscillator yang berfluktuasi naik dan turun di antara posisi-posisi tertentu (ekstrim atas dan bawah) yang menandakan kondisi ekstrim harga suatu saham dan tidak memiliki garis tengah. Sebagian besar banded oscillator berfluktuasi di antara batas-batas/skala yang telah ditentukan (biasanya 0-100). Beberapa banded oscillator yang populer digunakan adalah RSI dan Stochastic Oscillator.
Oscillator dapat memberikan sinyal jual dan beli dalam beberapa cara. Sinyalsinyal yang diberikan oscillator dapat dikelompokkan menjadi: 1. Divergence positif dan negatif. Divergence adalah konsep inti dari sinyal pada oscillator dan juga pada indikator lainnya. Divergence memberikan peringatan bahwa kenaikan atau penurunan yang sedang berlangsung akan mengalami perubahan juga memberikan sinyal jual dan beli. Divergence positif terjadi bila nilai indikator pada suatu periode mengalami peningkatan sementara pada periode yang sama harga saham yang bersesuaian mengalami penurunan. Sedangkan Divergence negatif terjadi bila pada suatu periode nilai indikator mengalami penurunan sementara pada periode yang sama harga saham yang bersesuaian mengalami peningkatan. 2. Overbought dan oversold. Sinyal ini dihasilkan oleh oscillator jenis banded oscillator. Langkah pertama untuk menggunakan indikator jenis ini adalah menentukan posisi-posisi ekstrim atas dan bawah. Pada RSI posisi ekstrim bawah biasanya pada level 30 dan posisi ekstrim atas pada level 70. Pada Stochastic Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
30
Oscillator posisi ekstrim bawah biasanya pada level 20 dan posisi ekstrim atas pada level 80. Nilai di bawah 30 pada RSI atau di bawah 20 pada Stochastic Oscillator menunjukkan kondisi oversold. Nilai di atas 70 pada RSI atau di atas 80 pada Stochastic Oscillator menunjukkan kondisi overbought. Cara termudah untuk mengidentifikasi sinyal pembelian adalah ketika pada kondisi oversold, nilai oscillator kemudian bergerak naik dan memotong garis ekstrim oversold. Cara termudah untuk mengidentifikasi sinyal penjualan adalah ketika pada kondisi overbought, nilai oscillator kemudian bergerak turun dan memotong garis ekstrim overbought. Untuk mendapatkan sinyal yang lebih baik maka proses identifikasi sebaiknya dibarengi dengan identifikasi sinyal-sinyal lain seperti divergence. 3. Perpotongan garis tengah. Sinyal ini kebanyakan digunakan oleh centered oscillator. Sinyal beli diberikan ketika nilai oscillator bergerak naik memotong garis tengah. Sinyal jual diberikan ketika nilai oscillator bergerak turun memotong garis tengah. Pergerakan oscillator di atas garis tengah menunjukkan perubahan momentum dari negatif ke positif dan pasar dapat dikatakan dalam kondisi bullish. Pergerakan oscillator di bawah garis tengah menunjukkan perubahan momentum dari positif ke negatif dan pasar dapat dikatakan dalam kondisi bearish. Pembacaan sinyal seperti ini mendapat kritikan karena dianggap terlalu lama sehingga dapat mengurangi kesempatan mendapat profit. Akan tetapi, sebagian orang berpendapat cara ini dapat mengurangi resiko kesalahan pembacaan sinyal jual dan beli.
Penggunaan oscillator harus dibarengi dengan dasar-dasar analisis trend untuk menghindari kesalahan pembacaan sinyal. Hal ini menjadi salah satu kekurangan dalam metode analisis menggunakan oscillator. Walaupun demikian, pada umumnya pasar lebih sering berada pada kondisi normal (sideways) daripada kondisi uptrend atau downtrend. Oleh karena itu, metode oscillator dapat memberikan banyak keuntungan dan masih banyak digunakan sampai saat ini.
2.3.5 Exponential Moving Average
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
31
Exponential Moving Average adalah salah satu jenis indikator (metode kuantitatif) pada analisis teknikal yang digunakan di dalam metode Relative Strength Index (RSI) sebagai penghalus grafik hasil analisis RSI yang berfluktuasi sehingga didapat grafik yang lebih halus dan lebih mudah diidentifikasi trendnya (kenaikan atau penurunan harga saham). Exponential Moving average adalah sebuah jenis alat analisis teknikal yang menggunakan rata-rata harga saham sebagai keluarannya dan indikator ini merupakan indikator bantu dalam RSI.
Relative Strength Index
Salah satu oscillator yang cukup terpercaya dan sering digunakan oleh para analis teknikal adalah Relative Strength Index (RSI). Metode ini dikembangkan oleh J. Welles Wilder pada tahun 1978. Seperti oscillator lainnya, RSI juga berfungsi untuk membaca kondisi overbought dan oversold, selain untuk memprediksi perubahan trend.
RSI mempunyai kelebihan dibanding oscillator lainnya. Analisis dengan RSI dilakukan bukan dengan menghitung perbedaan harga antara dua hari, namun dengan menghitung rata-rata perbedaan harga selama periode beberapa hari, sehingga RSI tidak begitu terpengaruh perubahan harga yang drastis. Selain itu, RSI juga memberi skala 0-100, sehingga lebih mudah dalam melakukan perbandingan. Hasil analisis RSI berfungsi untuk menampilkan sinyal-sinyal, seperti: 1. Overbought. Pasar disebut dalam kondisi overbought ketika nilai oscillator berada di sekitar posisi ekstrim atas. Pada RSI posisi ekstrim bawah biasanya pada level 30 dan posisi ekstrim atas pada level 70 sehingga jika nilai RSI di atas level 70, maka sinyal overbought akan muncul. Kondisi ini diakibatkan oleh permintaan melebihi penawaran sehingga harga suatu saham meningkat sampai titik tertinggi. Kondisi ini merupakan pertanda bahwa saham tersebut dihargai terlalu tinggi dan akan mengalami penurunan, disarankan kepada para investor untuk menjual sahamnya (sinyal jual).
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
32
2. Oversold. Pasar disebut dalam kondisi oversold ketika nilai oscillator berada di sekitar posisi ekstrim bawah. Pada RSI posisi ekstrim bawah biasanya pada level 30 dan posisi ekstrim atas pada level 70 sehingga jika nilai RSI di bawah level 30, maka sinyal oversold akan muncul. Kondisi ini diakibatkan oleh penawaran melebihi permintaan sehingga harga suatu saham menurun sampai titik terendah. Kondisi ini merupakan pertanda bahwa saham tersebut dihargai terlalu rendah dan akan mengalami peningkatan, disarankan kepada para investor untuk membeli saham (sinyal beli).
2.3.6.1 Rumus Relative Strength Index
Pada bagian ini akan dibahas cara menghitung Relative Strength Index.
Pada suatu hari d, dapat dihitung kenaikan atau penurunan harga pada saat pasar modal ditutup (closing price) pada hari itu dibandingkan harga penutupan hari sebelumnya. Rumusnya yaitu (Hendarto, 2005: 112):
(1)
dengan CPd adalah closing price pada hari d. Nilai U dan D tidak pernah negatif. Jika harga saham pada suatu hari mengalami kenaikan maka Ud bernilai positif dan Dd bernilai nol. Begitu juga sebaliknya, jika harga saham mengalami penurunan maka Dd bernilai positif dan Ud bernilai nol. Selanjutnya dihitung nilai U dan D selama N periode/jumlah hari untuk menghitung nilai rata-rata U dan D. Penghitungan pertama dilakukan secara sederhana, yaitu dengan menghitung jumlah total U dan D selama N periode/jumlah hari ke belakang kemudian dibagi jumlah periode/jumlah hari (N). Rumusnya yaitu (Hendarto, 2005: 113):
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
33
(2)
Sementara untuk nilai-nilai berikutnya, nilai rata-rata dihitung menggunakan Exponential Moving Average, rumusnya yaitu (Hendarto, 2005: 113):
(3) Nilai α
berfungsi sebagai faktor penghalus (smoothing factor) bagi
Exponential Moving Average. Nilainya tergantung pada periode/jumlah hari (N) yang digunakan. Rumusnya yaitu (Hendarto, 2005: 113):
(4)
Nilai rata-rata U dan D kemudian dibandingkan untuk menghasilkan nilai Relative Strength Index, sehingga didapat rumusnya yaitu (Hendarto, 2005: 114):
(5)
RS
kemudian digunakan
untuk
menghitung
RSI,
sehingga didapat
rumus/formulasi sebagai berikut (Hendarto, 2005: 114):
(6)
Contoh penghitungan dengan RSI dapat dilihat di Lampiran A. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
34
2.3.6.2 Periode yang Biasa Digunakan
Pada saat mengembangkan RSI, J. Welles Wilder menyarankan menggunakan RSI dengan periode 14 hari. Periode 14 hari dirasa tepat untuk mendapatkan keseimbangan antara frekuensi sinyal yang cukup tinggi, dan kehandalan sinyal yang diberikan.
Pada penggunaan berikutnya, para ahli banyak menggunakan RSI dengan menggunakan periode yang berbeda-beda. Periode yang paling sering digunakan adalah 9 dan 14 hari. Periode 5 atau 7 hari digunakan juga untuk mendapatkan frekuensi sinyal yang tinggi. Periode lain yang sering digunakan adalah 21, 25 dan 28 hari untuk mendapatkan grafik yang lebih halus dan dapat dipercaya. Dalam Tugas Akhir ini, RSI akan diuji menggunakan periode 9, 14 dan 25 hari karena periodeperiode ini lebih sering digunakan dan lebih popular saat ini.
Pemilihan periode yang berbeda akan menghasilkan hasil analisis dengan sifat yang berbeda. Memilih periode yang pendek akan menyebabkan perataan dilakukan selama periode yang pendek pula, sehingga lebih mudah menghasilkan sinyal overbought atau oversold. Kenaikan harga selama beberapa hari akan lebih mudah memicu sinyal overbought karena nilai U hanya dibandingkan dengan nilai D selama periode yang singkat. Pada periode penghitungan tiga hari, misalnya kenaikan harga selama dua hari sudah cukup untuk memberi sinyal overbought. Sedangkan memilih periode yang panjang akan memberikan sinyal yang lebih kuat dan dapat diandalkan, karena perbandingan dilakukan selama periode yang cukup lama. Pada penghitungan yang dilakukan menggunakan periode panjang, sinyal overbought dan oversold akan lebih jarang keluar, namun lebih dapat dipercaya.
2.4 Konsep Pemodelan Objek
Pemodelan objek merupakan suatu metode untuk menggambarkan struktur sistem yang memperlihatkan semua objek yang ada pada sistem (Nugroho, 2005: 37).
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
35
Beberapa konsep dasar dalam pemodelan objek adalah objek, kelas, atribut, operasi, dan hubungan.
2.4.1 Objek dan Kelas
Objek merupakan sesuatu, sebuah entitas, sebuah benda, sesuatu yang dapat diangkat atau apapun yang dapat dibayangkan yang memiliki identitas masing-masing (O’Docherty, 2005: 13). Ada beberapa objek yang hidup dan ada yang tidak. Contoh objek dalam dunia nyata yaitu orang, nomor, kucing, dan mobil. Objek adalah orang, tempat, benda, kejadian atau konsep-konsep yang ada di dunia nyata yang penting bagi suatu perangkat lunak (Nugroho, 2005: 38).
Kelas seperti juga objek adalah sesuatu yang membungkus (encapsulate) informasi (atribut) dan perilaku (operasi) dalam dirinya. Dalam pengembangan sistem tradisional, dilakukan pendekatan dengan cara memisahkan atribut pada sisi basis data dan operasi pada sisi aplikasi pengakses. Namun hal ini berbeda pada pendekatan berorientasi objek yang menggabungkan atribut dengan operasi yang akan mengaksesnya dalam apa yang dinamakan kelas. Kelas didefinisikan sebagai kumpulan objek dengan atribut yang mirip, operasi yang mirip, serta hubungan dengan objek yang lain dengan cara yang mirip (Nugroho, 2005: 40).
Gambar berikut memperlihatkan suatu kelas dan objek yang mungkin dihasilkan dengan prosedur instansiasi. Suatu objek merupakan instansiasi dari suatu kelas jika objek itu merupakan keturunan yang nyata dari suatu kelas.
Manusia
Kelas
Instansiasi
(Manusia) Ani
(Manusia) Adi
Objek
Gambar 2.1 Kelas dan Objek Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
36
2.4.2 Atribut dan Operasi
Setiap objek memiliki identitas dan masing-masing dapat dibedakan. (Nugroho, 2005: 38). Setiap objek memiliki atribut, misalnya sebuah mobil memiliki produsen, jenis, warna dan harga, sedangkan seekor kucing memiliki jenis kelamin, jenis, berat, dan warna. Setiap objek juga memiliki operasi, misalnya mobil dapat bergerak dari satu tempat ke tempat lain, sedangkan kucing dapat berlari, minum dan makan.
Atribut adalah informasi-informasi yang dimiliki suatu objek dalam kelas. Dari contoh di atas dapat ditambahkan, untuk objek Adi dan Ani dapat memiliki atribut jenis kelamin, usia, berat badan, tinggi badan dan lain-lain. Dari fakta-fakta ini dapat dipahami bahwa nilai dari suatu atribut adalah karakteristik yang membedakan satu objek dengan objek lainnya dalam kelas yang sama.
Manusia Nama: String Usia: Integer
Kelas dengan atribut
Instansiasi
(Manusia)
(Manusia)
Adi 21
Ani 23
Objek dengan nilai pada atribut
Gambar 2.2 Atribut dan Nilai
Operasi atau metode berhubungan dengan perilaku yang berhubungan dengan suatu kelas. Operasi adalah fungsi atau transformasi yang mungkin dapat diaplikasikan ke/oleh suatu objek dalam kelas. Contohnya suatu objek dalam kelas manusia dapat memiliki operasi-operasi seperti tersenyum, berbicara, makan, minum dan sebagainya. Algoritma dari suatu operasi dapat dirincikan dengan menggunakan pseudocode yang memiliki bagian-bagian yaitu nama metode, kamus yang berisi semua nama yang ada dan tipe datanya serta algoritma yang berisi langkah-langkah penyelesaian masalah.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
37
Manusia
Lingkaran
-Nama -Usia +Makan() +Berpindah_alamat()
-Warna -Posisi -Jari-jari +Geser(in Delta : bool) +Pilih(in Point : object) : bool
Gambar 2.3 Operasi
2.4.3 Hubungan (Relationship)
Ketika menggambarkan kelas-kelas dan objek-objek, akan terlihat bahwa kebanyakan kelas dan objek adalah berdiri sendiri. Pada kenyataannya, hampir semua kelas dan objek saling bekerja sama satu sama lain sehingga pada pemodelan kelas dan objek, setelah kelas dan objek didefinisikan, juga dimodelkan bagaimana kelas-kelas dan objek-objek saling berhubungan.
2.5 UML (Unified Modelling Language)
UML adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek (Fowler, 2005: 1). UML merupakan standar yang relatif terbuka yang dikontrol oleh Object Management Group (OMG), yang terdiri dari banyak perusahaan. UML lahir dari penggabungan banyak bahasa pemodelan grafis berorientasi objek antara lain metode Booch oleh Graddy Booch, metode Object Modelling Technique (OMT) oleh DR. James Rumbaugh dan metode Object Oriented Software Engineering (OOSE) oleh Ivar Jacobson.
Dengan UML, dapat dibuat model untuk perangkat lunak, dimana perangkat lunak tersebut dapat berjalan pada perangkat keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Namun, karena UML juga menggunakan kelas dan operasi dalam konsep dasarnya, maka UML lebih cocok Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
38
untuk pemodelan perangkat lunak dalam bahasa berorientasi objek seperti C++, Java, C# atau VB.NET.
2.5.1 Analisis Persyaratan dengan UML
Analisis persyaratan meliputi usaha untuk mengetahui apa kemampuan sebuah sistem yang diinginkan pengguna dan pelanggan dari sebuah pengembangan perangkat lunak. Beberapa diagram yang digunakan dalam analisis persyaratan yaitu: 1. Use case diagram yang digunakan untuk menggambarkan bagaimana orang-orang berinteraksi dengan sistem tersebut. 2. Activity diagram yang berfungsi menunjukkan aliran kerja organisasi tersebut yang dapat menunjukkan bagaimana aktivitas interaksi antara perangkat lunak dan manusia. Activity diagram dapat menunjukkan konteks use case dan juga rincian bagaimana sebuah use case berjalan. 3. Class diagram yang diambil dari sudut pandang konseptual, dapat berfungsi untuk membangun kosakata yang besar mengenai domain tersebut. 4. Package diagram untuk mengelompokkan kelas-kelas.
2.5.2 Desain dengan UML
Beberapa diagram yang digunakan dalam mendesain sistem yaitu: 1. Use case diagram yang digunakan untuk menggambarkan bagaimana orang-orang berinteraksi dengan sistem tersebut. 2. Sequence diagram untuk mengetahui apa yang terjadi dalam perangkat lunak. 3. Class diagram dari sudut perangkat lunak. Diagram ini menunjukkan kelas yang terdapat di dalam perangkat lunak dan bagaimana mereka saling berhubungan. 4. Package diagram untuk menunjukkan organisasi berskala besar perangkat lunak tersebut. 5. Penggunaan deployment diagram untuk menunjukkan susunan fisik perangkat lunak tersebut. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
39
2.5.3 Teknik Analisis dan Desain Sistem dengan UML
Teknik yang digunakan dalam pemodelan analisis dan desain sistem menggunakan UML di antaranya: 1. Pengidentifikasian fungsionalitas sistem dengan penggunaan use case diagram. 2. Pengidentifikasian skenario sistem berdasarkan use case diagram dengan penggunaan activity diagram. 3. Pengidentifikasian kelas-kelas yang terdapat dalam sistem dengan penggunaan class diagram. 4. Pengidentifikasian hubungan inheritance antara kelas. 5. Pengidentifikasian atribut-atribut yang dimiliki setiap kelas. 6. Pengelompokan kelas-kelas dalam package-package tertentu dengan penggunaan package diagram. 7. Pada setiap use case, dilakukan pengidentifikasian operasi-operasi yang dimiliki setiap kelas yang terlibat dalam use case tersebut. 8. Pengidentifikasian objek-objek, serta penggunaan sequence diagram untuk mendeskripsikan aliran komunikasi antara objek-objek pada setiap use case. 9. Desain antarmuka sistem dan spesifikasi detail dari bagian-bagian antarmuka yang berhubungan dengan fungsi sistem. 10. Pengidentifikasian arsitektur fisik sistem dan kebutuhan sistem dengan penggunaan deployment diagram.
Teknik yang digunakan tidak terbatas pada teori yang diperoleh, namun berdasarkan kebutuhan pada saat analisis dan desain sistem. Dalam pembangunan suatu sistem, jenis diagram yang digunakan disesuaikan dengan kebutuhannya.
2.5.4 Diagram-Diagram dalam UML
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
40
Dalam UML, dikenal diagram-diagram yang digunakan untuk membantu dalam analisis dan desain sistem. Dalam Tugas Akhir ini, ada beberapa diagram yang digunakan, yaitu use case diagram, activity diagram, class diagram, sequence diagram, package diagram, dan deployment diagram.
2.5.4.1 Use Case Diagram
Use case diagram mendeskripsikan interaksi tipikal antara para pengguna sistem dengan sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem tersebut digunakan (Fowler, 2005: 50). Use case diagram menampilkan aktor, use case, dan hubungan diantara mereka yang dijabarkan sebagai berikut: 1. Aktor Aktor adalah seseorang atau sesuatu yang berinteraksi dengan sistem yang sedang dikembangkan. Aktor bersifat eksternal, yaitu berada di luar lingkup sistem yang sedang dikembangkan (Nugroho, 2005: 56). Pengguna sistem merupakan aktor yang umum di setiap sistem. Aktor disimbolkan dengan:
Aktor
Gambar 2.4 Aktor
Setiap use case diagram memiliki aktor utama yang meminta sistem untuk memberi sebuah layanan. Aktor utama adalah aktor dengan tujuan yang akan dipenuhi oleh use case diagram. Aktor selain aktor utama dikenal sebagai aktor sekunder. 2. Use Case Use case menggambarkan bagaimana seseorang akan mengunakan atau memanfaatkan sistem. Use case dapat membantu untuk berfokus pada apa yang penting, yaitu menentukan apa yang dibutuhkan serta harapan pengguna terhadap Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
41
sistem yang dikembangkan. Pengidentifikasian use case dapat dilakukan dengan melakukan identifikasi pekerjaan-pekerjaan dan fungsi-fungsi apa yang dilakukan aktor untuk sistem. Use case disimbolkan dengan:
Use case
Gambar 2.5 Use Case
3. Hubungan (relationship) Aktor dan use case masing-masing tidak berdiri sendiri, melainkan saling terhubung dengan apa yang dinamakan hubungan. Ada beberapa hubungan yang dikenal dalam use case diagram, yaitu: a. Hubungan asosiasi (association relationship) Hubungan asosiasi merupakan hubungan yang biasa terjadi antara aktor dan use case yang menggambarkan bahwa aktor melakukan apa yang dinyatakan dalam use case. Hubungan disimbolkan dengan:
Aktor
Use case
Gambar 2.6 Hubungan Asosiasi
b. Hubungan cakupan (include relationship) Hubungan cakupan memungkinkan suatu use case untuk menggunakan fungsionalitas yang disediakan oleh use case lainnya. Hubungan ini dapat membantu dalam beberapa kasus seperti pada kasus dimana dua atau lebih use case memiliki sejumlah besar fungsi yang identik, maka fungsi-fungsi yang sama dapat dipisahkan menjadi suatu use case tersendiri, sehingga use case lain dapat memiliki hubungan cakupan dengan use case yang baru. Hubungan cakupan disimbolkan dengan: Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
42
<
>
NewUseCase1
NewUseCase2
Gambar 2.7 Hubungan Cakupan
c. Hubungan perluasan (extends relationship) Hubungan perluasan memungkinkan suatu use case memiliki kemungkinan untuk memperluas fungsionalitas yang disediakan use case lainnya. Hubungan perluasan disimbolkan dengan: <<extend>>
NewUseCase1
NewUseCase2
Gambar 2.8 Hubungan Perluasan
d. Hubungan generalisasi (generalization relationship) Hubungan generalisasi digunakan untuk memperlihatkan bahwa beberapa aktor atau use case memiliki sesuatu hal yang bersifat umum. Generalisasi berguna untuk mengelompokkan sifat-sifat yang umum dari sejumlah aktor atau use case menjadi aktor atau use case tunggal, kemudian bisa mewariskan sifat-sifat umum tadi ke sejumlah aktor atau use case yang lain. Hubungan generalisasi disimbolkan dengan:
Gambar 2.9 Hubungan generalisasi Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
43
2.5.4.2 Activity Diagram
Activity diagram secara sepintas mirip dengan diagram alir (flowchart) yang memperlihatkan aliran kendali dari suatu activity ke activity lainnya. Activity diagram juga dapat digunakan untuk memodelkan langkah-langkah dalam sebuah use case.
Dalam membangun activity diagram dikenal beberapa komponen, yaitu: 1. Awal dan akhir activity Simbol yang digunakan untuk awal activity yaitu: Mulai
Gambar 2.10 Simbol Awal Activity
Mirip dengan simbol awal activity, simbol yang digunakan untuk menandakan akhir dari activity diagram yaitu: Selesai
Gambar 2.11 Simbol Akhir Activity
2. Action state dan Activity state Action state merupakan langkah-langkah dalam activity diagram, dimana state mencerminkan eksekusi dari suatu aksi pada objek. Misalnya pemanggilan operasi pada sebuah objek, menciptakan objek, atau menghancurkan objek. Pekerjaan suatu action state secara umum dipertimbangkan mengambil waktu eksekusi yang tidak signifikan. Action state pada umumnya bersifat atomik, pekerjaannya tidak dapat didekomposisi lebih lanjut. Action state pada activity diagram disimbolkan dengan: X= X+1
Gambar 2.12 Action State Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
44
Activity state dapat didekomposisi lebih lanjut, activity state dapat ditampilkan dengan activity diagram yang lain. Activity state tidak bersifat atomik, yang secara umum berarti membutuhkan beberapa waktu untuk terselesaikan dengan tuntas. Activity state pada activity diagram disimbolkan dengan:
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
45
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
46
2.5.4.3 Class Diagram
Class diagram mendeskripsikan jenis-jenis objek dalam sistem dan berbagai macam hubungan yang terdapat diantara mereka. Class diagram juga menunjukkan properti dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubunganhubungan objek tersebut. Atribut mewakili fitur-fitur struktural dari suatu kelas.
Ada beberapa elemen yang diperlukan dalam membangun sebuah class diagram, yaitu: 1. Kelas, Atribut, dan Operasi Kelas merupakan pendeskripsian sekumpulan objek-objek yang memiliki, atribut, operasi, hubungan, serta behavior yang mirip. Atribut merupakan informasiinformasi atau ciri-ciri yang dimiliki oleh kelas, sedangkan operasi berhubungan dengan perilaku yang berhubungan dengan suatu kelas. Operasi merupakan suatu kegiatan yang dimengerti sebuah kelas untuk dilakukan (Fowler, 2005: 67).
Gambar 2.17 Kelas, Atribut, dan Operasi
2. Hubungan Hubungan memiliki beberapa bentuk, yaitu: a. Hubungan Asosiasi Asosiasi merupakan hubungan antara dua atau lebih kelas yang menspesifikasikan hubungan antara bagian-bagian mereka. Hubungan antara dua buah kelas mengindikasikan bahwa objek pada kelas yang satu “mengenali” objek pada kelas yang lain dan dapat mengirimkan pesan kepada objek tersebut. Asosiasi memiliki multiplisitas yang memberi petunjuk tentang banyaknya instansi dari suatu kelas berhubungan dengan satu instansi kelas Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
47
yang lain pada satu waktu tertentu. Dalam UML, notasi-notasi multiplisitas yang dapat digunakan yaitu:
Tabel 2.1 Multiplisitas
Multiplisitas Satu
Arti 1
Nol atau banyak (tak terbatas)
* (0..*)
Satu atau banyak
1..*
Nol atau satu (asosiasi pilihan)
0..1
Jangkauan tertentu
2..4
Multiple, jangkauan disjoint
2, 4..6, 8
Asosiasi biasanya diberi nama untuk menggambarkan artinya. Asosiasi juga memiliki role, yaitu ujung dari suatu asosiasi yang terhubung ke kelas.
Gambar 2.18 Hubungan Asosiasi
b. Hubungan Agregasi dan Komposisi Agregasi merupakan bentuk hubungan antara suatu keseluruhan ke bagianbagiannya.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
48
Gambar 2.19 Hubungan Agregasi
Komposisi adalah bentuk yang lebih kuat dari agregasi. Bagiannya merupakan milik satu-satunya dari keseluruhan.
Gambar 2.20 Hubungan Komposisi
c. Hubungan Generalisasi Generalisasi diperlukan untuk memperlihatkan hubungan pewarisan (inheritance) antarunsur dalam class diagram. Pewarisan memungkinkan suatu kelas mewarisi semua atau sebagian atribut, operasi, hubungan, serta semantik dari kelas yang berada di atasnya dalam hierarki pewarisan.
Gambar 2.21 Hubungan Generalisasi
d. Hubungan Dependency Dependency menghubungkan dua kelas atau lebih dimana jika terdapat perubahan pada kelas yang satu, maka akan memaksa terjadinya perubahan pada kelas yang lainnya walaupun tidak terdapat asosiasi yang jelas diantara mereka. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
49
e. Hubungan Realisasi Hubungan realisasi digunakan untuk memperlihatkan hubungan antara suatu kelas dengan interface-nya, antara package dengan interface-nya, antara komponen dengan interface-nya, atau antara use case dengan realisasi use case yang bersangkutan.
Gambar 2.22 Hubungan Realisasi
3. Constraint dan Notes Constraint dan notes memberikan keterangan pada bagian-bagian seperti asosiasi, atribut, operasi, dan kelas. Constraint merupakan batasan semantik yang ditandai dengan ekspresi boolean.
Gambar 2.23 Constraint dan Notes
4. Stereotype Kelas mempunyai stereotype, yang menyediakan kemampuan untuk membuat elemen pemodelan yang baru. Beberapa stereotype yang umum untuk suatu kelas adalah: entiti, boundary, dan control.
Kelas entiti merefleksikan entiti dunia nyata. Kelas entiti biasanya independent dari sekitarnya, dan tidak tahu bagaimana cara sekitarnya berkomunikasi dengan sistem. Aplikasinya independent, artinya bisa digunakan untuk lebih dari satu aplikasi. Kelas entiti disebut dengan kelas domain karena berhubungan dengan abstraksi entiti dunia nyata. Kelas boundary menangani komunikasi antara lingkungan sistem dan yang ada di dalam sistem, menyediakan Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
50
interface bagi user atau sistem lain (misalnya interface ke aktor). Kelas control memodelkan urutan behavior spesifik terhadap satu atau lebih use case. Kelas control mengkoordinasi event yang diperlukan untuk merealisasikan behavior spesifik dalam use case. Kelas control biasanya merupakan kelas yang tergantung pada aplikasi. Kelas control bertanggung jawab terhadap arus event dalam use case.
2.5.4.4 Sequence Diagram
Sequence diagram digunakan untuk melihat behavior beberapa objek di dalam use case tunggal. Sequence diagram baik untuk memperlihatkan kolaborasi antarobjek.
Masing-masing sequence diagram menggambarkan aliran-aliran pada suatu use case. Sequence diagram dapat dibaca dengan melihat kepada objek-objek dan pesan-pesan (message). Objek-objek yang berperan dalam aliran diperlihatkan pada kotak empat persegi panjang yang melintas pada bagian atas diagram. Setiap objek memiliki garis hidup (lifeline), yang digambarkan sebagai garis vertikal di bawah nama suatu objek. Garis hidup dimulai pada saat objek terbentuk. Pesan-pesan digambarkan di antara garis hidup yang dimiliki dua objek untuk memperlihatkan bagaimana objek-objek itu saling berkomunikasi.
objek1:Class1
objek2:Class2
: Aktor
Gambar 2.24 Sequence Diagram Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
51
2.5.4.5 Package Diagram
Kelas menunjukkan bentuk dasar penyusunan sebuah sistem borerientasi objek. Meskipun kelas berguna, dibutuhkan sesuatu yang lebih untuk menyusun sistemsistem yang lebih besar. Sebuah package adalah sebuah bentuk pengelompokan yang memungkinkan untuk mengambil setiap bentuk di UML dan mengelompokkan elemen-elemennya dalam tingkatan unit yang lebih tinggi. Kegunaan package yang umum adalah mengelompokkan kelas. Sebuah package dapat terdiri dari sub package dan kelas. Setiap kelas harus memiliki nama unik di dalam packagenya. Dalam diagram, package disimbolkan dengan sebuah folder berlabel:
NewPackage
Gambar 2.25 Package Diagram
2.5.4.6 Deployment Diagram
Deployment diagram menunjukkan susunan fisik sebuah sistem, menunjukkan bagian perangkat lunak mana yang berjalan pada perangkat keras yang mana. Deployment diagram menggambarkan simpul (node) yang saling berhubungan. Simpul adalah elemen fisik yang ada saat aplikasi dijalankan dan mencerminkan suatu sumber daya komputasi, secara umum menggunakan kapasitas memori dan kemampuan pemrosesan. Diagram dengan simpul umum digunakan pada pemodelan client server dimana komponen-komponen suatu aplikasi disebarkan pada tiap-tiap server dengan tujuan mencapai kinerja yang optimum. Simpul disimbolkan dengan kubus. Hubungan antarsimpul dilambangkan dengan garis lurus.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
52
Processor Device
Gambar 2.26 Simpul-Simpul pada Deployment Diagram
Processor Device
Gambar 2.27 Hubungan Antarsimpul pada Deployment Diagram
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
53
BAB 3
ANALISIS DAN PERANCANGAN
3.1
Analisis
Berdasarkan rumusan masalah yang telah dijabarkan pada bab 1, akan dibuat pemodelan berorientasi objek dalam menganalisis dan mendesain perangkat lunak prediksi pergerakan harga saham dengan metode Relative Strength Index (RSI) menggunakan UML.
Untuk mengetahui keperluan yang harus dipenuhi oleh perangkat lunak, pertama-tama akan dilakukan tahap analisis. Analisis yang dilakukan meliputi analisis penggunaan metode Relative Strength Index (RSI), deskripsi umum perangkat lunak, analisis kebutuhan fungsional, tujuan pengembangan perangkat lunak, analisis kebutuhan data, analisis batasan perangkat lunak dan pemodelan use case.
3.1.1 Analisis Penggunaan Metode Relative Strength Index (RSI)
Metode RSI digunakan untuk analisis teknikal secara umum dengan mengikuti langkah-langkah sebagai berikut: 1. Mendapatkan data historis harga penutupan (closing price) harian saham. 2. Membuat grafik dari data historis harga penutupan (closing price) harian saham. 3. Menentukan periode yang akan digunakan. 4. Menghitung nilai RSI harian. 5. Membuat grafik dari nilai RSI harian. 6. Membaca sinyal-sinyal yang muncul. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
54
Bagian yang perlu diperhatikan di sini adalah langkah menghitung nilai RSI harian. Nilai RSI harian dihitung pertama-tama dengan menggunakan rata-rata sederhana/biasa dari harga penutupan (closing price) saham beberapa hari ke belakang, seperti pada rumus (2). Jumlah hari yang digunakan ditentukan oleh periode yang dipilih dari pilihan periode yang disediakan yaitu: 9, 14 atau 25 hari. Dengan demikian, untuk beberapa hari pertama, tidak ada nilai RSI harian. Setelah nilai RSI pertama ditentukan, nilai-nilai RSI berikutnya ditentukan dengan menggunakan Exponential Moving Average, seperti pada rumus (3).
Grafik nilai RSI harian akan digambarkan di bawah grafik harga penutupan (closing price) saham, dengan waktu yang bersesuaian. Sinyal-sinyal yang dikeluarkan oleh RSI kemudian dibaca oleh pengguna.
3.1.2 Deskripsi Umum Perangkat Lunak
Perangkat lunak yang akan dibangun diberi nama SAFIRA (Stock Analyzer For Instant Result Application). Fungsi utama SAFIRA adalah melakukan analisis teknikal terhadap data historis saham dengan menggunakan metode Relative Strength Index (RSI). Perangkat lunak ini akan menerima masukan berupa data historis saham yang diperoleh dari situs penyedia data saham berbagai perusahaan, dalam hal ini http://finance.yahoo.com, yang disimpan dalam file berformat csv. Dengan memproses masukan lainnya dari pengguna berupa parameter-parameter yang akan dipakai dalam proses analisis teknikal, SAFIRA akan menghasilkan keluaran berupa grafik pergerakan harga saham, grafik IHSG serta grafik hasil analisis teknikal dengan menggunakan metode RSI. Perangkat lunak yang dibangun ini merupakan perangkat lunak yang berbasis web.
3.1.3 Analisis Kebutuhan Fungsional
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
55
Berdasarkan deskripsi umum, perangkat lunak SAFIRA ini harus memenuhi kebutuhan-kebutuhan sebagai berikut: 1. SAFIRA dapat melakukan pengelolaan data saham. Pengelolaan tersebut meliputi proses penampilan daftar saham di perangkat lunak, menambah data saham, memutakhirkan data saham, mengunduh data historis saham dan menyimpan data harga saham dalam file csv. 2. Selain menampilkan daftar harga saham, SAFIRA juga dapat menampilkan daftar IHSG dari suatu bursa saham serta dapat melakukan pengelolaan data IHSG seperti menambah data IHSG serta memutakhirkan data IHSG tersebut dan dapat menampilkan grafik IHSG. 3. SAFIRA dapat menampilkan grafik harga saham berdasarkan data historis saham yang dipilih. Data yang diproses adalah data historis saham pada file data saham yang terdiri atas nama dan id perusahaan, tanggal transaksi, harga open, harga high, harga low, harga close dan volume. 4. SAFIRA harus dapat memfasilitasi pengguna dalam melakukan analisis teknikal menggunakan metode Relative Strength Index. Sebelum melakukan analisis, pengguna harus memasukkan data parameter metode RSI yaitu jumlah periode untuk perhitungan metode RSI serta panjang rentang waktu pergerakan harga saham yang akan dianalisis. Kemudian setelah itu, SAFIRA dapat menampilkan grafik hasil analisis RSI. 5. SAFIRA dapat menampilkan sinyal-sinyal (sinyal beli dan jual) yang merekomendasikan tindakan yang dapat dilakukan pengguna sesuai dengan hasil analisis terhadap pergerakan harga saham dengan metode RSI.
3.1.4 Tujuan Pengembangan Perangkat Lunak
SAFIRA adalah sebuah perangkat lunak yang menerima masukan berupa data historis harga penutupan (closing price) saham, dan menghasilkan keluaran berupa grafik harga saham dan grafik nilai RSI, serta sinyal-sinyal perdagangan jika ada. Perangkat lunak ini diharapkan mampu membantu pelaku pasar modal dalam mengambil keputusan perdagangan. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
56
3.1.5 Analisis Kebutuhan Data
Perangkat lunak SAFIRA memiliki keterhubungan dengan dua jenis data, yaitu data masukan dan data keluaran.
3.1.5.1 Data Masukan
Data masukan yang diperlukan oleh perangkat lunak SAFIRA merupakan data yang akan digunakan dalam proses analisis teknikal menggunakan metode RSI. Data tersebut antara lain: 1. Data historis saham Data ini berupa tabel data historis pergerakan harga saham yang berasal dari data transaksi perdagangan saham di seluruh dunia yang disediakan oleh situs http://finance.yahoo.com. Akan tetapi, data historis saham yang dipakai pada perangkat lunak ini hanya berasal dari Jakarta Stock Exchange (Bursa Efek Jakarta). Data ini kemudian akan dianalisis dengan menggunakan metode RSI sehingga dapat diketahui waktu yang tepat dalam melakukan tindakan jual atau beli. Berdasarkan rumus metode RSI, data ini setidaknya harus menyimpan informasi mengenai nama perusahaan, id perusahaan, tanggal transaksi, harga pembukaan (open), harga penutupan (close), harga tertinggi (high) dan harga terendah (low). 2. Parameter metode RSI Data ini berisi parameter-parameter yang dibutuhkan untuk mendapatkan hasil analisis sesuai kebutuhan pengguna. Parameter tersebut antara lain adalah jumlah periode untuk perhitungan metode RSI serta panjang rentang waktu pergerakan harga saham yang akan dianalisis.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
57
3.1.5.2 Data Keluaran
Data keluaran yang dihasilkan oleh perangkat lunak SAFIRA adalah:
1. Grafik pergerakan harga saham Grafik harga saham menampilkan pergerakan harga saham dalam suatu rentang waktu tertentu sesuai dengan periode analisis dari masukan pengguna. Grafik tersebut menggambarkan dan memetakan harga saham pada sumbu y dan tanggal transaksi perdagangan saham pada sumbu x. 2. Grafik hasil analisis RSI Grafik hasil analisis menampilkan hasil perhitungan analisis pergerakan saham menggunakan metode RSI sesuai dengan periode analisis dari masukan pengguna, yang menggambarkan dan memetakan periode yang dianalisis pada sumbu x dan nilai RSI pada sumbu y. 3. Sinyal-sinyal perdagangan Sinyal-sinyal tersebut adalah sinyal jual dan sinyal beli yang dihasilkan oleh RSI. Sinyal-sinyal tersebut ditampilkan pada grafik hasil analisis dan laporan yang memuat tanggal transaksi dan sinyal yang dihasilkan.
3.1.6 Analisis Batasan Perangkat Lunak
Perangkat lunak SAFIRA mempunyai batasan-batasan yaitu sebagai berikut: 1. Perangkat lunak SAFIRA hanya dapat digunakan oleh satu pengguna pada suatu waktu. 2. Perangkat lunak hanya dapat menggambarkan satu grafik harga saham dan satu grafik RSI untuk saham yang bersesuaian pada suatu waktu. 3. Perangkat lunak SAFIRA hanya menerima masukan data historis harga saham dalam format CSV/comma-separated value. 4. Perangkat lunak hanya dapat membaca sinyal-sinyal yang dapat dikenali secara matematis, bukan secara visual.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
58
3.1.7 Pemodelan Use Case
Berdasarkan hasil analisis kebutuhan fungsional di atas, perangkat lunak SAFIRA dapat dimodelkan ke dalam sebuah model use case yang terdiri atas diagram use case, definisi aktor, definisi use case, dan skenario use case.
3.1.7.1 Diagram Use Case
Perangkat lunak SAFIRA dapat dimodelkan ke dalam sebuah diagram use case seperti yang ditunjukkan pada Gambar 3.1 berikut ini:
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
59
Gambar 3.1 Use Case Diagram SAFIRA Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
3.1.7.2 Definisi Aktor
Pengguna perangkat lunak SAFIRA dapat didefinisikan menjadi empat aktor yaitu: pengguna, akademis, pialang saham dan penjadwal. Penjelasan aktor yang terdapat pada perangkat lunak ini dapat dilihat pada Tabel 3.1 berikut ini:
Tabel 3.1 Aktor pada Model Use Case SAFIRA
No.
Aktor
Deskripsi
1
Pengguna
Orang yang menggunakan perangkat lunak untuk memprediksi pergerakan harga saham dengan
metode
RSI
yang
kemudian
dispesialisasikan menjadi Akademis dan Pialang Saham. 2
Akademis
Pengguna yang dispesialisasikan untuk menggunakan perangkat lunak ini, yang berasal dari kalangan umum yang awam tentang saham.
3
Pialang Saham
Pengguna yang dispesialisasikan untuk menggunakan perangkat lunak ini, yang berasal dari kalangan yang mengerti tentang seluk beluk saham.
4
Penjadwal
Benda yang akan melakukan penjadwalan terhadap proses pengunduhan data saham yang bersifat real time.
3.1.7.3 Definisi Use Case
Diagram use case perangkat lunak SAFIRA menggambarkan 11 buah use case. Penjelasan masing-masing use case tersebut dapat dilihat pada Tabel 3.2 berikut ini: Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
61
Tabel 3.2 Definisi Use Case perangkat lunak SAFIRA
ID Use Case
Nama Use Case
Deskripsi
UC-01
Melihat Informasi IHSG
Use case yang menggambarkan langkah
aktor
dalam
melihat
informasi IHSG (Indeks Harga Saham Gabungan) dari berbagai negara
seperti
IHSG
JKSE,
Hangseng, Nikkei, dan lain-lain sesuai dengan yang terdapat pada situs http://finance.yahoo.com. UC-02
Melihat Dashboard IHSG Harian
Use case yang menggambarkan langkah dashboard
aktor
dalam
IHSG
melihat
harian
yang
berbentuk laporan (report) IHSG dari suatu negara. UC-03
Melihat Informasi Historis IHSG
Use case yang menggambarkan langkah
aktor
dalam
melihat
informasi IHSG pada waktu yang sebelumnya (bukan harga indeks saham pada hari ini). UC-04
Melihat Informasi Saham
Use case yang menggambarkan langkah
aktor
dalam
melihat
informasi saham-saham beserta atribut-atributnya yang terdapat pada suatu bursa saham. UC-05
Melihat Harian
Dashboard
Saham Use case yang menggambarkan langkah dashboard
aktor
dalam
melihat
harian saham-saham
yang berbentuk laporan (report) Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
62
dari suatu bursa saham.
Tabel 3.2 Definisi Use Case perangkat lunak SAFIRA (lanjutan)
UC-06
Melihat
Informasi
Historis Use case yang menggambarkan
Saham
langkah
aktor
dalam
melihat
informasi saham pada waktu yang sebelumnya
sesuai
dengan
permintaan pengguna. UC-07
Melakukan
Analisis
Teknikal Use case yang menggambarkan
Menggunakan RSI
langkah aktor dalam memasukkan parameter-parameter
yang
diperlukan untuk proses analisis teknikal
dengan
metode
RSI,
seperti: periode, rentang waktu, jenis metode yang dalam hal ini menggunakan metode RSI, data historis
saham
dari
pengunduhan
proses kemudian
parameter-parameter tersebut akan diproses
dengan
menggunakan
formulasi dari RSI sehingga dapat ditampilkan grafik hasil analisis RSI. UC-08
Mengunduh Data IHSG setiap Use case yang menggambarkan 15 menit
proses pengunduhan data IHSG secara
otomatis
dari
berbagai
negara setiap 15 menit sehingga data IHSG dapat update. UC-09
Mengunduh Data Historis IHSG
Use case yang menggambarkan proses pengunduhan data historis IHSG secara otomatis sehingga
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
63
aktor dapat mengetahui data IHSG pada waktu yang sebelumnya.
Tabel 3.2 Definisi Use Case perangkat lunak SAFIRA (lanjutan)
UC-10
Mengunduh Data Saham setiap Use case yang menggambarkan 30 menit
proses pengunduhan data saham perusahaan dari suatu bursa saham secara otomatis sehingga data saham dapat update setiap 30 menit.
UC-11
Mengunduh Saham Manual
Data
Historis Use case yang menggambarkan langkah aktor dalam mengunduh data saham perusahaan dari suatu bursa saham pada waktu yang sebelumnya yang kemudian data historis saham ini dipakai untuk melakukan analisis teknikal.
3.1.7.4 Skenario Use Case
Pada bagian ini akan dijabarkan skenario normal dari masing-masing use case pada perangkat lunak SAFIRA, dimana skenario masing-masing use case digambarkan dalam bentuk Activity Diagram yaitu diagram yang menjelaskan rincian bagaimana sebuah use case berjalan.
3.1.7.4.1 Skenario Use Case Melihat Informasi IHSG
Skenario normal dari use case Melihat Informasi IHSG dapat dilihat pada Gambar 3.2.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
64
Gambar 3.2 Activity Diagram untuk Use Case Melihat Informasi IHSG
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) pasar saham yang dipilih. Jika data tersedia maka akan ditampilkan IHSG per pasar saham pada posisi pengambilan data terakhir. Sedangkan jika data tidak tersedia maka akan dilakukan pengecekan ulang data dengan masukan pasar saham yang berbeda dengan yang sebelumnya. Jadi, Activity Diagram ini akan menghasilkan keluaran (output) IHSG per pasar saham.
3.1.7.4.2 Skenario Use Case Melihat Dashboard IHSG Harian
Skenario normal dari use case Melihat Dashboard IHSG Harian dapat dilihat pada Gambar 3.3.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
65
Gambar 3.3 Activity Diagram untuk Use Case Melihat Dashboard IHSG Harian
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) IHSG yang dipilih. Jika data tersedia maka akan ditampilkan data IHSG pada posisi pengambilan data terakhir. Sedangkan jika data tidak tersedia maka akan dilakukan pengecekan ulang data dengan masukan IHSG yang berbeda dengan yang sebelumnya. Data IHSG pada posisi terakhir akan digunakan sebagai sumber data untuk menampilkan Dashboard IHSG dan Grafik IHSG. Dengan ditampilkannya Dashboard IHSG dan Grafik IHSG maka proses di dalam Activity Diagram ini selesai.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
66
3.1.7.4.3 Skenario Use Case Melihat Informasi Historis IHSG
Skenario normal dari use case Melihat Informasi Historis IHSG dapat dilihat pada Gambar 3.4.
Gambar 3.4 Activity Diagram untuk Use Case Melihat Informasi Historis IHSG
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) IHSG yang dipilih. Jika data tersedia maka akan diambil data historis IHSG sesuai dengan rentang waktu yang diinginkan aktor. Sedangkan jika data tidak tersedia maka akan dilakukan pengecekan ulang data dengan masukan IHSG yang berbeda dengan yang sebelumnya. Setelah data historis IHSG diambil maka data historis IHSG akan di query ke database dan digunakan sebagai sumber Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
67
data untuk menampilkan Data Historis IHSG dan Grafik Historis IHSG. Dengan ditampilkannya Data Historis IHSG dan Grafik Historis IHSG maka proses di dalam Activity Diagram ini selesai.
3.1.7.4.4 Skenario Use Case Melihat Informasi Saham
Skenario normal dari use case Melihat Informasi Saham dapat dilihat pada Gambar 3.5.
Gambar 3.5 Activity Diagram untuk Use Case Melihat Informasi Saham
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) IHSG yang dipilih. Jika data tersedia maka akan ditampilkan data saham per IHSG pada posisi pengambilan data terakhir. Sedangkan Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
68
jika data tidak tersedia maka akan dilakukan pengecekan ulang data dengan masukan IHSG yang berbeda dengan yang sebelumnya. Jadi, Activity Diagram ini akan menghasilkan keluaran (output) data saham per IHSG.
3.1.7.4.5 Skenario Use Case Melihat Dashboard Saham Harian
Skenario normal dari use case Melihat Dashboard Saham Harian dapat dilihat pada Gambar 3.6.
Gambar 3.6 Activity Diagram untuk Use Case Melihat Dashboard Saham Harian
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) saham yang dipilih. Jika data tersedia maka akan di Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
69
query data saham pada posisi pengambilan data terakhir. Sedangkan jika data tidak tersedia maka akan dilakukan pengecekan ulang data dengan masukan saham yang berbeda dengan yang sebelumnya. Data saham pada posisi terakhir akan digunakan sebagai sumber data untuk menampilkan Dashboard Saham dan Grafik Harga Saham. Dengan ditampilkannya Dashboard Saham dan Grafik Harga Saham maka proses di dalam Activity Diagram ini selesai.
3.1.7.4.6 Skenario Use Case Melihat Informasi Historis Saham
Skenario normal dari use case Melihat Informasi Historis Saham dapat dilihat pada Gambar 3.7.
Gambar 3.7 Activity Diagram untuk Use Case Melihat Informasi Historis Saham
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) saham yang dipilih. Jika data tersedia maka akan diambil Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
70
data historis saham di dalam database sesuai dengan rentang waktu yang diinginkan aktor. Sedangkan jika data tidak tersedia maka akan dilakukan pengecekan ulang data dengan masukan saham yang berbeda dengan yang sebelumnya. Setelah data historis saham diambil maka data historis saham akan di query ke database dan digunakan sebagai sumber data untuk menampilkan Data Historis Saham dan Grafik Historis Saham. Dengan ditampilkannya Data Historis Saham dan Grafik Historis Saham maka proses di dalam Activity Diagram ini selesai.
3.1.7.4.7 Skenario Use Case Melakukan Analisis Teknikal Menggunakan RSI
Skenario normal dari use case Melakukan Analisis Teknikal Menggunakan RSI dapat dilihat pada Gambar 3.8.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
71
Gambar 3.8 Activity Diagram untuk Use Case Melakukan Analisis Teknikal Menggunakan RSI
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
72
Pada keadaan awal akan dilakukan pengecekan data di tabel pada database berdasarkan masukan (input) rentang waktu yang diinginkan. Jika data tersedia maka akan dilakukan penginisialisasian parameter RSI melalui masukan periode RSI yang dipilih. Sedangkan jika data tidak tersedia maka akan dilakukan pengunduhan (download) data historis saham secara manual, setelah dilakukan pengunduhan, maka data historis saham dimasukkan ke dalam database dan ulangi proses dari awal lagi. Setelah dilakukan inisialisasi parameter RSI, maka dilakukan perhitungan kenaikan (Up) dan penurunan (Down) saham, kemudian dilakukan perhitungan AvgUp dan AvgDown. Jika jumlah hari lebih kecil atau tidak sama dengan jumlah periode, dilakukan perhitungan Up dan Down, sedangkan jika jumlah hari = periode + 1, maka dilakukan perhitungan AvgUp dan AvgDown dengan EMA (Exponential Moving Average). Setelah didapat AvgUp dan AvgDown sesuai dengan rentang waktu, maka dihitung nilai RS dan RSI kemudian dilakukan analisis terhadap sinyal beli dan jual dan hasil analisis disimpan ke buffer. Jika rentang waktu belum tercapai, maka dilakukan kembali perhitungan Up dan Down. Sedangkan jika rentang waktu tercapai maka hasil analisis RSI akan digunakan sebagai sumber data untuk menampilkan Tabel RSI dan Grafik RSI. Dengan ditampilkannya Tabel RSI dan Grafik RSI maka proses di dalam Activity Diagram ini selesai.
3.1.7.4.8 Skenario Use Case Mengunduh Data IHSG setiap 15 menit
Skenario normal dari use case Mengunduh Data IHSG setiap 15 menit dapat dilihat pada Gambar 3.9.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
73
Gambar 3.9 Activity Diagram untuk Use Case Mengunduh Data IHSG setiap 15 menit
Proses pada Activity Diagram dimulai dengan mengeksekusi sistem penjadwalan setiap 15 menit. Setelah itu, dilakukan proses memformat URL untuk situs http://finance.yahoo.com, sehingga dapat diunduh data IHSG harian. Proses yang selanjutnya yaitu membangun koneksi ke http://finance.yahoo.com tetapi harus dilakukan konfigurasi jaringan terlebih dahulu yaitu dengan melakukan setting proxy. Jika koneksi ke situs http://finance.yahoo.com berhasil, maka data IHSG harian dapat diunduh, sedangkan jika koneksi gagal maka file yang error akan dicatat dalam file log. Setelah data IHSG harian berhasil diunduh maka data tersebut disimpan dalam format file csv. Kemudian data IHSG dalam format file csv tersebut dimasukkan ke dalam tabel IHSG harian yang terdapat di database. Jika data IHSG berhasil Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
74
dimasukkan ke dalam database maka proses pada Activity Diagram ini akan selesai, sedangkan jika gagal maka akan dicatat dalam file log.
3.1.7.4.9 Skenario Use Case Mengunduh Data Historis IHSG
Skenario normal dari use case Mengunduh Data Historis IHSG dapat dilihat pada Gambar 3.10.
Gambar 3.10 Activity Diagram untuk Use Case Mengunduh Data Historis IHSG
Proses pada Activity Diagram dimulai dengan mengeksekusi sistem penjadwalan sekali dalam sehari. Setelah itu, dilakukan proses memformat URL untuk situs http://finance.yahoo.com, sehingga dapat diunduh data historis IHSG. Proses Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
75
yang selanjutnya yaitu membangun koneksi ke http://finance.yahoo.com tetapi harus dilakukan konfigurasi jaringan terlebih dahulu yaitu dengan melakukan setting proxy. Jika koneksi ke situs http://finance.yahoo.com berhasil, maka data historis IHSG dapat diunduh, sedangkan jika koneksi gagal maka file yang error akan dicatat dalam file log. Setelah data historis IHSG berhasil diunduh maka data tersebut disimpan dalam format file csv. Kemudian data IHSG dalam format file csv tersebut dimasukkan ke dalam tabel historis IHSG yang terdapat di database. Jika data IHSG berhasil dimasukkan ke dalam database maka proses pada Activity Diagram ini akan selesai, sedangkan jika gagal maka akan dicatat dalam file log.
3.1.7.4.10 Skenario Use Case Mengunduh Data Saham setiap 30 menit
Skenario normal dari use case Mengunduh Data Saham setiap 30 menit dapat dilihat pada Gambar 3.11.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
76
Gambar 3.11 Activity Diagram untuk Use Case Mengunduh Data Saham setiap 30 menit
Proses pada Activity Diagram dimulai dengan mengeksekusi sistem penjadwalan setiap 30 menit. Setelah itu, dilakukan proses memformat URL untuk situs http://finance.yahoo.com, sehingga dapat diunduh data saham harian. Proses yang selanjutnya yaitu membangun koneksi ke http://finance.yahoo.com tetapi harus dilakukan konfigurasi jaringan terlebih dahulu yaitu dengan melakukan setting proxy. Jika koneksi ke situs http://finance.yahoo.com berhasil, maka data saham harian dapat Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
77
diunduh, sedangkan jika koneksi gagal maka file yang error akan dicatat dalam file log. Setelah data saham harian berhasil diunduh maka data tersebut disimpan dalam format file csv. Kemudian data saham dalam format file csv tersebut dimasukkan ke dalam tabel saham harian yang terdapat di database. Jika data saham berhasil dimasukkan ke dalam database maka proses pada Activity Diagram ini akan selesai, sedangkan jika gagal maka akan dicatat dalam file log.
3.1.7.4.11 Skenario Use Case Mengunduh Data Historis Saham Manual
Skenario normal dari use case Mengunduh Data Historis Saham Manual dapat dilihat pada Gambar 3.12.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
78
Gambar 3.12 Activity Diagram untuk Use Case Mengunduh Data Historis Saham Manual
Proses pada Activity Diagram dimulai dengan pengecekan data di tabel pada database berdasarkan masukan (input) saham dan rentang waktu yang diinginkan pengguna. Jika data tersedia maka tidak perlu mengunduh data saham itu lagi. Sedangkan jika data tidak tersedia, maka dilakukan proses memformat URL untuk situs http://finance.yahoo.com, sehingga dapat diunduh data historis saham. Proses yang selanjutnya yaitu membangun koneksi ke http://finance.yahoo.com tetapi harus dilakukan konfigurasi jaringan terlebih dahulu yaitu dengan melakukan setting proxy. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
79
Jika koneksi ke situs http://finance.yahoo.com berhasil, maka data historis saham dapat diunduh, sedangkan jika koneksi gagal maka file yang error akan dicatat dalam file log kemudian diberitahukan kepada pengguna. Setelah data historis saham berhasil diunduh maka data tersebut disimpan dalam format file csv. Kemudian data historis saham dalam format file csv tersebut dimasukkan ke dalam tabel historis saham yang terdapat di database. Jika data historis saham berhasil dimasukkan ke dalam database maka proses pada Activity Diagram ini akan selesai, sedangkan jika gagal maka akan dicatat dalam file log.
3.2
Perancangan
Pada bagian ini akan dijelaskan perancangan perangkat lunak yang akan dibangun, dengan berdasarkan pada analisis perangkat lunak di atas. Perancangan yang akan dilakukan meliputi perancangan kelas, perancangan antarmuka dan perancangan logika data dari perangkat lunak yang akan dibangun.
Perancangan Kelas
Sebelum masuk ke perancangan Class Diagram, sebaiknya kita memahami terlebih dahulu bagaimana sebenarnya proses yang terjadi antara client dan server pada aplikasi berbasiskan web. Dengan memahami cara kerjanya tentunya akan lebih mudah untuk menentukan pola (patterns) yang benar-benar sesuai sebagai dasar untuk melakukan perancangan aplikasi secara keseluruhan.
HTTP Requests
HTTP Request merupakan kejadian (event) yang dikirimkan oleh client untuk meminta satu atau lebih resources kepada server. Dalam konteks aplikasi berbasiskan web, resources yang diminta biasanya berupa file terformat yang dapat diterjemahkan langsung oleh browser, seperti HTML dan javascript. Selain itu, resources juga dapat Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
80
berupa file dalam format gambar (contoh: *.jpeg, *.gif, *.png) dan bahkan bisa juga berupa executable-file (contoh: *.exe, *.sh), compressed-file (contoh: *.rar, *.zip) dan sebagainya.
Berdasarkan metode pengiriman datanya, HTTP Request dapat dikategorikan kedalam dua jenis yaitu GET atau POST. Gambar di bawah memperlihatkan bagaimana HTTP Request ini terjadi antara client dan server.
Gambar 3.13 HTTP Request diperlihatkan sebagai suatu kejadian inisialisasi antara client dan server
Dari gambar diatas terlihat bahwa client mengirimkan kejadian (event) berupa HTTP Request yang diinisialisasi melalui browser kepada antar muka aplikasi yang ada di server, dimana metode pengiriman yang dilakukan dapat berupa GET atau POST. Dari gambar kita mengidentifikasi antar muka aplikasi sebagai lapisan presentasi yang merupakan bagian dari server process.
Event Evaluation
HTTP Request yang dikirim oleh client selanjutnya tidak akan diproses oleh antar muka aplikasi tetapi akan diteruskan dan dievaluasi terlebih dahulu oleh server process yang lainnya untuk menentukan resources yang sesuai dan jika diperlukan akan dilakukan kolaborasi dengan objek-objek database. Evaluasi ini tentunya akan Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
81
melibatkan interaksi terhadap proses bisnis dari aplikasi. Sangat dianjurkan bahwa proses bisnis dari sistem harus dievaluasi dan dimengerti terlebih dahulu sebelum fisik sistem diimplementasikan, itulah mengapa kita memerlukan tahapan analisis di bab sebelumnya.
Lapisan yang bertugas mengevaluasi HTTP Request ini akan diidentifikasi sebagai lapisan bisnis dan lapisan yang nantinya berinteraksi dengan objek-objek database diidentifikasi sebagai lapisan data. Gambar di bawah memperlihatkan bagaimana lapisan presentasi mengirimkan pesan kepada lapisan bisnis yang berhubungan langsung dengan lapisan data untuk mengevaluasi input yang tepat untuk setiap HTTP Request yang dikirimkan oleh client.
Gambar 3.14 Interaksi antara lapisan presentasi, bisnis dan data
Pemisahan setiap server process kedalam lapisan presentasi, bisnis dan data akan memudahkan dalam perancangan, implementasi dan perawatan sebuah aplikasi. Bila terjadi kesalahan atau ada bagian tertentu yang ingin diubah, misal di bagian antar muka, maka hanya lapisan presentasinya saja yang perlu dirubah tanpa harus menyentuh atau memodifikasi lapisan bisnis ataupun data. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
82
Output States
Selain menangani input oleh client, lapisan presentasi juga bertanggung jawab untuk mengirimkan kembali output yang sesuai (biasanya adalah halaman HTML) beserta interaksinya kepada client. Setiap response yang berasal dari lapisan di bawahnya akan dikirimkan kembali kepada client berupa HTTP Response. HTTP Response ini selanjutnya akan dikirimkan kembali ke client dan diformat oleh browser untuk ditampilkan outputnya. Gambar dibawah memperlihatkan response dari server process kepada client.
Gambar 3.15 Web page output dari server ke client Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
83
Untuk menentukan output yang sesuai, lapisan presentasi memerlukan akses ke informasi bisnis. Ini dimungkinkan dengan cara mengirimkan pesan kepada lapisan bisnis yang kemudian akan diteruskan kepada lapisan pengolahan data, kemudian data yang diperoleh dari lapisan data akan dikirimkan kembali ke lapisan presentasi untuk dikirimkan kemudian diformat dan ditampilkan oleh browser client.
Perancangan Class
Berdasarkan konsep di atas, dapat diidentifikasi proses yang terjadi di server ke dalam tiga lapisan yang memiliki tanggung jawabnya masing-masing. Dalam konteks perancangan aplikasi berbasiskan web, pemisahan server process tersebut ke dalam tiga lapisan dikenal luas sebagai pola Model-View-Controller (MVC patterns) dimana pola ini sangat popular dan yang paling banyak digunakan sebagai framework standar untuk pembuatan aplikasi web modern. Gambar di bawah memperlihatkan bagaimana pola MVC ini diilustrasikan.
Gambar 3.16 Penerapan pola MVC
Lapisan pada konsep di sub bab sebelumnya dapat dianalogikan sebagai berikut ke dalam pola MVC: Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
84
1. Lapisan Data: Model 2. Lapisan Presentasi: View 3. Lapisan Bisnis: Controller
Setiap kejadian akan menyebabkan controller untuk merubah model, view bahkan bisa juga keduanya. Ketika Controller merubah model data, seluruh view yang terkait akan secara otomatis memperbaharui keadaannya. Demikian juga ketika Controller merubah View, View akan mengambil data langsung ke Model untuk memperbaharui keadaannya secara langsung.
Pada saat perancangan sistem, baik Model, View maupun Controller akan diimplementasikan masing-masing ke dalam sebuah Class. Berikut adalah gambar dari Class yang akan menjadi dasar perancangan sistem.
Gambar 3.17 Struktur Class Diagram dasar
Pada gambar terlihat bahwa View dan Controller memiliki ketergantungan kepada Model dan Controller juga memiliki ketergantungan dengan View. Dalam class diagram, hubungan tersebut diperlihatkan sebagai tanda panah putus-putus.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
85
Selanjutnya struktur class dasar tersebut akan diperluas dengan menambahkan class bantu yang membantu dan melengkapi class dasar di atas. Gambar di bawah memperlihatkan struktur class diagram yang telah disempurnakan.
Gambar 3.18 Struktur Class Diagram yang sudah disempurnakan
Dari gambar terlihat bahwa terdapat tiga class tambahan yaitu Object Loader, Error Handler dan Data Access. Adapun maksud dan tujuan penambahan class tersebut adalah sebagai berikut: 1. Object Loader berfungsi membantu Controller untuk berinteraksi dengan Model dan objek-objek eksternal dari sistem seperti file konfigurasi, pustaka (library) pendukung dan script-script eksternal lainnya. 2. Error Handler berfungsi menampilkan pesan-pesan kesalahan terhadap request dan response yang mungkin terjadi selama pemrosesannya di Controller. 3. Data Access berfungsi sebagai jembatan yang memudahkan Model berinteraksi dan berkomunikasi dengan database.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
86
Struktur class diagram di atas selanjutnya akan menjadi framework (kerangka kerja) dalam pembuatan fungsi-fungsi spesifik yang akan diimplementasikan oleh aplikasi SAFIRA.
Selanjutnya akan diaplikasikan framework tersebut ke dalam aplikasi itu sendiri. Perancangan terhadap pemodelan aplikasi dilakukan dengan memanfaatkan class yang ada pada framework dengan cara menurunkan (mewariskan) class di level framework kepada class di level aplikasinya. Untuk lebih jelasnya berikut diberikan gambar pemisahan class di level framework dan di level aplikasi.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
87
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
Gambar 3.19 Pemisahan Class Diagram untuk level Framework dan Aplikasi lengkap dengan atribut dan operasinya
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
Dalam gambar terlihat bahwa class Model dan Controller akan selalu diturunkan oleh class di level aplikasi, sedangkan class View tidak akan diturunkan kepada class manapun tetapi akan diimplementasikan sebagai file template dalam format HTML. Untuk class-class lainnya tidak akan digunakan secara langsung di level aplikasi, karena akan diatur penggunaan dan aksesnya oleh level framework. Kelas-kelas pada level aplikasi merupakan kelas-kelas turunan dari kelas framework yang digunakan untuk merealisasikan fungsi-fungsi khusus untuk aplikasi SAFIRA ini.
Dengan memisahkan model kedalam konteks framework dan aplikasi akan memudahkan kita dalam pengembangan aplikasi kedepannya. Level framework akan terus berlaku konsisten dalam implementasi aplikasi, sedangkan level aplikasi akan terus bertambah dinamis tergantung kompleksitas dan skalabilitas aplikasi.
Perancangan Antarmuka Desain antarmuka pengguna merupakan proses perancangan yang paling ringan dan implementasinya juga tidak memakan waktu yang lama. Berikut ini akan membahas fitur-fitur yang akan diimplementasikan sebagai antarmuka aplikasi yang berinteraksi langsung dengan pengguna. Adapun langkah untuk melakukan perancangan antarmuka perangkat lunak ini dibagi ke dalam dua tahapan, yaitu: 1. Memetakan navigasi antarhalaman aplikasi. 2. Merancang dialog untuk setiap kejadian yg mungkin dilakukan oleh pengguna.
Navigasi Antarhalaman
Sebuah antarmuka pengguna tentunya akan melibatkan banyak screen yang dalam konteks aplikasi web sering disebut sebagai halaman web. Sebuah antarmuka aplikasi harus dapat mengkoordinasikan halaman-halaman tersebut sehingga akan diperoleh ketersambungan informasi antara halaman yang satu dengan halaman yang lainnya. Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
90
Untuk itulah diperlukan gambar konsep yang dapat menjelaskan bagaimana keterkaitan antarhalaman tersebut. Pada Tugas Akhir ini, statechart diagram akan digunakan untuk memperlihatkan koordinasi antarhalaman tersebut sehingga akan jelas tergambar navigasi dari aplikasi SAFIRA. Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang diterima, dimana dalam hal ini halaman merupakan objek dari class view.
Gambar 3.20 Statechart diagram memperlihatkan navigasi dari aplikasi
Gambar kotak pada gambar di atas memperlihatkan sebuah kedaan (state) yang dalam konteks perancangan antarmuka nantinya akan diimplementasikan sebagai sebuah halaman web. Anak panah menggambarkan aliran kontrol dan akan menggerakkan kejadian yang menyebabkan sebuah halaman menjadi aktif atau menerima fokus. Anak panah juga menggambarkan bagaimana urutan munculnya halaman-halaman tersebut. Jenis halaman pada gambar dapat juga kita bedakan
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index (RSI), 2009.
91
berdasarkan stereotypenya yg diberi simbol <> pada bagian atas kotak. Adapun stereotype yg bisa diidentifikasi adalah sebagai berikut: 1. <> Halaman yang pertama sekali dibuka oleh pengguna setiap pertama sekali mengakses aplikasi. Dalam tahapan implementasi, stereotype ini akan lebih dikenal sebagai homepage. 2. <<screen>> Halaman-halaman spesifik fungsi lainnya penyusun aplikasi SAFIRA yang tentunya dapat berinteraksi dengan halaman-halaman lain dan memungkinkan juga untuk berinteraksi dengan halaman <>. 3. <