PROGRAM BANTU
PEMILIHAN SAHAM BERDASARKAN
INDIKATOR MACD
SKRIPSI
Diajukan Untuk Memenuhi Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika
Oleh:
Maria Endah Sari Palupi
NIM : 055314034
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
PROGRAM AIDS
STOCK SELECTION BASED ON
THE MACD INDICATOR
A THESIS
Presented as Partial Fulfillment of the Requirements To Obtain Sarjana Teknik Degree
In Informatics Engineering Department
By :
Maria Endah Sari Palupi
055314034
INFORMATICS ENGINEERING STUDY PROGRAM
INFORMATICS ENGINEERING DEPARTMENT
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
MOTTO
Berserulah kepadaku, maka Aku akan menjawab engkau dan akan
memberitahukan kepadamu hal yang besar dan yang tak terpahami, yakni hal-hal yang tidak kau ketahui.
(Yeremia 33:3)
Bunga yang tidak akan layu sepanjang jaman adalah kebajikan. (William Cowper)
Janganlah larut dalam satu kesedihan karena masih ada hari esok yang menyongsong dengan sejuta kebahagiaan.
Jangan lihat masa lampau dengan penyesalan, jangan pula lihat masa depan dengan ketakutan, tapi lihatlah sekitar anda dengan penuh kesadaran.
ABSTRAK
Banyak cara seseorang dalam mengelola uangnya, ada yang dengan dibelikan property, ditabung atau diinvestasikan ke dalam suatu usaha dengan tujuan mendapatkan keuntungan setelah masa / periode yang ditentukan sebelumnya. Berinvestasi di pasar modal merupakan pilihan yang banyak dilakukan untuk mendapatkan keuntungan yang besar. Akan tetapi sekarang ini orang awam banyak yang kurang memahami pasar modal sehingga mereka cenderung menggunakan intuisi daripada analisis dalam berinvestasi. Kondisi ini mengakibatkan mereka harus menghadapi resiko yang tinggi dalam berinvestasi.
Untuk meminimalkan resiko tersebut diperlukan suatu program bantu yang mampu menganalisis sesuai dengan keadaan yang terjadi di pasar modal, yang akan menampilkan informasi berupa kapan saham sebaiknya dibeli dan kapan saham sebaiknya dijual. Salah satu cara adalah menggunakan indikator Moving Average Convergence Divergence(MACD).
ABSTRACT
Many ways a person in managing his money, there is a property bought, saved or invested into a venture with the aim to benefit after a period / periods are predetermined. Investing in the stock market is an option that many do to get a big advantage. But now many ordinary people who do not understand the stock market so they tend to use intuition rather than analysis of investing. These conditions cause them to face a high risk in investing.
To minimize these risks we need a decision support system that is able to analyze in accordance with the circumstances that occurred in the capital market, which will display information such as when shares should be bought and when stock should be sold. One way is to use indicators Moving Average Convergence Divergence (MACD).
KATA PENGANTAR
Puji syukur saya ucapkan ke hadirat Tuhan Yang Maha Esa atas berkat dan limpahan kasih karunia yang telah diberikan-Nya sehingga saya dapat menyelesaikan skripsi ini dengan judul “PROGRAM BANTU PEMILIHAN SAHAM BERDASARKAN INDIKATOR MACD".
Dorongan serta nasihat dari berbagai pihak sangat membantu sampai tersusunnya skripsi ini. Untuk itu, saya ingin mengucapkan terima kasih kepada :
1. Bapak Yosef Agung Cahyanta, S.T., M.T. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
2. Bapak Puspaningtyas Sanjoyo Adi, S.T., M.T. selaku Ketua Jurusan Teknik Informatika Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
3. Bapak JB.Budi Darmawan, S.T., M.Sc. selaku Dosen Pembimbing Akademik Jurusan Teknik Informatika Angkatan 2005.
4. Bapak Drs. Jong Jek Siang, M.Sc. selaku Dosen Pembimbing yang telah meluangkan waktu dan perhatiannya untuk membimbing dan mendukung saya dari awal pengerjaan sampai skripsi ini bisa selesai.
5. Kedua orang tua saya Antonius Djumadi dan Katarina Rumkendarsih yang telah memberi dukungan moral, spiritual dan finansial dalam penyusunan skripsi ini.
6. Buat kakakku Yustinus Purwoadi yang selalu menyayangi dan memberikan dukungan kepadaku.
8. Teman-temanku A. Putri, B. Maya, Anas E. , B. Riska, B. Nino, I. Vero, dan Cicil S. Terimakasih atas kebersamaan, persahabatan dan cerita-ceritanya yang akan menjadi kenangan indah dimasa mendatang.
9. Teman-teman Teknik Informatika angkatan 2005 dan seluruh pihak yang tidak bisa saya sebutkan satu persatu. Terimakasih atas segala dukungannya.
Semoga skripsi ini dapat berguna dan dapat menambah wawasan bagi para pembaca.
DAFTAR ISI
HALAMAN JUDUL ... i
HALAMAN JUDUL ... ii
HALAMAN PERSETUJUAN PEMBIMBING ... iii
HALAMAN PENGESAHAN ... iv
MOTTO ... v
ABSTRAK... vi
ABSTRACT ... vii
KATA PENGANTAR... viii
PERNYATAAN KEASLIAN KARYA ... x
LEMBAR PERNYATAAN ... xi
DAFTAR ISI ... xii
DAFTAR GAMBAR... xv
DAFTAR TABEL ... xvii
BAB I. PENDAHULUAN ... 1
I.1. Latar Belakang ... 1
I.2. Rumusan Masalah ... 2
I.3. Tujuan... 2
I.4. Batasan Masalah... 2
I.5. Metodologi Penelitian ... 2
I.6. Sistematika Penulisan... 3
BAB II. LANDASAN TEORI ... 4
II.1. Pengertian Saham ... 4
II.1.1 Analisis Fundamental ... 4
II.1.2 Analisis Teknikal... 4
II.1.3 Jenis-jenis Harga ... 5
II.1.4 Trend ... 5
II.2. CandleStick ... 6
II.3. Indikator-indikator Dalam Analisis Teknikal ... 7
II.3.1 Indikator Leading ... 7
II.3.3 Moving Average ... 7
II.3.4 Simple Moving Average ... 7
II.3.5 Exponential Moving Average ... 8
II.3.6 Moving Average Convergence/Divergence... 9
II.3.7 MACD untuk Perubahan Trend ... 10
II.3.8 Overbought dan Oversold pada MACD ... 11
II.4. Perhitungan Manual MACD ... 13
II.5. MySQL ... 18
BAB III. PERANCANGAN SISTEM ... 21
III.1. Perancangan Umum ... 21
III.1.1 Diagram Konteks... 22
III.1.2 Diagram Arus Data ... 22
III.2. Subsistem Manajemen Data... 24
III.2.1 Diagram Relasi Entitas ... 24
III.2.2 Perancangan Struktur Data... 24
III.3. Subsistem Manajemen Model... 27
III.3.1 Proses Perhitungan MACD ... 27
III.3.2 Menentukan Urutan Rekomendasi ... 28
III.3.2.1 Rekomendasi Beli... 28
III.3.2.2 Rekomendasi Jual ... 31
III.4. Subsistem Manajemen Dialog ... 33
III.4.1 Halaman Utama ... 33
III.4.2 Form Daftar URL ... 34
III.4.3 Form Download... 35
III.4.4 Form Peramalan... 36
III.4.5 Form Pilih Perusahaan ... 37
III.4.6 Form Pilih Profil... 37
III.4.7 Form Detail MACD... 38
BAB IV. IMPLEMENTASI DAN PEMBAHASAN... 39
IV.1. Implementasi Manajemen Data... 39
IV.2. Implementasi Manajemen Proses... 40
IV.2.2 Menghitung EMA12 dan EMA26 ... 41
IV.2.3 Menghitung MACD... 41
IV.2.4 Menghitung SMA9 ... 42
IV.2.5 Menghitung EMA9 ... 42
IV.2.6 Menghitung Selisih dan Menentukan Rekomendasi Beli/Jual... 42
IV.2.7 Menghitung Rata-rata Volume... 42
IV.2.8 Memberi Bobot Volume dan Gradien ... 43
IV.2.9 Memberi Bobot Hasil Perhitungan MACD, Gradien, Volume... 44
IV.2.10 Mengurutkan Hasil Rekomendasi ... 44
IV.3. Implementasi Manajemen Dialog ... 45
IV.3.1 Form Menu Utama... 45
IV.3.2 Form URL Address... 46
IV.3.3 Form Download... 47
IV.3.4 Form Peramalan... 48
IV.3.5 Form Pilih Perusahaan ... 50
IV.3.6 Form MACD ... 51
IV.4. Pembahasan Program ... 52
IV.4.1 Hasil Pengujian Perangkat Lunak ... 52
IV.4.2 Rata-rata Keuntungan Beli dan Jual Menggunakan Sinyal MACD ... 55
IV.4.3 Rata-rata Harga Penjualan Setelah Satu Hari Sinyal Jual... 59
IV.4.4 Korelasi Antara Keuntungan dan Lama Hari... 60
IV.4.5 Rata-rata Harga Beli Setelah Sinyal Beli... 61
IV.5. Kelebihan Program... 64
IV.6. Kekurangan Program... 64
BAB V. PENUTUP... 65
V.1. Kesimpulan ... 65
V.2. Saran ... 65
DAFTAR GAMBAR
Gambar Keterangan Halaman
2.1 CandleStick 6
2.2 MACD Histogram 10
2.3 MACD untuk Perubahan Trend 11
2.4 Overbought dan Oversold pada MACD 12
3.1 Flowchart Sistem 21
3.2 Diagram Konteks 22
3.3 DAD Level 1 Pengguna 22
3.4 DAD Level 2 URL Address 22
3.5 DAD Level 2 Peramalan 23
3.6 Diagram Relasi Entitas 24
3.7 Perhitungan MACD 27
3.8 Flowchart Urutan Rekomendasi Beli 28
3.9 Flowchart Urutan Rekomendasi Jual 31
3.10 Form Halaman Utama 33
3.11 Form Daftar URL 34
3.12 Form Tambah URL Data Saham 34
3.13 Form Download Data Saham 35
3.14 Form Peramalan 36
3.15 Form Pilih Peramalan 37
3.16 Form Pilih Profil 37
3.17 Form Grafik CandleStick dan MACD 38
3.18 Form Tabel hasil perhitungan 38
4.1 Konfirmasi data saham 45
4.2 Tampilan Menu Utama 46
4.4 Tampilan Tambah URL 47
4.5 Konfirmasi Bila Nama URL sudah ada 47
4.6 Tampilan Ubah URL 47
4.7 Konfirmasi Hapus Data 47
4.8 Tampilan Download 48
4.9 Konfirmasi Jika Tidak ada alamat URL yang aktif 48 4.10 Konfirmasi Membatalkan Proses Download 48
4.11 Konfirmasi Download Selesai 48
4.12 Tampilan Peramalan 49
4.13 Konfirmasi Proses Simpan data perusahaan 49
4.14 Konfirmasi Overwrite 49
4.15 Tampilan Pilih Profil 50
4.16 Tampilan Pilih Perusahaan 50
4.17 Tampilan grafik CandleStick dan MACD 51
4.18 Tampilan Tabel Perhitungan 52
4.19 Grafik MACD Sinyal Beli dari Program 53 4.20 Grafik MACD Sinyal Beli dari Virtual Trading 53 4.21 Grafik MACD Sinyal Jual dari Program 54 4.22 Grafik MACD Sinyal Jual dari Virtual Trading 54 4.23 Pilih Perusahaan menggunakan program 55 4.24 Pilih Perusahaan menggunakan virtual trading 55
4.25 Data Saham Untuk Pengujian 56
4.26 Grafik MACD Perusahaan MAMI 56
4.27 Grafik MACD Perusahaan SCMA 56
4.28 Grafik MACD Perusahaan ASIA 56
4.29 Grafik MACD Perusahaan BKSW 57
DAFTAR TABEL
Gambar Katerangan Halaman
2.1 Kaidah pada Indikator MACD 13
2.2 Harga Penutupan 15
2.3 Hasil Perhitungan 19
3.1 Proses Pemilihan Saham 23
3.2 Perancangan daftar_jenis 24
3.3 Perancangan daftar_url 25
3.4 Perancangan perusahaan 25
3.5 Perancangan profil 25
3.6 Perancangan saham 26
3.7 Perancangan disimpan 26
3.8 Tahap 1 rekomendasi beli 29
3.9 Tahap 2 rekomendasi beli 29
3.10 Tahap 3 rekomendasi beli 30
3.11 Tahap 4 rekomendasi beli 30
3.12 Tahap 1 rekomendasi jual 31
3.13 Tahap 2 rekomendasi jual 32
3.14 Tahap 3 rekomendasi jual 32
3.15 Tahap 4 rekomendasi jual 33
4.1 Daftar_jenis 39
4.2 Daftar_url 39
4.3 Perusahaan 39
4.4 Profil 39
4.5 Saham 39
4.6 Disimpan 39
4.8 Rata-rata Beli-Jual SCMA 58
4.9 Rata-rata Beli-Jual ASIA 58
4.10 Rata-rata Beli-Jual BKSW 58
4.11 Frekuensi Beli-Jual dan Keuntungan 58
4.12 Rata-rata Jual MAMI 59
4.13 Rata-rata Jual SCMA 59
4.14 Rata-rata Jual ASIA 60
4.15 Rata-rata Jual BKSW 60
4.16 Kerugian 1 hari Keterlambatan Penjualan 60 4.17 Korelasi Lama Hari dan Keuntungan 61
4.18 Rata-rata Beli MAMI 62
4.19 Rata-rata Beli SCMA 62
4.20 Rata-rata Beli ASIA 63
4.21 Rata-rata Beli BKSW 63
BAB I
PENDAHULUAN
I.1 Latar Belakang
Pada jaman sekarang banyak sekali alternatif yang bisa dipilih dalam melakukan investasi. Salah satu investasi yang banyak dipilih adalah pasar modal. Pasar modal mulai banyak dilirik oleh para investor karena dapat memberikan keuntungan yang tinggi dibandingkan dengan melakukan investasi lain seperti membuka tabungan atau inverstasiproperty. Tetapi pasar modal juga mempunyai unsur resiko yang lebih besar dibandingkan dengan membuka tabungan dibank.
Resiko ini menimbulkan masalah bagi investor dalam melakukan investasi di pasar modal. Untuk mengurangi resiko dalam melakukan investasi di pasar modal, diperlukan suatu analisis yang tepat dalam menentukan saham mana yang harus dibeli atau dijual. Dalam melakukan analisis juga diperlukan suatu perhitungan yang tepat dan cepat. Tetapi karena manusia mempunyai keterbatasan, sehingga seringkali melakukan kesalahan dalam menentukan waktu yang tepat untuk menjual ataupun membeli suatu saham.
Analisis ini dibagi dua yaitu analisis fundamental dan analisis teknikal. Analisis fundamental menggunakan informasi-informasi berupa laporan keuangan dari setiap perusahaan yang harga sahamnya akan diteliti. Sedangkan analisis teknikal menggunakan informasi-informasi berupa harga saham dan volume saham dari setiap perusahaan yang akan diteliti. Ada berbagai macam analisis teknikal yang salah satunya menggunakan indikator MACD. Indikator ini banyak digunakan untuk mengidentifikasi munculnya trend baru. MACD membantu dalam memberikan sinyal beli dan sinyal jual , juga dapat dipakai mengetahui kondisi overbought/oversold pada pasar yang dapat memicu peralihan trend.
I.2 Rumusan Masalah
1. Bagaimana membangun sebuah Sistem Program Bantu untuk membantu pemilihan saham berdasarkan indikator MACD.
2. Bagaimana menguji akurasi indikator MACD dalam pemilihan saham. I.3 Tujuan
Tujuan yang hendak dicapai adalah untuk membuat suatu aplikasi program bantu yang dapat menentukan kapan menjual atau membeli saham.
I.4 Batasan Masalah
a. Data diambil dari Indonesia Stock Exchange (www.idx.co.id) - Indeks Regular
http://202.155.2.90/market_summary/daily/List_of_Scriptless%28Regular
%29_Quotation/... - Indeks LQ45
http://202.155.2.90/market_summary/daily/List_of_LQ45_Securities_Quo
tation/...
b. Data yang diolah berasal dari harga penutupan saham harian selama 60 hari kerja.
c. Menggunakan indikator MACD dengan periode (12,26,9)
d. Program dibuat dengan menggunakan visual basic versi 6.0 dengan basis data MySQL.
I.5 Metodologi Penelitian
Untuk membangun sistem ini digunakan metodologi sebagai berikut: 1. Studi literatur
a. Tentang pengenalan saham b. Tentang CandleStick
c. Tentang Indikator analisis teknikal, yaitu MACD d. Tentang Basis Data MySQL
2. Pengumpulan data
4. Merancang sistem program bantu dengan indikator Moving Average Convergence/Divergence (MACD).
a. Perancangan Umum Sistem b. Perancangan Data
c. Perancangan Model d. Perancangan Dialog
5. Mengimplementasikan rancangan indikator MACD I.6 Sistematika Penulisan
BAB I Pendahuluan
Bab ini membahas tentang latar belakang pemilihan topik penulisan, rumusan masalah, tujuan, batasan masalah, metodologi penelitian dan sistematika penulisan.
BAB II Landasan Teori
Bab ini berisi tentang dasar teori yang digunakan untuk pembahasan dalam penulisan tugas akhir ini.
BAB III Perancangan Sistem
Bab ini membahas tentang sistem yang akan dibangun meliputi deskripsi tentang sistem serta perancangan yang akan dibangun. Perancangan sistem yang dbuat meliputi perancangan umum, perancangan data, perancangan model, dan perancangan dialog.
BAB IV Implementasi dan Pembahasan
Berisi perancangan sistem ke dalam bentuk program serta penjelasan program yang dibuat disertai dengan hasil dan pembahasan program, serta kelebihan dan kekurangan programnya.
BAB V Penutup
BAB II
LANDASAN TEORI
II.1 Pengertian Saham
Saham dapat didefinisikan sebagai tanda penyertaan atau pemilikan seseorang atau badan dalam suatu perusahaan. Wujud saham adalah selembar kertas yang menerangkan bahwa pemilik kertas tersebut adalah pemilik perusahaan yang menerbitkan kertas tersebut.
Dalam melakukan analisis dan memilih saham, ada dua pendekatan yang sering digunakan, yaitu :
II.1.1 Analisis Fundamental
Analisis Fundamental adalah studi tentang ekonomi, industri, dan kondisi perusahaan untuk memperhitungkan nilai dari saham perusahaan. Analisis fundamental menitikberatkan pada data-data kunci dalam laporan perusahaan untuk memperhitungkan apakah harga saham sudah diapresiasikan secara akurat.
Sebagian besar informasi fundamental menitikberatkan pada data-data ekonomi, industri, dan perusahaan. Pendekatan umum untuk menganalisis perusahaan menyangkut 4 langkah dasar sebagai berikut:
• Menghitung kondisi ekonomi secara keseluruhan. • Menghitung kondisi industri secara keseluruhan. • Menghitung kondisi perusahaan.
• Menghitung nilai saham perusahaan
II.1.2 Analisis Teknikal
II.1.3 Jenis-jenis Harga
Dalam bagian ini akan dijelaskan berbagai jenis harga saham yang mungkin digunakan dalam analisis teknikal:
1. Open price
Open price suatu saham adalah harga saham tersebut pada awal periode tersebut. Open price pada suatu hari adalah harga saham tersebut pada saat pasar modal dibuka pada hari itu.
2. High price
High price suatu saham adalah harga tertinggi yang pernah dicapai saham tersebut pada suatu periode.
3. Low price
Low price suatu saham adalah harga terendah yang pernah dicapai saham tersebut pada suatu periode.
4. Close price
Close price suatu saham adalah harga saham tersebut pada akhir periode tersebut. Close price pada suatu hari adalah harga saham tersebut pada saat pasar modal ditutup pada hari itu.
Harga yang paling sering digunakan dalam analisis teknikal adalah harga penutupan (close price).
II.1.4Trend
Definisi mudah tentangtrendsecara mendasar merupakan petunjuk umum dari pergerakan harga suatu sekuritas. Trend harga dikatakan naik jika arah pergerakan harga telah melewati batas tertinggi pada waktu sebelumnya, atau telah bergerak naik melewati batas terendah dari harga pada waktu sebelumnya. Sedangtrendharga dikatakan menurun jika pergerakan harga telah bergerak turun melewati harga tertinggi sebelumnya atau bergerak turun melewati harga terendah sebelumnya. Jika pergerakan harga tidak menunjukkan serangkaian pergerakan searah, baik itu turun atau naik, maka bisa dikatakan bahwa pergerakan harga tidak menunjukkantrend.
II.2 CandleStick
Candlestick adalah satu teknik untuk memetakan pergerakan harga pasar baik itu pasar saham, komoditi, atau juga valuta asing (forex). Teknik ini termasuk ke dalam kelompok analisis teknikal dan merupakan teknik tertua dalam analisis teknikal. Teknik ini diciptakan di Jepang oleh Munehisa Homma (1724-1803) yang dikenal juga sebagai “Dewa Pasar” dalam dua bukunya Sakata Senho dan Soba Sani No Den. Tahun 1991, Steve Nison memperkenalkan teknik ini ke dunia Barat dalam bukunya Japanese Candlestick Charting Technique.
Gambar 2.1 CandleStick
Candlestick yang putih itu adalah candle bullish (naik) dan candle yang hitam adalah candle bearish(turun). Perhatikan bahwa pada candle itu ada yang disebutBody atau badannya yaitu selisih antaraopendanclose dan jugaShadow atau bayangan atau buntut yaitu selisih antarahigh/lowdenganopen/close.
Panjang body dan shadow ini dalam analisis memegang peranan yang sangat penting. Semakin panjang body dapat diartikan semakin jelas arah pasar yang terlihat melalui candlestick. Semakin panjangshadowmenunjukkan semakin besar tekanan balik yang diberikan pasar atas trend yang terlihat melalui candlestick.
II.3 Indikator-Indikator Dalam Analisis Teknikal
Indikator adalah perhitungan matematis yang diterapkan pada harga sekuritas atau volume perdagangan. Hasil perhitungan adalah nilai yang digunakan untuk mengantisipasi gerakan harga di masa depan.
Indikator dalam analisis teknikal modern pada umumnya di bagi menjadi dua bagian yaitu indikatorLeadingdan indikatorLagging.
II.3.1 IndikatorLeading
Indikator leading adalah indikator yang di tampilkan sebelum trend muncul. Indikator ini membantu menarik keuntungan dengan memprediksi perubahan yang bakal terjadi. Contoh dari ini adalahRSI, Bollinger Bands.
II.3.2 IndikatorLagging
Indikator lagging adalah indikator yang tampil setelah trend muncul dan berguna ketika harga bergerak dalam trend yang cukup panjang. Indikator ini tidak memperingatkan tentang perubahan yang bakal terjadi, tetapi hanya memberitaukan apa yang sedang terjadi pada harga tersebut (yaitu, naik atau turun) sehingga dapat membuat keputusan investasi sesuai dengan fakta tersebut. Indikator ini tidak efektif dalam pasar trading atau mendatar. Jika digunakan dalam pasartrading,indikator ini akan mungkin sekali memberikan banyak sinyal salah (palsu). Contoh dari indikator ini adalahmoving averagedan MACD
II.3.3Moving Average(MA) 1
Moving Average adalah salah satu perangkat didalam analisis teknikal yang paling sering digunakan. Moving average memberikan nilai rata-rata atas perubahan harga sekuritas sehingga memberikan informasi yang lebih mudah ditangkap untuk keperluan analisis dan mengantisipasitrend.
II.3.4Simple Moving Average(SMA)
Simple Moving Average (SMA) dihitung dengan cara mengambil nilai rata-rata dari harga suatu sekuritas pada rentang waktu tertentu. Perhitungan SMA
1
ini bisa diambil dari nilai rata-rata harga pembukaan, harga penutupan, harga tertinggi dan juga harga terendah, namun kebanyakan nilai dari SMA diambil dari harga penutupan suatu sekuritas. Misal SMA untuk 5 hari dari suatu sekuritas diambil dari 5 harga penutupan pada 5 hari terakhir dibagi dengan 5 sehingga menghasilkan nilai SMA sebagai berikut:
10 + 11 + 12 + 13 + 14 = 60 60 ÷ 5 = 12
II.3.5 Exponential Moving Average(EMA)
Exponential Moving Average(EMA) menggunakan formulasi perhitungan yang memberikan bobot pada harga sekarang secara relatif terhadap harga awal dari perhitungan EMA pada rentang waktu tertentu. Semakin pendek rentang waktu, semakin berbobot penerapan penggunaan EMA ini untuk memberikan nilai rata-rata terkini dari suatu sekuritas.
Cara perhitungan dari EMA ini jauh lebih rumit daripada cara perhitungan dari SMA. Namun demikian hasil perhitungan dengan menggunakan EMA ini akan memberikan bobot yang lebih atas perubahan harga terkini untuk pengambilan nilai rata-rata. Oleh karena itulah EMA mampu memberikan reaksi yang lebih peka atas perubahan harga yang terjadi untuk pengambilan nilai rata-rata dibandingkan dengan SMA.
Dalam mencari EMA kita pertama kali harus menentukan exponential percentagedengan menggunakan rumus sebagai berikut :
EP = 2 / (TP+1)
Di mana :
EP =Exponential Percentage TP =Time Period/ Periode Waktu
Dimana :
EMAt =Exponential Moving Averageuntuk harga hari t t = hari yang ditentukan
Pt =harga penutupan saham hari t EP =Exponential Percentage
SMAt-1=Simple Moving Averagehari sebelumnya
II.3.6Moving Average Convergence Divergence(MACD)
Berbeda dengan Moving Average sebelumnya, MACD menggunakan 2 EMA untuk mengindikasikan kondisi tekanan beli (overbought) atau kondisi tekanan jual (oversold) yang berfluktuasi di atas dan di bawah garis 0 (zero).
Moving Average Convergence Divergence adalah formulasi analisis teknikal yang pertama kali dikembangkan oleh Gerald Appel. Moving Average Convergence Divergence dikatakan sebagai salah satu alat analisis yang paling sederhana dan cukup handal digunakan dalam mengambil keputusan selama perdagangan.
Gambar 2.2 MACD Histogram
MACD line. Secara default formulasi MACD line adalah : EMA12 – EMA26 yaitu selisih dari EMA periode 12 dengan EMA periode 26. Karena menggunakan EMA, maka sifat-sifat MACD juga akan menyerupai sifat-sifat EMA yaitu memberikan sinyal yang lebih dini dibanding MA lainnya.
Triger line.Triger lineadalah garis pemicu yang sebenarnya secara default adalah EMA9.
Centerline. Garis biasa. Merupakan garis nol yaitu membatasi histogram negatif dengan histogram positif.
Histogram. Formulasi untuk histogram adalah: MACD line – Triger line Digunakan sebagai indikasioverbought/oversold.
II.3.7 MACD untuk PerubahanTrend
Gambar 2.3 MACD untuk Perubahan Trend
Persis seperti aturan pada pembacaan MA, pada MACD berlaku aturan apabila MACD line memotong triger line dari bawah maka akan terjadi perubahan trend menuju Bullish trend(signal beli). Dan berlaku juga sebaliknya apabila MACD linememotongtriger linedari atas, maka akan terjadi perubahan trend menujuBearish trend(signal jual).
II.3.8OverboughtdanOversoldpada MACD
Grafik CandleStick
Gambar 2.4 Overbought dan Oversold pada MACD
Perhatikan ketika histogram beranjak naik keatas dan berada diatas centerline(garis nol) maka harga cenderung bergerak naik dan sebaliknya ketika histogram bergerak turun dan menuju area negatif, harga juga bergerak turun. Garis dibawahcenterline(area minus) merupakan wilayah yang disebutoversold area (jenuh jual) dan diatas centerline (area positif) merupakan wilayah overbought(jenuh beli).Divergence negatifyaitu indikator bergerak turun namun harga sedang bergerak sebaliknya. Jika terjadidivergence negatifmaka yang akan terjadi adalah harga akan bergerak mengikuti arah dari indikator. Hal yang sama juga terjadi pada divergence positif yaitu harga bergerak turun namun indikator cenderung naik. Jika terjadi divergence positif maka harga akan bergerak mengikuti arah indikator yaitu kembali menguat.
Berikut ini ringkasan kaidah-kaidah yang berlaku pada indikator MACD :
No Kriteria Definisi
1 MACD line memotong triger line dari bawah
Peralihan trend menuju Bullish(signal beli) 2 MACDlinememotongtriger linedari atas Peralihan trend menuju
centerline(area positif)
4 MACD line dantriger line berada dibawah centerline(area negatif)
Long Bearish trend
5 Histogram positif / negatif Kondisi overbought/ oversold
6 Divergencepositif Harga akan ikut
bergerak naik
7 Divergencenegatif Harga akan ikut
bergerak turun Tabel 2.1 Kaidah pada Indikator MACD
Rumus dasar MACD adalah sebagai berikut : MACD(t1,t2) = EMAt1- EMAt2 Dimana :
t1,t2 = periode waktu yang digunakan untuk MACD EMA =Exponential Moving Average
II.4 Perhitungan Manual MACD
Tabel dibawah ini menampilkan harga penutupan dari perusahaan Gudang Garam Tbk (GGRM) dengan periode 22/01/2010 sampai dengan 23/04/2010 yang diambil dari Indonesia Stock Exchange (www.idx.co.id).
Tabel 2.2 Harga Penutupan
Berikut ini akan diuraikan proses perhitungan saham menggunakan indikator MACD dengan harga penutupan harian periode 22/01/2010 sampai dengan 23/04/2010
• Perhitungan SMA(12)
Cara perhitungan yaitu dengan menjumlahkan harga penutupan selama 12 hari, periode waktu 22/01/2010 sampai dengan 09/02/2010. Selanjutnya hasil penjumlahan selama 12 hari di bagi dengan 12.
23800+24000+23300+23500+24050+24000+24100+24100+24600+25750+ 25000+24250 =290450
290450÷ 12 =24240.17 • Perhitungan SMA(26)
Cara perhitungannya sama dengan perhitungan MA(12), hanya saja harga penutupan yang digunakan selama 26 hari dengan periode 22/01/2010 sampai dengan 02/03/2010
23800+24000+23300+23500+24050+24000+24100+24100+24600+25750+ 25000+24250+24250+23950+24200+23950+24250+24300+24100+24050+2 4050+24600+25600+26050+27100+27450 =638350
638350 ÷ 26 =24551.92 • Perhitungan EMA(12)
Cara perhitungannya yaitu dengan menghitung exponential percentage terlebih dahulu menggunakan rumus :
EP=2/(TP+1) TP= periode waktu
EP12= 2/(12+1) = 0.1538
Setelah hasil EP diketahui, selanjutnya menghitung EMA(12) yang dimulai dari periode 09/02/2010 sampai dengan 23/04/2010 menggunakan rumus dibawah ini dengan SMA12 =24240.17 untuk perhitungan EMA hari pertama. Untuk hari selanjutnya, perhitungan EMA menggunakan EMA hari sebelumnya.
EMAt=(Pt–SMAt-1) x (EP) + (SMAt-1)
Perhitungan EMA12 untuk tanggal penutupan 09/02/2010
EMA12=((24250–24240.17) x (0.1538) + (24240.17)) = 24211.22
Perhitungan EMA12 untuk tanggal penutupan 10/02/2010
EMA12=((24250–24211.22) x (0.1538) + (24211.22)) = 24217.18 Begitu seterusnya perhitungan EMA12 dilakukan sampai tanggal 23/04/2010. • Perhitungan EMA(26)
Cara perhitungan EMA(26) sama dengan perhitungan EMA(12). Pertama dengan mencari nilai EP(26).
EP26= 2/(26+1)= 0.074
Setelah hasil EP diketahui, selanjutnya melakukan perhitungan EMA(26) yang dimulai dari periode 02/03/2010 sampai dengan 23/04/2010 dengan SMA26 = 24551.92.
Perhitungan EMA26 untuk tanggal penutupan 02/03/2010
EMA26=((27450 - 24551.92) x (0.074) + (24551.92)) = 24766.38
Perhitungan EMA26 untuk tanggal penutupan 03/03/2010 EMA26=((27750 - 24766.38) x (0.074) + (24766.38)) = 24987.17 Begitu seterusnya perhitungan EMA26 dilakukan sampai tanggal 23/04/2010 • Perhitungan MACD(EMA12-EMA26)
Cara perhitungan MACD yaitu dengan mengurangkan hasil perhitungan EMA12 dengan EMA26. Pengurangan dilakukan dari periode 02/03/2010 sampai dengan 23/04/2010.
Perhitungan MACD untuk tanggal penutupan 02/03/2010 MACD=(25415.06–24766.38)= 648.68
Perhitungan MACD untuk tanggal penutupan 03/03/2010 MACD=(25774.17-24987.17)=787.00
Begitu seterusnya perhitungan MACD dilakukan sampai tanggal 23/04/2010. • Perhitungan SMA9
648.68+787.00+882.45+891.33+848.25+832.76+831.10+820.34+778.64= 7320.55
7320.55 ÷ 9= 813.39 • Perhitungan EMA9
Dalam perhitungan EMA9 caranya sama dengan perhitungan EMA12 dan EMA26 tapi harga penutupannya menggunakan hasil perhitungan MACD (EMA12-EMA26).
EP9=(2/(9+1)=0.2
Setelah hasil EP diketahui, selanjutnya melakukan perhitungan EMA(26) yang dimulai dari periode 02/03/2010 sampai dengan 23/04/2010 dengan SMA9=813.39.
Perhitungan EMA9 untuk tanggal penutupan 12/03/2010 EMA9=((778.64-(813.39)) x (0.2) + (813.39)) = 806.44
Perhitungan EMA9 untuk tanggal penutupan 15/03/2010 EMA9=((737.09-(806.44)) x (0.2) + (806.44)) = 792.57
Begitu seterusnya perhitungan EMA9 dilakukan sampai tanggal 23/04/2010.
• Selisih (MACD - EMA9)
Perhitungan selisih digunakan untuk mendapatkan hasil rekomendasi beli atau jual. Cara perhitungannya yaitu dengan mengurangkan hasil perhitungan MACD dengan perhitungan EMA9 dengan periode 12/03/2010 sampai dengan 23/04/2010. Selanjutnya, melihat hasil penguranganya yang didapat. Apakah hasilnya positif atau negatif? Jika hasilnya positif, berarti menunjukan rekomendasi beli. Jika negatif, berarti menunjukan rekomendasi jual.
Perhitungan Selisih(MACD - EMA9) untuk tanggal penutupan 12/03/2010 Selisih=(778.64-806.44)= -27.81
Hasil diatas menunjukan rekomendasi jual,karena hasilnya negatif. Tabel dibawah ini merupakan hasil perhitungan secara keseluruhan. TANGGAL HARGA
TUTUP SMA(12) EMA(12) SMA(26) EMA(26) MACD SMA(9) EMA(9) SELISIH REK 22/01/2010 23800
29/01/2010 24000
09/02/2010 24250 24204.17 24211.22 10/02/2010 24250 24217.18
02/03/2010 27450 25415.06 24551.92 24766.38 648.68 03/03/2010 27750 25774.17 24987.17 787.00 04/03/2010 27700 26070.36 25187.92 882.45 05/03/2010 27000 26213.34 25322.01 891.33 08/03/2010 26500 26257.43 25409.18 848.25 09/03/2010 26850 26348.57 25515.80 832.76 10/03/2010 27100 26464.14 25633.03 831.10 11/03/2010 27100 26561.93 25741.59 820.34
19/04/2010 27100 26841.08 26486.74 354.34 265.72 88.62 20/04/2010 27500 26942.42 26561.72 380.70 288.72 91.98 21/04/2010 27400 27012.80 26623.75 389.04 308.78 80.26 22/04/2010 27000 27010.83 26651.60 359.23 318.87 40.36 23/04/2010 26700 26963.02 26655.18 307.84 316.67 -8.82 JUAL
Tabel 2.3 Hasil Perhitungan II.5 MySQL
MySQL merupakan suatu software manajement database. Sistem manajement database dapat dilakukan penambahan, pengaksesan, dan pemrosesan data yang diakses di komputer. MySQL menggunakan standar SQL. MySQL dapat digunakan untuk melakukan pembuatan database, tabel, view. (MySQL 5.1 Manual)
Query Language
Query Language adalah pernyataan yang diajukan untuk mengambil informasi. Merupakan bagian Data Manipulation Language (DML) untuk pengambilan informasi. DML digunakan untuk menampilkan, menambah, mengubah dan menghapus dan menghapus data didalam objek-objek yang didefinisikan oleh Data Definition Language (DDL). Perintah yang terdapatan pada DML adalah select, insert, update dan delete.
1. Select
Dipakai untuk membaca data daridatabase. Bentuk umum pernyataan select : [ORDER BY daftar_order [ASC|DEC]]
2. Insert
Dipakai untuk menambah satu atau beberapa data ke dalam tabel. Bentuk umum pernyataan insert:
INSERT INTO tabel_name (column1, column2, [column n]) VALUES (value1, value2, [value n])
3. Update
UPDATE tabel_name
SET column1=value1, column2=value2,[column n=value n] [WHERE id_column=value]
4. Delete
Dipakai untuk menghapus satu atau beberapa baris di dalam tabel. Bentuk umum pernyataan delete:
DELETE FROM tabel_neme
[WHERE field1=value1 [AND|OR] field2=value2 [AND|OR] [field n=value n]
5. Create Procedure
Digunakan untuk membuat suatustore procedure.Bentuk umum pernyataan create procedure:
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
6. Create Function
Dipakai untuk membuat suatu fungsi. Bentuk umum pernyataan create function:
CREATE
[DEFINER = { user | CURRENT_USER }]
FUNCTION sp_name ([func_parameter[,...]])
RETURNS type
[characteristic ...] routine_body
func_parameter:
param_name type
7. Create Trigger
Digunakan untuk membuat suatu trigger. Bentuk umum pernyatan trigger:
CREATE
[DEFINER = { user | CURRENT_USER }]
TRIGGER trigger_name trigger_time trigger_event
BAB III
PERANCANGAN SISTEM
III.1 Perancangan Umum
Perancangan umum sistem adalah suatu tahapan yang dilakukan untuk mendefinisikan kebutuhan-kebutuhan fungsional dan merupakan persiapan untuk rancangan implementasi. Bagan alir (Flowchart) umum dari perancangan sistem ini dapat dilihat pada gambar 3.1
Gambar 3.1 Flowchart Sistem Ya
Tidak
Hasil urutan alternatif perusahaan
Mulai
Download data saham harian
Selesai Lanjut?
Kode Perusahaan dan tujuan beli/jual
Menghitung MACD
III.1.1 Diagram Konteks
Gambar 3.2 Diagram Konteks
III.1.2 Diagram Arus Data
Gambar 3.3 DAD Level 1 Pengguna
Gambar 3.5 DAD Level 2 Peramalan
Berdasarkan Gambar, rancangan sistem ini secara keseluruhan dibagi menjadi 3 proses seperti yang terlihat pada tabel berikut :
Tabel 3.1 Proses Pemilihan Saham No Nama Proses Keterangan
1. URL_Address Pada proses ini pengguna bisa melakukan tambah, edit, hapus data URL yang nantinya digunakan untuk download data saham harian.
III.2 Subsistem Manajemen Data III.2.1 Diagram Relasi Entitas
Dalam perancangan basis data sistem ini, akan digunakan Diagram Relasi Entitas untuk mengetahui keterkaitan atau hubungan yang terjadi antara entitas pembentuk sistem.
Gambar 3.6 Diagram Relasi Entitas
III.2.2 Perancangan Struktur Data
o Tabel daftar_jenis
Tabel daftar_jenis digunakan untuk menyimpan data-data perusahaan denganprimary key-nya terletak pada kode_jenis.
Tabel 3.2 perancangan daftar_jenis
Nama Field Type Keterangan
o Tabel daftar_url
Tabel daftar_url digunakan untuk menyimpan data-data url yang digunakan denganprimary key-nya terletak pada id_url.
Tabel 3.3 perancangan daftar_url
Nama Field Type Keterangan
Id_url Integer(1) Id alamat url
Nama_url Varchar(30) Nama url
Alamat_url Varchar(150) Alamat url
Format Varchar(50) Kolom data saham yang disimpan
Kode_jenis Int(1) Kode jenis indeks
Flg_aktif Smallint(1) Alamat url Aktif = 1
o Tabel perusahaan
Tabel perusahaan digunakan untuk menyimpan data-data perusahaan denganprimary key-nya terletak pada kode_perusahaan.
Tabel 3.4 perancangan perusahaan
Nama Field Type Keterangan
Kode_perusahaan Varchar(10) Kode setiap perusahaan Nama_perusahaan Varchar(30) Nama setiap perusahaan
o Tabel profil
Tabel profil digunakan untuk menyimpan data-data perusahaan dengan primary key-nya terletak pada kode_profil.
Tabel 3.5 perancangan profil
Nama Field Type Keterangan
o Tabel saham
Tabel saham digunakan untuk menyimpan data-data saham yang digunakan untuk perhitungan dengan primary_keynya terketak pada tanggal, kode_jenis, kode_perusahaan.
Tabel 3.6 perancangan saham
Nama Field Type Keterangan
Tanggal Date Tanggal data saham yang tersimpan
Kode_jenis Int(1) Kode jenis perusahaan yang tersimpan Kode_perusahaan Varchar(10) Kode perusahaan yang tersimpan Hrg_buka Double Harga pembukaan suatu perusahaan Hrg_rendah Double Harga terendah suatu perusahaan Hrg_tinggi Double Harga tertinggi suatu perusahaan Hrg_tutup Double Harga penutupan suatu perusahaan
Volume Double Volume suatu perusahaan
o Tabel Disimpan
Table disimpan digunakan untuk menyimpan kode_perusahaan yang tersimpan denganprimary key-nya terletak pada kode_simpan.
Tabel 3.7 perancangan disimpan
Nama Field Type Keterangan
III.3 Subsistem Manajemen Model III.3.1 Proses PerhitunganMACD
Gambar 3.7 Perhitungan Moving Average Convergence/Divergence Dalam perhitungan MACD menggunakan periode 12, 26, 9 dan harga penutupan. Proses perhitungan ini dilakukan dengan menjumlahkan harga penutupan. Setelah itu Simple Moving Average dapat dihitung dengan membagi jumlah harga penutupan dengan periode (12, 26, dan 9). Selanjutnya menghitung Exponential Moving Average. Proses perhitungan ini dilakukan dengan menghitung Exponential percetange terlebih dahulu berdasarkan periode 12, 26, dan 9. Rumus dari Exponential Percentage adalah 2 dibagi dengan periode
Baca periode 12,26 ,9 dan harga penutupan
Hitung SMA = jumlah seluruh harga penutupan / periode
Hitung EP = 2/ (periode+1)
Hitung EMA = ((harga penutupan–SMA) x (EP) + (SMA)
Hitung MACD = EMA12 - EMA26
Hitung EMA9 dengan harga penutupan dari MACD(12,26)
ditambah 1. Setelah ituExponential Moving Averagedapat dihitung dengan rumus harga penutupan hari ini dikurangi Simple Moving Average hari sebelumnya, kemudian dikalikan denganExponential Percentagedan selanjutnya ditambahkan denganSimple Moving Averagehari sebelumnya. Setelah itu menghitungMoving Average Convergence/Divergence. Proses perhitungan ini dilakukan setelah menghitung masing-masing EMA pada tiap periodenya. Setelah itu Moving Average Convergence/Divergencedapat dihitung dengan mengurangkan EMA12 dengan EMA26.
III.3.2 Menentukan Urutan Rekomendasi III.3.2.1 Rekomendasi Beli
Gambar 3.8 Flowchart Urutan Rekomendasi beli Membaca hasil MACD,
volume, dan gradien
Mengurangi gradien hari terakhir dengan gradien hari ini dan menghitung rata-rata volume
Mengalikan hasil pengurangan gradien dengan (-10), Menentukan range volume antara -50 dan 50
Mengalikan MACD , volume, gradien dengan bobot kriteria (0.5,0.2,0.3)
Menjumlahkan hasil perkalian MACD, volume dan gradien
Proses pengurutan rekomendasi beli dapat dilakukan setelah perhitungan MACD selesai dikerjakan. Dibawah ini contoh proses pengurutan rekomendasi beli menggunakan daftar perusahaan yang termasuk dalam sinyal beli dan sinyal jual tanggal 27 april 2010.
Langkah-langkah dalam proses pengurutan untuk rekomendasi beli:
Menghitung nilai MACD hari terakhir. Menghitung Gradien dengan cara mengurangi nilai MACD hari terakhir dengan nilai MACD hari sebelumnya. Mengambil nilai Volume hari terakhir. Menghitung rata-rata volume.
Kode Perusahaan
Macd Gradien Volume Rata-Rata Volume
DSSA 77.76 7.66 935.000 918.300
INTA 17.15 2.46 1.185.500 618.808,33
INVS 54.93 11.98 169.000 193.300
LPPS -0.06 0.08 2.621.000 2.664.616,67
TPIA -39.24 2.96 22.500 21.508,33
Tabel 3.8 Tahap1 rekomendasi beli
Selanjutnya nilai gradien tersebut dikalikan dengan (-10). Menentukan range volume antara -50 dan 50 untuk membandingkan volume hari terakhir dengan rata-rata volume 60 hari yang lalu. Pemberian bobotnya sebagai berikut :
-50 = volume > rata-rata + 50%
-25 = rata-rata + 10% < volume < rata-rata +50% 0 = rata-rata–10% < volume < rata-rata +10% 25 = rata-rata -50% < volume < rata-rata–10% 50 = volume < rata-rata–50%
Kode Perusahaan
Macd Gradien Volume Rata-Rata Volume
Bobot Volume
DSSA 77.76 -76.6 935.000 918.300 0
INTA 17.15 -24.6 1.185.500 618.808,33 -50
INVS 54.93 -119.8 169.000 193.300 25
LPPS -0.06 -0.8 2.621.000 2.664.616,67 0
TPIA -39.24 -29.6 22.500 21.508,33 0
Tabel 3.9 Tahap 2 rekomendasi beli
masing-masing kriteria dengan bobot kriteria yang telah ditentukan. Setelah mendapatkan hasil perkalian dari masing-masing kriteria, dapat dilakukan penjumlahan nilai dari proses perkalian diatas.
Kode Perusahaan
Macd Gradien Bobot Volume
Skor
DSSA 77.76 -76.6 0 23.56
INTA 17.15 -24.6 -50 -11.35
INVS 54.93 -119.8 25 11.01
LPPS -0.06 -0.8 0 -0.2
TPIA -39.24 -29.6 0 -25.54
Tabel3.10 Tahap 3 rekomendasi beli
Dari hasil penjumlahan nilai kriteria diatas, dapat dilakukan pengurutan alternatif rekomendasi beli untuk suatu perusahaan. Hasil penjumlahan kriteria dari suatu perusahaan semakin negatif, berarti perusahaan itu semakin direkomendasikan untuk di beli.
Kode Perusahaan
Macd Gradien Bobot Volume
Skor
TPIA -39.24 -29.6 0 -25.54
INTA 17.15 -24.6 -50 -11.35
LPPS -0.06 -0.8 0 -0.2
INVS 54.93 -119.8 25 11.01
DSSA 77.76 -76.6 0 23.56
III.3.2.2 Rekomendasi Jual
Gambar 3.9 Flowchart Urutan Rekomendasi jual
Langkah-langkah dalam proses pengurutan untuk rekomendasi jual:
Menghitung nilai MACD hari terakhir. Menghitung Gradien dengan cara mengurangi nilai MACD hari terakhir dengan nilai MACD hari sebelumnya. Mengambil nilai Volume hari terakhir. Menghitung rata-rata volume.
Kode Perusahaan
Macd Gradien Volume Rata-Rata Volume
CPIN 117.34 -1.95 2.711.500 2.624.716,67
EPMT 33.66 -9.30 148.000 29.516,67
PTBA 446.19 -30.87 2.438.000 4.369.225
SMDR 57.63 -6.54 15.500 21.675
TOTL 17.98 -1.82 14.458.000 9.219.691,67
Tabel 3.12 Tahap 1 rekomendasi jual Membaca hasil MACD, volume, gradien
Mengurangi gradien hari terakhir dengan gradient hari ini, menghitung rata-rata volume
Mengalikan hasil pengurangan gradient dengan (-10), Menentukan range volume antara 50 dan -50
Mengalikan MACD , volume, gradient dengan bobot kriteria (0.5,0.2,0.3)
Menjumlahkan hasil perkalian MACD, volume dan gradien
Selanjutnya nilai Gradien tersebut dikalikan dengan (-10). Menentukan range volume antara 50 dan -50 untuk membandingkan volume hari terakhir dengan rata-rata volume 60 hari yang lalu. Pemberian bobotnya sebagai berikut :
50 = volume > rata-rata + 50%
25 = rata-rata + 10% < volume < rata-rata +50% 0 = rata-rata–10% < volume < rata-rata +10% -25 = rata-rata -50% < volume < rata-rata–10% -50 = volume < rata-rata–50%
Kode Perusahaan
Macd Gradien Volume Rata-Rata Volume
Bobot
CPIN 117.34 19.5 2.711.500 2.624.716,67 0
EPMT 33.66 93 148.000 29.516,67 50
PTBA 446.19 308.7 2.438.000 4.369.225 -25
SMDR 57.63 65.4 15.500 21.675 -25
TOTL 17.98 18.2 14.458.000 9.219.691,67 50
Tabel 3.13 Tahap 2 rekomendasi jual
Menentukan bobot kriteria yang digunakan dalam proses pengurutan. Kriteria yang digunakan ada tiga yaitu Nilai MACD, Nilai Gradien, dan Volume (Nilai MACD = 0,5 ; Nilai Gradien = 0,3 ; Volume = 0,2). Selanjutnya mengalikan masing-masing kriteria dengan bobot kriteria yang telah ditentukan. Setelah mendapatkan hasil perkalian dari masing-masing kriteria, dapat dilakukan penjumlahan nilai dari proses perkalian diatas.
Kode Perusahaan
Macd Gradien Bobot Volume
Skor
CPIN 117.34 19.5 0 64.52
EPMT 33.66 93 50 54.73
PTBA 446.19 308.7 -25 310.71
SMDR 57.63 65.4 -25 43.44
TOTL 17.98 18.2 50 24.45
Tabel 3.14 Tahap 3 rekomendasi jual
Kode
Perusahaan Macd Gradien
Bobot
Volume Skor
PTBA 446.19 308.7 -25 310.71
CPIN 117.34 19.5 0 64.52
EPMT 33.66 93 50 54.73
SMDR 57.63 65.4 -25 43.44
TOTL 17.98 18.2 50 24.45
Tabel 3.15 Tahap 4 rekomendasi jual
III.4 Subsistem Manajemen Dialog
Yang menjadi input sistem adalah data saham harian yang berasal dari Indeks Regular dan LQ45 dengan alamat url :
http://202.155.2.90/market_summary/daily/List_of_Scriptless%28Regular%29_Q
uotation/...
http://202.155.2.90/market_summary/daily/List_of_LQ45_Securities_Quotation/.. Data saham yang diinputkan meliputi : tanggal, kode perusahaan, nama perusahaan, harga buka, harga terendah, harga tertinggi, harga tutup dan volume. Setelah data saham harian selesai didownload, pengguna dapat menginputkan kode perusahaan dan rekomendasi yang diinginkan.
Hasil Output sistem berupa urutan alternatif perusahaan yang direkomendasikan oleh sistem berdasarkan kode perusahaan dan rekomendasi yang dipilih oleh pengguna.
Adapun perancangan antarmuka untuk form input dan output adalah sebagai berikut :
III.4.1 Halaman Utama
Halaman utama terdiri dari 1 menu utama yaitu menu Menu. Didalam Menu terdapat beberapa sub menu. Pada Menu terdapat 5 sub menu yaitu URL Address,Download, Peramalan, Bantuan danExit.
III.4.2 Form DAFTAR URL
Gambar 3.11 Form Daftar Url
Form ini ditampilkan pada saat pengguna memilih sub menuURL Address pada menu Menu. Tambah untuk menambahkan nama url dan alamat url yang baru diform Daftar Url. Ubah untuk mengubah nama url, alamat url, dan kategori. Hapus untuk menghapus nama url, alamat url, dan kategori yang ada dalam form Daftar Url. Aktif untuk menandakan bahwa alamat url tersebut digunakan.
Gambar 3.12 Form Tambah Url Data Saham DAFTAR URL
Menu Tambah Ubah Hapus Refresh Aktif Close
NAMA JENIS ALAMAT URL STATUS
TAMBAH URL
Nama URL Alamat URL Kategori
III.4.3 FormDOWNLOAD
Gambar 3.13 FormDownloadData Saham
Proses download akan berjalan secara otomatis pada saat pengguna memilih sub menuDownload pada menu Menu. Selama prosesdownloadtombol Download akan berubah menjadi Stop dan pengguna tidak dapat memlih menu yang lain sebelum proses download selesai atau keluar dari menu Download sebelum proses downloadselesai dilakukan. Proses download akan berhenti bila tanggal yang akan didownload sudah terdapat dalam database. Alamat URL yang muncul pada kolom ALAMAT URL, sesuai dengan alamat url yang aktif pada form DAFTAR URL. Kolom TANGGAL berisi tanggal data saham yang didownload. Pada kolom STATUS akan ditampilkan dua status pada saat proses download. Status pertama “selesai”, status ini akan muncul apabila data saham berhasil didownload dan telah tersimpan dalam database. Status kedua yaitu “gagal”, status ini akan muncul apabila program sedang tidak terhubung ke internet , data saham untuk tanggal tertentu tidak ditemukan atau koneksi mengalami gangguan. TombolCloseuntuk keluar dari form ini.
DOWNLOAD DATA SAHAM
ALAMAT URL TANGGAL STATUS
III.4.4 Form Peramalan
Gambar 3.14 Form Peramalan
Tombol Tambah untuk menambahkan nama perusahaan dalam Daftar perusahaan, tombol Hapus untuk menghapus satu per satu nama perusahaan dalam Daftar perusahaan, tombol Clear untuk menghapus semua nama perusahaan dalam Daftar perusahaan, tombol Load untuk menampilkan nama perusahaan yang tersimpan, tombol Simpan untuk menyimpan nama perusahaan, tombol Proses untuk menampilkan nama perusahaan yang terekomendasi ke dalam Hasil rekomendasi setelah sebelumnya pengguna memilih perusahaan dan menentukan Rekomendasi yang diinginkan, tombol Lihat Grafik untuk melihat grafik candlestick , MACD dan tabel .
Grafik (nama perusahaan) PERAMALAN
Daftar Perusahaan
Perusahaan yang Likuiditas Hasil Rekomendasi
JENIS KODE NAMA PERUSAHAAN
Tambah Hapus Clear Load… Simpan
Periode Rekomendas i
Beli Jual
Proses
JENIS KODE NAMA PERUSAHAAN MACD GRADIEN VOLUME RATA2VOL SKOR
Lihat Grafik
III.4.5 Form Pilih Perusahaan
Gambar 3.15 Form Pilih Perusahaan
Form ini muncul pada saat pengguna menekan tombol Tambah dalam form Peramalan. Dalam form ini pengguna dapat memFilter perusahaan yang ingin ditampilkan dengan memasukkan Kode dalam TextBox atau memilih berdasarkan Kategori yang ada. Tombol Refresh untuk menampilkan nama perusahaan dalam Daftar Perusahaan. TombolSelect Alluntuk mencentang semua kode dan nama perusahan yang yang ada dalam Daftar Perusahaan. Tombol Unselect All untuk membatalkan mencentang semua kode dan nama perusahaan. Tombol OK untuk menampilkan kembali nama perusahaan yang telah dipilih dalam Daftar Perusahaan ke dalam form Peramalan. Tombol Batal untuk keluar dari form ini.
III.4.6 Form Pilih Profil
Gambar 3.16 Form Pilih Profil PILIH PERUSAHAAN
Filter Daftar Perusahaan
Kode Kategori
KODE NAMA PERUSAHAAN
RG LQ45
Refresh Select All Unselect OK Batal
All
PILIH PROFIL Daftar Profil
Form ini muncul pada saat pengguna menekan tombol Load dalam form Peramalan. Tombol OK untuk menampilkan kode dan nama perusahaan yang tersimpan dalam Daftar Profil ke dalam form Peramalan. Tombol Batal untuk keluar dari form ini.
III.4.7 Form Detail MACD
Gambar 3.17 Form Detail MACD (Grafik CandleStick dan MACD)
Form ini akan muncul pada saat pengguna menekan tombol Lihat Grafik dalam form Peramalan. Dalam form ini pengguna dapat melihat grafik candlestickdan MACD dengan memilih checkbox Grafik. Bila pengguna memilih checkbox Tabel, maka akan menampilkan Gambar dibawah ini.
Gambar 3.18 Form Detail MACD(Tabel hasil perhitungan) DETAIL MACD
CANDLESTICK
GRAFIK MACD Grafi
k
Tabel
DETAIL MACD
Harga_tutup EMAt1 EMAt2 MACD EMAt3 Selisih Rekomendasi Grafi
k
BAB IV
IMPLEMENTASI DAN PEMBAHASAN
IV.1 Implementasi Manajemen Data 1. Tabel 4.1 daftar_jenis
2. Table 4.2 daftar_url
3. Table 4.3 perusahaan
4. Table 4.4 profil
5. Table 4.5 saham
IV.2 Implementasi Manajemen Proses
Perancangan sistem yang sudah dilakukan, selanjutnya diimplementasikan ke dalam program. Untuk mendapatkan perusahaan yang sesuai dengan kriteria digunakan metode MACD. Yang digunakan dalam perhitungan MACD yaitu harga penutupan saham. Sebelum melakukan proses perhitungan, akan dilakukan pengecekan data yang tersedia dan mengambil data-data yang diperlukan untuk perhitungan. Dibawah ini contoh potongan program untuk mengambil data dari database.
lanjutkan% = 1
If lanjutkan% Then
If (periode_t1& > 0) And (periode_t2& > 0) And (periode_t2& > periode_t1&) Then
' ## cek jumlah data yang tersedia
string_perintah$ = "SELECT COUNT(*) FROM saham " _
+ "WHERE (kode_jenis = " +
Format(kode_jenis&, "#0") + ") " _
+ " AND (kode_perusahaan = '" + kode_perusahaan$ + "') " _
+ " AND (tanggal <= CURRENT_TIMESTAMP)"
jumlah_data& = SQLNilaiAgregat(db,
string_perintah$)
If jumlah_data& <= periode_t2& Then ' ## jumlah data tidak cukup nilai_balik& = erfDataTidakCukup lanjutkan% = 0
End If Else
' ## t1 dan/atau t2 tidak valid nilai_balik& = erfPeriodeTidakValid
offset_limit& = jumlah_data& - jmlh_limit& If offset_limit& < 0 Then offset_limit& = 0
string_perintah$ = "SELECT tanggal, hrg_buka,
hrg_rendah, hrg_tinggi, hrg_tutup, volume " _
+ "FROM saham WHERE (kode_jenis = " + Format(kode_jenis&, "#0") + ") " _
+ " AND (kode_perusahaan = '" +
kode_perusahaan$ + "') " _
+ " AND (tanggal <= CURRENT_TIMESTAMP) " _ + "ORDER BY tanggal " _
+ "LIMIT " + Format(offset_limit&, "#0") + ", " + Format(jmlh_limit&, "#0")
IV.2.1 Menghitung SMA12 dan SMA26
Dengan menjumlahkan harga penutupan harian periode12 dan periode 26 yang disimpan dalam variablesum_hrttutup#. Setelah hasil penjumlahan didapat, dibagi periode 12 dan periode 26. Hasil perhitungan Simple Moving Average disimpan dalam variable nilai_rata2#. Contoh perhitungan Simple Moving Averagedapat dilihat pada potongan program di bawah ini.
Private Function HargaRata2#(Jumlah&)
' ## hitung rata-rata harga penutupan selama <Jumlah&> hari
If Jumlah > 0 Then For h& = 1 To Jumlah
sum_hrgtutup# = sum_hrgtutup# + hit(h&).h_tutup Next h&
nilai_rata2# = sum_hrgtutup# / Jumlah End If
HargaRata2 = nilai_rata2# End Function
IV.2.2 Menghitung EMA12 dan EMA26
Variable yang digunakan dalam perhitungan EMA adalah harga penutupan harian, exponential percentage, dan simple moving average. Perhitungan EMA yaitu harga penutupan periode 12 dan 26 dikalikan denganexponential percentage (2/periode+1) dan ditambahkan dengan hasil perhitungansimple moving average.
Private Function EMA#(n&, pt#, ma_t#) ' ## rumus EMA
EMA = (pt - ma_t) * (2 / (n + 1)) + ma_t End Function
hit(periode_t1&).ema_t1 = EMA(periode_t1&,
hit(periode_t1&).h_tutup, HargaRata2(periode_t1&))
hit(periode_t2&).ema_t2 = EMA(periode_t2&,
hit(periode_t2&).h_tutup, HargaRata2(periode_t2&)) For h& = periode_t1& + 1 To jumlah_baris&
If h& > periode_t1& Then
hit(h&).ema_t1 = EMA(periode_t1&, hit(h&).h_tutup, hit(h& -1).ema_t1)
End If
If h& >= periode_t2& Then If h& > periode_t2& Then
hit(h&).ema_t2 = EMA(periode_t2&, hit(h&).h_tutup, hit(h& -1).ema_t2)
End If
IV.2.3 Menghitung MACD
hit(h&).MACD = hit(h&).ema_t1 - hit(h&).ema_t2
IV.2.4 Menghitung SMA9
Cara perhitungannya sama dengan periode 12 dan periode 26, tapi tidak menggunakan harga penutupan harian melainkan menggunakan hasil perhitungan MACD. Hasil penjumlahan MACD periode 9 disimpan dalam variable jml_macd9hr#. Selanjutnya hasil penjumlahan MACD dibagi dengan periode 9. Hasil pembagiaannya disimpan dalam variable sma_9#.
jml_macd9hr# = jml_macd9hr# + hit(h&).MACD If h& = periode_t2& + 8 Then
sma_9# = jml_macd9hr# / 9
IV.2.5 Menghitung EMA9
Caranya dengan mengurangkan MACD dengan SMA periode 9 dikalikan dengan EP(2/(periode9+1) dan ditambahkan dengan SMA periode 9. Hasil perhitungan EMA periode 9 disimpan dalamarray hit(h&).ema_09.
If h& > periode_t2& + 8 Then
hit(h&).ema_09 = EMA(9, hit(h&).MACD, hit(h& - 1).ema_09) End If
IV.2.6 Menghitung Selisih dan Menentukan Rekomendasi Beli / Jual
Menghitung selisih dengan mengurangkan MACD dengan EMA periode 9. Hasil perhitungan selisih disimpan dalamarray hit(h&).selisih. Jika selisihnya positif mengindikasikan sinyal beli, dan jika selisihnya negatif mengindikasikan sinyal jual.
If h& >= periode_t2& + 8 Then
hit(h&).selisih = hit(h&).MACD
-hit(h&).ema_09
recomm$ = IIf(hit(h&).selisih < 0, "jual", "beli")
End If
IV.2.7 Menghitung Rata-rata Volume
Menghitung rata-rata volume dari setiap perusahaan. Hasil perhitungan rata-rata disimpan dalam variablemVolumeRata2.
jmlh_vol# = 0
For h& = 1 To jumlah_baris&
mVolumeRata2 = jmlh_vol# / jumlah_baris&
IV.2.8 Memberi Bobot Volume dan Gradien
Pemberian bobot gradien dengan mengalikan nilai gradien dengan (-10). Pemberian bobot volume dengan membandingkan volume dengan rata-rata volume. Untuk rekomendasi beli, pemberian bobotnya sebagai berikut :
-50 = volume > rata-rata + 50%
-25 = rata-rata + 10% < volume < rata-rata +50% 0 = rata-rata–10% < volume < rata-rata +10% 25 = rata-rata -50% < volume < rata-rata–10% 50 = volume < rata-rata - 50%
Untuk rekomendasi jual pemberian bobotnya sebagai berikut : 50 = volume > rata-rata + 50%
25 = rata-rata + 10% < volume < rata-rata +50% 0 = rata-rata–10% < volume < rata-rata +10% -25 = rata-rata -50% < volume < rata-rata–10% -50 = volume < rata-rata - 50%
Dibawah ini merupakan contoh potongan program pemberian bobot gradien dan volume.
skor_grad# = Gradien * -10
arah_volume% = IIf((UCase(Rekomendasi) = "BELI"), 1, -1) If Volume >= (1.5 * rata2vol#) Then
' ## volume >= (rata2vol + 50%) skor_volume# = -50 * arah_volume%
ElseIf ((1.1 * rata2vol#) <= Volume) And (Volume < (1.5 * rata2vol#)) Then
' ## (rata2vol + 10%) <= volume < (rata2vol + 50%) skor_volume# = -25 * arah_volume%
ElseIf ((0.9 * rata2vol#) <= Volume) And (Volume < (1.1 * rata2vol#)) Then
' ## (rata2vol - 10%) <= volume < (rata2vol + 10%) skor_volume# = 0
ElseIf ((0.5 * rata2vol#) <= Volume) And (Volume < (0.9 * rata2vol#)) Then
' ## (rata2vol - 50%) <= volume < (rata2vol - 10%) skor_volume# = 25 * arah_volume%
Else
IV.2.9 Memberi Bobot Hasil Perhitungan MACD, Gradien, Volume
Untuk rekomendasi beli bobot MACD (0,5), gradient (0,2) dan volume (0,3). Untuk rekomendasi jual bobot MACD(0,5), gradient(0,3) dan volume (0,2). Selanjutnya masing-masing bobot tersebut dikalikan dengan nilai MACD, gradien dan volume. Kemudian semua hasil perkalian tersebut dijumlahkan. Hasil penjumlahan disimpan dalam variableskor_hasil#.
If Rekomendasi = "BELI" Then
Skor_hasil# = (0.5 * skor_macd#) + (0.2 * skor_grad#) + (0.3 * skor_volume#)
Else
Skor_hasil# = (0.5 * skor_macd#) + (0.3 * skor_grad#) + (0.2 * skor_volume#)
End If
IV.2.10 Mengurutkan Hasil Rekomendasi
Untuk rekomendasi beli, nilai skornya semakin negatif semakin direkomendasikan untuk dibeli. Untuk rekomendasi jual, nilai skornya semakin positif, semakin direkomendasikan untuk dijual.
If jml_hasil% > 0 Then
Select Case filter_rekom$ Case "BELI"
' ## urutkan hasil mulai dari skor terendah For i% = 1 To jml_hasil%
For j% = i% + 1 To jml_hasil%
h_gradien(j%) = hsl_gradien#
' ## urutkan hasil mulai dari skor tertinggi For i% = 1 To jml_hasil%
For j% = i% + 1 To jml_hasil%
If h_bobot(j%) > h_bobot(i%) Then n_bobot# = h_bobot(i%)
IV.3 Implementasi Manajemen Dialog IV.3.1 Form Menu Utama
Gambar 4.1 Konfirmasi Data Saham (Yang sudah melewati waktu tertentu)
Gambar 4.2 Tampilan Menu Utama
IV.3.2 FormURL Address
Dalam form ini terdapat enam sub menu yaitu Tambah, Ubah, Hapus, Aktif, Refresh, Exit. Sub menu Tambah untuk menambah nama url, alamat url yang baru. Ubah untuk mengedit nama url, alamat url dan kategori yang telah ada sebelumnya. Hapus untuk menghapus nama url, alamat url dan kategori dari database. Aktif untuk mengaktifkan nama url, alamat url dan kategori yang ada. Refresh untuk merefresh nama url, alamat url dan kategori yang ada. Exit untuk keluar dari form ini.
Gambar 4.3 Tampilan URL Address
alamat url yang baru dan menentukan kategori yang dinginkan. Tombol OK akan aktif bila semuatextboxsudah terisi.
Gambar 4.4 Tampilan Tambah URL
Gambar 4.5 Konfirmasi Bila Nama URL sudah ada
Gambar 4.6 Tampilan Ubah URL
Gambar 4.7 Konfirmasi Hapus Data IV.3.3 FormDownload
Gambar 4.8 Tampilan Download
Gambar 4.9 Konfirmasi Jika Tidak Ada Alamat URL yang aktif
Gambar 4.10 Konfirmasi Membatalkan ProsesDownload
Gambar 4.11 Konfirmasi Download Selesai IV.3.4 Form Peramalan
rata-rata volume dikali 10%. Tombol Proses akan aktif bila pengguna telah memilih perusahaan, untuk menampilkan jenis, kode, nama perusahaan, MACD, gradien, volume, rata-rata volume dan skor di tabel Hasil rekomendasi. Tombol Grafik untuk menampilkan grafik candlestick, MACD dan table perhitungan.
Gambar 4.12 Tampilan Peramalan
Gambar 4.13 Konfirmasi Proses Simpan data perusahaan
Gambar 4.14 KonfirmasiOverwrite
Untuk menampilkan jenis, kode dan nama perusahaan yang tersimpan di database ke dalam tabel Daftar perusahaan di form Peramalan.
Gambar 4.15 Tampilan Pilih Profil IV.3.5 Form Pilih Perusahaan
Form ini akan tampil pada saat pengguna memilih tombol Tambah. Pengguna dapat menampilkan kode dan nama perusahaan sesuai dengan kode yang diinputkan atau dengan memilih salah satu kategori yang ada. Tombol OK akan aktif bila pengguna telah memilih kode dan nama perusahaan dari tabel Daftar perusahaan.
IV.3.6 Form MACD
Menampilkan Grafik candlestick, MACD dan tabel sesuai dengan kode perusahaan yang ditampilkan di tabel Hasil Rekomendasi.
Gambar 4.18 Tampilan Tabel Perhitungan IV.4 Pembahasan Program
IV.4.1 Hasil Pengujian Perangkat Lunak
Dibawah ini merupakan hasil pengujian perangkat lunak dalam menghasilkan sinyal-sinyal perdagangan.
a. Grafik MACD Sinyal Beli
• SMGR
Gambar 4.19 Grafik MACD Sinyal Beli dari Program
b. Grafik MACD Sinyal Jual • PNLF
Gambar 4.21 Grafik MACD Sinyal Jual dari Program
Gambar 4.22 Grafik MACD Sinyal Jual dari Virtual Trading 2. Program mempermudah pengguna untuk mengetahui perusahaan mana
Gambar 4.23 Pilih Perusahaan menggunakan Program
Gambar 4.24 Pilih Perusahaan menggunakanVirtual Trading
Gambar 4.25 Data Saham untuk pengujian
Gambar 4.26 Garfik MACD Perusahaan MAMI
Gambar 4.27 Grafik MACD Perusahaan SCMA
Gambar 4.29 Grafik MACD Perusahaan BKSW
Dibawah ini merupakan keterangan dari setiap kolom dalam tabel.
Kolom A = tanggal yang menunjukan sinyal beli
Kolom B = harga buka sinyal beli pada jam 09.30-an
Kolom C = harga tutup sinyal beli pada jam 16.00-an
Kolom D = harga tengah sinyal beli pada jam 12.00-an( rata-rata dari kolom B dan kolom C)
Kolom E = tanggal yang menunjukkan sinyal jual
Kolom F = harga buka sinyal jual pada jam 09.30-an
Kolom G = harga tutup sinyal jual pada jam 16.00-an
Kolom H = harga tengah sinyal beli pada jam 12.00-an (rata-rata dari kolom F dan kolom G)
Kolom I = selisih kolom H dan kolom D • MAMI (Mas Murni Indonesia)
Tgl Beli
12/04/2010 50 51 50.5 05/05/2010 53 50 51.5 1(1.98)
03/06/2010 50 51 50.5 14/06/2010 50 50 50 -0.5(-0.99)
• SCMA (Surya Citra Media)
24/03/2010 900 900 900 31/03/2010 900 900 900 0(0.00)
06/04/2010 900 950 925 11/05/2010 1200 1200 1200 275(29.73) 03/06/2010 1200 1280 1240 17/06/2010 1380 1190 1285 45(3.63)
Rata-rata 106.67(11.1) Tabel 4.8 Rata-rata Beli–Jual SCMA
• ASIA (Asia Natural Resources)
Tgl Beli
18/05/2010 93 107 100 21/05/2010 101 94 97.5 -2.5(-2.5)
01/06/2010 102 117 109.5 17/06/2010 139 134 136.5 27(24.66) Rata-rata 12.25(11.08) Tabel 4.9 Rata-rata Beli–Jual ASIA
• BKSW (Bank Kesawan)
Tgl Beli
10/03/2010 820 830 825 22/03/2010 830 800 815 -10(-1.21) 26/05/2010 760 780 770 16/06/2010 770 760 765 -5(-0.65) Rata-rata -7.5(-0.93) Tabel 4.10 Rata-rata Beli–Jual BKSW
SAHAM FREKUENSI BELI/JUAL KEUNTUNGAN RATA-RATA
MAMI 2 0.5%
SCMA 3 11.1%
ASIA 2 11.08%
BKSW 2 -0.93%
Rata-rata 5.44%
Tabel 4.11 Frekuensi Beli–Jual dan Keuntungan