Pembuatan Game Simulasi Trading Saham Pada Platform Android
Artikel Ilmiah
Diajukan kepada
Fakultas Tekniologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Oleh:
Yusak Erick Setiawan
NIM : 672013024
Program Studi Teknologi Informasi
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
April 2017
1
Pembuatan Game Simulasi Trading Saham pada Platform
Android
1)Yusak Erick Setiawan,
2)Yos Richard Beeh,
3)Jasson Prestiliano
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Dr. O. Notohamidjojo No. 1-10, Indonesia
Email : 1)
Abstrak
Trading saham merupakan salah satu kegiatan berinvestasi dengan
menjual-belikan saham perusahaan. Dalam Trading, diperlukan
kemampuan melakukan analisa saham yang dapat memberikan
keuntungan. Analisa yang salah mengakibatkan kerugian kepada trader
sehingga trader selalu berhati-hati dalam melakukan trading. Trader
pemula belajar trading saham dan melatih analisa menggunakan simulasi
trading. Namun, sebagian orang kurang tertarik melakukan simulasi
konvensional sehingga dibutuhkan pembelajaran menggunakan alternatif
lain. Game dibuat menggunakan metode research and development
dengan tujuan dapat membantu trader pemula dalam mempelajari serta
membuat analisa sederhana. Game dimulai dengan mengumpulkan
pemain dalam game room. Dalam game room, harga saham berubah
mengikuti situasi yang dimunculkan dalam bentuk berita. Berdasarkan
berita yang muncul, pemain dapat memilih saham mana yang dianggap
menguntungkan.
Kata Kunci : Trading saham, Game simulasi, Game.
Abstract
Stock trading is one of investation method by selling and buying
company’s stocks. Analyzing profitable stock is an important skill needed
for trading. Trader could loss profit if they make wrong decision gone
wrong. Traders improve their analytic skill by learning their previous
decisions and also use trading simulation for beginner traders. However,
many people didn’t interested using simulation. A simulation game can
be used as an alternative method to learn stock trading. In this reseach,
game created by using research and development method in purpose to
provide trading simulation for beginner traders. Game starts by
grouping players in a game room. In this game room, the stocks price are
fluctuating based on the given situation that appeared in news, and
players can choose which stock that will benefit the most based on the
news that has appeared.
Key Words: Stock Trading, Simulation game, Game.
1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya Wacana. 2) Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana. 3)
Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
2
1. Pendahuluan
Aset adalah suatu kepemilikan harta suatu perusahaan. Aset terbagi menjadi
empat jenis: aset tetap, aset lancar, aset tidak berwujud, dan aset keuangan. Aset
keuangan merupakan investasi dalam aset dan surat berharga dari institut lain.
Saham termasuk salah satu dari aset keuangan [1]. Saham berupa surat yang
menunjukkan bagian kepemilikan suatu perusahaan, dimana saham perusahaan
diperjualbelikan di pasar modal kepada para trader. Trader mengambil
keuntungan dengan menjual saham di saat harganya lebih besar daripada harga
pada saat saham beli. Untuk membeli saham, Trader memerlukan analisa untuk
memilih saham mana yang menguntungkan. Kegiatan tersebut lebih dikenal
dengan nama trading [2].
Pengalaman adalah salah satu hal yang diperlukan dalam melakukan analisa
dalam jual-beli saham. Setiap trader memiliki saat dimana mereka melakukan
kesalahan dalam trading. Dengan mempelajari kesalahan, trader lebih matang
dalam membuat analisa baru di kemudian hari. Trader lebih dapat mengolah
informasi yang ia dapat dalam melakukan analisa trading. Sebagai contoh, saat
ekonomi yunani jatuh, nilai tukar yuan turun dan berdampak kepada nilai tukar
rupiah yang mengakibatkan Indek Harga Saham Gabungan (IHSG) Indonesia
turun [3]. Tentunya ini adalah saat dimana trader membeli saham yang diinginkan.
Bersamaan dengan kejadian tersebut, paket kebijakan ekonomi negara sedang
dirilis [4]. Kebijakan tersebut membenahi prosedur-prosedur ekonomi lama untuk
menyesuaikan dengan kondisi ekonomi sekarang. Paket ini berdampak positif
kepada saham indonesia dan menaikan harga saham kembali. Pada waktu inilah
para trader menjual saham mereka untuk memperoleh keuntungan dari pembelian
saham sebelumnya. Contoh lain ketika Simagold Inti Perkasa Tbk PT (TMPI)
mengatakan akan menargetkan produksi menuju ke kuartal 3 [5]. Begitu
mendengar berita keluar, para trader langsung membeli saham tersebut. Namun,
analisa tersebut salah dan memberikan efek besar pada harga saham TMPI. Harga
saham TMPI turun sebanyak 30% dalam waktu sebulan secara bertahap [6].
Simulasi trading adalah salah satu cara trader untuk belajar serta
mempertajam analisa trading. Beberapa tempat telah menyediakan simulasi yang
tidak memberikan kerugian dalam mempelajari trading. Pergerakan harga dalam
simulasi tersebut mengikuti perubahan secara nyata yang berubah dalam waktu
singkat maupun lama. Akibatnya, hasil analisa trader muncul dalam waktu yang
tidak menentu, baik itu dalam kurun waktu semenit, sehari, seminggu, atau
sampai lebih dari setahun. Di samping itu sebagian orang kurang tertaring dengan
metode simulasi yang konvesional karena itu dibutuhkan metode alternatif lain.
Game memberikan solusi lebih baik dalam pembelajaran yang membutuhkan
sedikit konteks atau latar belakang informasi dalam menentukan pilihan. Game
juga lebih sesuai jika waktu yang dimiliki pelajar sedikit atau ketika konten lebih
mencodong kepada hiburan. Game tercipta dari kesenangan serta proses mencapai
suatu objektif, tingkat kesenangan dapat dicapai dengan mengimplementasikan
lebih fitur seperti di game [7].
3
Mobile game adalah salah satu bidang yang terus berkembang seiring
penyebaran smatphone di dunia. Dari data statistik International Telecoms Union
(ITU), pengguna mobile setiap tahun selalu meningkat. Flurry Analytics
melakukan riset akan pembagian waktu yang diberikan dalam menggunakan
smartphone. Dari waktu yang diberikan (3 jam 40 menit), gaming (15%) meraih
peringkat kedua setelah entertainment (17%) dalam penggunaan waktu tersebut
[8]. Di Indonesia, sistem operasi smartphone yang paling banyak digunakan
adalah android. Dari laporan yang dikumpulkan Waiwai Marketing, jumlah
pengguna android di indonesia sebesar 41 juta pada tahun 2015 [9].
Berdasarkan masalah yang telah dipaparkan, maka rumusan masalah
penelitian ini adalah bagaimana cara membuat game simulasi trading pada
platform android? Pada penelitian ini dibangun suatu aplikasi game simulasi
trading berbasis android. Game ini bertujuan untuk memperkenalkan trading
saham dan melatih membuat analisa dalam memilih saham yang menguntungkan.
Game direncanakan dapat dimainkan multiplayer dan dapat dimainkan secara
online.
2. Tinjauan Pustaka
Elizabeth melakukan penelitian tentang perilaku investor saham dalam
pembuatan keputusan investasi saham. ia menguji kepada sejumlah sample
dengan memberikan sebuah simulasi saham dalam 2 termin. Termin pertama,
sample melakukan transaksi tanpa menerima informasi akuntansi. Termin kedua,
sample melakukan transaksi setelah menerima informasi akuntansi. Ditemukan
bahwa keuntungan sample lebih besar setelah menerima informasi akuntansi.
Berdasarkan hasil tersebut, disimpulkan bahwa informasi merupakan salah satu
faktor penting investor dalam membeli saham [10].
Pada jurnal berjudul ‘Model Pembelajaran Pasar Modal Berbasis Simulasi
Perdagangan Maya BEI (Bursa Efek Indonesia)’, dilakukan uji coba model belajar
simulasi trading dalam pembelajaran kuliah pasar modal. Dalam matakuliah
tersebut, diajarkan dasar-dasar trading dan cara melakukan transaksi dalam pasar
modal menggunakan simulasi trading BEI. Ditemukan bahwa mahasiswa lebih
mengerti dalam melakukan transaksi di pasar modal. Namun, waktu pembelajaran
tidak sesuai dengan perubahan kondisi pasar modal [11].
Pada jurnal yang berjudul ‘Perancangan dan Pembuatan Game Simulasi
Pertanian Dan Peternakan’, menjelaskan tentang desain dan pembuatan game
simulasi berbasis pertanian. Jurnal tersebut menghasilkan game simulasi yang
mendekati sistem bercocok tanam dengan menggunakan flash. Game tersebut
dapat menunjukkan hasil bercocok tanam lebih cepat daripada aslinya [12].
Berdasarkan beberapa penelitian yang sudah dipaparkan, dibutuhkan suatu
aplikasi yang bisa mengurangi waktu yang dibutuhkan waktu untuk mengikuti
kondisi saham. Selain itu, trader harus bisa menerima informasi yang diolah
untuk menentukan saham yang menguntungkan. Dengan membuat sebuah game
simulasi trading, perubahan harga saham dapat dilihat lebih singkat dan berita
sebagai sumber informasi pemain untuk memilih transaksi yang akan dilakukan.
4
Trading saham
Trading saham adalah kegiatan beli saham di harga murah dan jual di
harga yang lebih tinggi dalam waktu relatif singkat untuk memperoleh
keuntungan yang cepat. Rentang waktu dalam trading berkisar dalam hitungan
detik, menit, jam, hari, hingga beberapa minggu. Umumnya trader memanfaatkan
tren dan momentum pada saham-saham yang harganya sangat berflukturasi untuk
menghasilkan keuntungan. Terdapat 2 macam metode analisis trading : analisis
fundamental dan analisis teknikal.
Analisis fundamental mencakup informasi mengenai laporan keuangan
dan kesehatan perusahaan, manajemen perusahaan, pesaing, dan situasi pasar.
Dengan kata lain, analisis ini dilakukan dengan melihat histori ekonomi
perusahaan dan melakukan prediksi dari data tersebut. Hal-hal yang perlu
diperhatikan dalam dilihat dalam data adalah : ROE (laba bersih dengan enkuitas
saham), NPM (kemampuan perusahaan dalam penghasilan keuntungan setelah
dipotong pajak), dan EPS ( pendapatan dari setiap lembar saham).
Analisis teknikal mempercayai bahwa semua informasi penting telah
tercangkup dalam kombinasi nilai harga dalam grafik. Seorang trader hanya
memerlukan pengamatan dan analisa pergerakan harga di pasar. Dengan begitu,
trader lebih cepat membaca pergerakan pasar dibandingkan analisis fundamental.
Grafik dalam trading berbentuk seperti lilin. Terdapat 1 garis di bawah dan
1 garis diatas, itu menunjukkan harga tertinggi dan terendah pada kurun waktu
sekarang. Sedangkan, warna kotak memberitahukan apakah dalam kurun waktu
ini saham untung (terang) atau rugi (gelap). Terdapat juga harga dalam jangka
waktu dibuka maupun harga waktu ditutup. Untuk kotak untung, harga dibuka
berada di sisi bawah kotak dan harga ditutup disisi bagian atas kotak. Kotak rugi
memiliki keterbalikan arti dengan kotak untung [2].
Gambar 1. Bentuk grafik candlestick dalam trading
Game
Game atau permainan diciptakan seseorang untuk memberikan kesenangan
atau hiburan dengan mendapatkan goal yang telah disedikan. Untuk mendapatkan
goal, game memberikan tantangan yang bisa menarik pemain untuk
mendapatkannya. Game bisa dimainkan sendiri (soloplayer) atau dengan orang
lain (multiplayer).
5
Game terbagi menjadi beberapa jenis berdasarkan genre game. Genre
bergantung pada isi game, genre selalu bertambah dan berubah setiap waktu.
Terdapat juga game yang memiliki lebih dari satu genre. Game genre yang
banyak dikenal adalah RPG, Adventure, FPS, Simulation, dan sebagainya [13].
Simulation Game
Simulation game atau game simulasi merupakan salah satu genre game yang
memberikan situasi terhadap pemain yang disesuaikan dengan kenyataan. Game
simulasi tidak memberikan aksi yang berlebih seperti action game, namun lebih
kepada mengatur terhadap keadaan yang diberikan. Pemain bebas memilih pilihan
dalam menangani situasi tersebut. Game ini lebih meberikan tantangan ekonomi
dan konseptual [14]. Contoh game simulasi adalah The Sims, Kerbal Space
Program, Football Manager dan lain sebagainya.
Mobile Game
Mobile game adalah game yang dibuat untuk dimainkan pada mobile
devices seperti smartphone. Banyak mobile game masih terlihat seperti versi
sederhana dari game lengkap. Banyak game sukses yang didesain khusus demi
memaksimalkan penggunaan tampilan mobile phone, penyederhanaan kontrol,
serta gameplay menyenangkan dan bervariasi hanya dengan menggunakan 1
tombol [15]. Contoh mobile game adalah Clash of Clans, Valkyrie Crusade, Seven
Knight, dan lain sebagainya. Game yang dibuat dalam jurnal ini adalah
multiplayer, simulation, mobile game.
Android
Android memiliki beberapa fitur seperti penggunaan audio(suara), bluetooth,
penyimpanan internal, kamera, maupun koneksi. Salah satu penyimpanan internal
yang bisa digunakan adalah dengan menggunakan SQLite. SQLite adalah sebuah
SQL database engine yang bisa berdiri sendiri tanpa proses server seperti
kebanyakan SQL database lain. Data SQLite tersimpan di dalam smartphone dan
bisa dibaca dan diubah oleh aplikasi yang menggunakan data tersebut. SQLite
akan digunakan untuk menyimpan log harga saham dan nama perusahaan serta
uang yang dimiliki pemain. Kemudian, digunakanlah web service sebagai media
pengiriman data game yang menghubungkan setiap pemain [16].
3. Metologi Penelitian
Metode penelitian yang akan digunakan adalah Research And Development
(R&D). R&D digunakan untuk meneliti dan mengembangkan suatu produk secara
bertahap. Penelitian dan pengembangan diawali dengan penelitian terhadap
masalah yang menghasilkan data tentang masalah yang dihadapi untuk mecari
solusi terhadap masalah tersebut. Hasil penelitian tersebut dijadikan acuan dalam
membuat produk. Dalam pengembagannya, masih dilakukan observasi produk
dari perancangan sampai ke tahap ujicoba di lapangan [17]. Metode ini dipilih
dikarenakan banyak revisi produk dapat di batasi dan hasil akhir dapat diteliti
lebih lanjut di kemudian hari.
6
Gambar 2. Langkah-langkah dalam metode R&D [17]
Pertama, mengumpulkan data harga saham dikumpulkan dengan melihat
history perubahan harga emiten terhadap berita-berita yang muncul pada waktu
tersebut. Dari data yang dikumpulkan, akan dibagi berdasarkan seringnya muncul
berita dan dampak terhadap sektor-sektor yang ada. Setelah itu mencari web
hosting yang bisa digunakan untuk membuat WS.
Setelah pengumpulan data selesai, dilakukanlah perancangan akan sistem
yang digunakan untuk mengatur gameplay, alur data management, serta WS yang
dibutuhkan. Hasil rancangan sistem tersebut kemudian diperiksa apakah sesuai
dengan kebutuhan yang diperlukan. Jika ternyata sistem tersebut menyulitkan,
maka akan direvisi terlebih dahulu. Tampilan game kasar dirancang setelah
rancangan sistem selesai.
Sistem yang telah valid barulah bisa dimulai pengembagan aplikasinya. WS
bisa dibuat setelah database server telah jadi. Jika WS yang sudah berfungsi
lancar, gameplay diimplementasikan dalam game yang dibuat. Game mulai
dijalankan dengan koneksi server menggunakan WS.
Game diujicoba pada mahasiswa ekonomi dan teknologi informasi. Dalam
ujicoba dikumpulkan data bug, glitch, dan feedback yang ditemukan. Data
tersebut dipilah berdasarkan besar dan kecil masalah tersebut dapat diselesaikan.
Game kemudian dibenahi berdasarkan data yang dikumpulkan dari ujicoba.
Setelah masalah tersebut diselesaikan, game diujicoba kembali dan dilakukan
revisi lagi paling banyak 3 kali. Jumlah tester dalam ujicoba pertama adalah 3
tester. Sedangkan, ujicoba kedua dan ketiga dilakukan oleh 10 tester. Game yang
telah direvisi 3 kali dipaket dalam file .apk yang bisa didistributsikan ke banyak
orang. Data produk kemudian didokumentasi agar dapat diteliti lebih lanjut
kedepannya.
Potensi dan
Masalah
Studi Literatur
Pengumpulan
Informasi
Perancangan
Produk
Validasi
Desain
Revisi Desain Pembuatan
Produk
Uji Coba
Terbatas
Revisi
Produk 1
Uji Coba Lap.
Utama
Revisi
Produk 2
Uji Coba
Lapangan
Operasional
Revisi
Produk 3
Diseminasi Dan
Implementasi
7
Gambar 3. Use Case Diagram game
Terdapat 2 actor agar game bisa dijalankan yaitu actor player dan admin.
Player memiliki hak untuk membuat room, membeli atau menjual saham, dan
memulai game. Sedangkan, admin melakukan perubahan data yang
mempengaruhi permainan. Data tersebut adalah putaran, harga saham, serta berita.
Gambar 4. Class Diagram
8
Pada awal registrasi, data pemain disimpan dalam class player. Data
tersebut digunakan untuk menyimpan histori kemenangan dan status ‘hidup’ atau
‘mati’ ID. Saat pemain bergabung dalam sebuah game room, data diri pemain
ditambahkan ke dalam class player status. setiap player status dapat memiliki
sejumlah aset yang disimpan dalam class asset. Harga setiap aset mengikuti
keadaan harga yang dilihat pada class harga saham. Harga awal saham pada tiap
permainan diisikan data dari class harga saham base.
Setiap game room memiliki beberapa pemain yang menunggu atau sedang
bermain. Munculnya beragam berita pada setiap game room ditentukan oleh
jumlah frekuensi yang terdapat dalam class frekuensi berita room yang diisikan
berdasarkan frekuensi berita base. Sebuah berita dapat berisikan lebih dari 1 efek
berita. Efek berita yang keluar disimpan dalam class berita aktif. berita yang aktif
mempengaruhi perubahan harga saham pada game room.
Gambar 5. Activity Diagram Jual-Beli saham dan Activity Diagram Update ruang
Player dapat membeli saham yang diinginkan dengan memilih saham
terlebih dahulu. Setelah saham dipilih, player menentukan jumlah saham yang di
transaksikan lalu memilih antara jual atau beli. Jika player melebihi kemampuan
beli atau jual yang ia miliki, jumlah saham yang ditransaksikan akan disesuaikan
dengan kemapuan jual atau beli pemain.
Admin melakukan hitung mundur di setiap ruang. Setelah hitung mundur
selesai, trigger secara otomatis meminta sistem untuk melakukan update ruangan.
Harga di hari besok muncul sebelum harga diubah agar perubahan terlihat pada
pagi hari putaran berikutnya. Sedangkan berita baru muncul setelah harga diubah
supaya player bisa mengikuti pergerakan harga yang telah ia ketahui.
9
Gambar 6. Sequence Diagram beli aset baru
Transaksi pembelian aset baru dilakukan dengan tahap melempar data yang
diberikan player. Sistem menerima variabel tersebut dan membuka koneksi ke
database aset. Data kemudian ditambahkan kedalam database aset. Setelah aset
berhasil ditambahkan, koneksi ditutup dan transaksi selesai.
Gambar 9. Sequence Diagram tambah berita aktif baru
10
Pada saat hari telah berubah menjadi ‘pagi’, admin melakukan penambahan
berita aktif selama otomatis. Terdapat 2 perubahan penting dalam database, yaitu
pada tabel berita aktif dan tabel frekuensi berita room. Perubahan pada frekuensi
berita room digunakan supaya berita yang telah dikeluarkan tidak dapat
dilkeluarkan kembali. Perubahan tersebut dilakukan setelah berita aktif telah
ditambahkan.
Story
Ada sebuah organisasi bernama Greed Service (GS). Organisasi tersebut
membantu melunasi hutang-hutang klien mereka. Dengan syarat, klien harus
mendapatkan sejumlah keuntungan melalui trading saham dengan modal yang
mereka berikan. Setiap kali klien menggunakan jasa GS, permintaan mereka akan
meningkat seiring melihat kemapanan klien mereka. Klien diberikan kesempatan
gagal sebanyak 3 kali. Jika lebih dari itu, ‘user ID’ akan ‘dihapus’ dan tidak dapat
digunakan selamanya.
Karakter
- Greed Service.
Organisasi yang memberikan bantuan kepada orang-orang yang ingin
melunasi hutangnya. Mereka berhubungan dengan pemain melalu Operator
mereka pada awal permainan dan akhir permainan. Dialog mereka berubah seiring
dengan berapa kali pemain menggunakan jasa mereka dan jumlah kegagalan
mereka.
- Client
Pengguna jasa Greed Service. Mereka selalu berusaha melunasi hutang
mereka. Tetapi setelah melunasi hutang, tak lama kemudian mereka kembali
terlilit hutang.
Mekanik
Pada awal permainan, pemain diberikan modal sebesar Rp. 10.000.000
untuk bertransaksi selama 8 ‘hari’. 1 ‘hari’ dibagi menjadi 3 bagian waktu yaitu
waktu ‘pagi’, ‘siang’, dan ‘sore’. Dalam setiap waktu, pemain diberikan waktu
selama 2 menit untuk melakukan aksi ‘beli saham’, ‘jual saham’ , dan ‘pass’. Jika
dalam waktu 2 menit pemain tidak melakukan aksi ‘pass’, pemain tidak dapat
melakukan aksi apapun dan dikirim ke halaman tunggu secara paksa.
Dalam ruang tunggu, pemain menunggu selama 30 detik untuk dapat
melakukan aksi berikutnya di waktu baru. Waktu 30 detik dimulai dari pemain
yang melakukan ‘pass’ pertama kali. Jika dalam selang waktu itu pemain lain
tidak ikut melakukan ‘pass’, waktu aksi pemain tidak dikembalikan ke durasi
awal (2 menit) melainkan menggunakan sisa waktu aksi pada waktu sebelumnya.
11
Berita menjadi pengaruh perubahan harga saham. Setiap ‘pagi’, berita
dimunculkan kepada pemain. 1 berita dapat mempengaruhi lebih dari 1 saham dan
setiap berita saling mempengaruhi perubahan harga. Seiring dengan ‘hari’
berjalan, jumlah berita yang akan dimunculkan semakin banyak. Pada hari
pertama, berita dimunculkan berjumlah 4 dan bertambah 2 setiap 2 ‘hari’ terlewati.
Saham yang terdapat dalam game berjumlah 16 saham yang
dikelompokan kedalam 4 sektor saham yang berbeda. 4 sektor tersebut adalah
pertanian, konsumer, industri, dan perbankan. Setiap saham memiliki harga awal
yang berbeda-beda. History harga saham dari awal permainan digambarkan dalam
grafik candlestick.
Setelah 8 hari telah dilewati, pemain yang tidak berhasil mencapai target
akan dikurangi jumlah retry-nya. Jika jumlah retry habis, ‘user id’ pemain
dikatakan ‘mati’ dan dilempar ke halaman registrasi. email dan username yang
digunakan untuk ‘user id’ yang ‘mati’ tidak bisa digunakan kembali. Pemain yang
gagal akan diberitahukan ke pemain lain.
Challenge
Game ini menantang pemain untuk bertahan sejauh mana ia dapat bertahan
dengan permintaan GS. Karena semakin lama, permintaan GS semakin tinggi.
Awalnya pemain pemain dapat bertahan dengan mengumpulkan keuntungan
sedikit, Semakin lama uang yang harus dikumpulkan semakin tinggi.
4. Hasil dan Pembahasan
Gambar 10. Tampilan Menu awal game
Setiap kali permainan dimulai, ada sedikit informasi target yang diberikan
oleh operator GS. Target keuntungan terus bertambah sesuai dengan jumlah
keberhasilan pemain melunasi hutang. Selain itu, operator juga memberitahukan
berapa sisa kesempatan gagal yang dimiliki pemain. jika kesempatan habis,
pemain dikenakan hukuman.
12
Gambar 11. Tampilan Menu awal game
Game dimulai dari tampilan awal yang berisikan 3 menu yang berada di
kolom C. 3 menu tersebut adalah Beli atau Jual saham, Lihat Berita, dan Pass.
Tombol pass digunakan jika player ingin menyelesaikan aksinya. Di simbol A
terdapat batas waktu aksi pemain dan di setiap halaman tertera waktu yang tersisa.
sedangkan kolom B terdapat tabel kekayaan, tabel aset, serta uang tunai. Tabel
kekayaan merupakan jumlah kekayaan setiap player yang ikut di dalam ruang.
Tabel aset adalah aset saham yang dimiliki oleh player. Kedua tabel tersebut
dapat di-scroll. Sedangkan uang tunai sebagai jumlah modal tersisa yang dimiliki
pemain.
Gambar 12. Tampilan List Saham
Dalam menu pilihan Jual dan Beli saham, player diberikan beberapa
pilihan saham yang akan ditransaksi. Kolom B berisikan list saham dengan
perbedaan warna. Arti warna tiap saham dijelaskan di dalam kolom C. Jumlah
total saham yang dapat dibeli sebanyak 16 yang dikelompokkan menjadi 4 sektor
saham. Tombol back dibawah untuk kembali ke menu sebelumnya.
13
Gambar 13. Tampilan transaksi saham
Setelah memilih saham yang akan dibeli, akan dimunculkan halaman
transaksi saham. kolom A menampilkan grafik harga saham dalam satuan hari.
Jika salah satu poin ditekan, maka akan muncul data secara detil tentang
pembukaan, tertinggi, terendah, dan penutupan harga tiap hari. Kolom B berisikan
modal tersisa dan jumlah saham yang dimiliki. Kolom D berisikan jumlah saham
yang akan ditransaksi dan total biaya hasil transaksi. Kolom E berisikan tombol-
tombol untuk mengatur jumlah saham transaksi. Jika ingin menjual atau membeli
sesuai kemampuan maksimal bisa dilakukan dengan menekan ‘MAX_BELI’ atau
‘MAX_jual’. Sedangkan kolom F berisi pilihan transaksi yang akan dilakukan.
Setelah memilih transaksi, player akan dikembalikan ke menu game awal.
Gambar 14. Tampilan berita
Jika player memilih ‘Lihat Berita’, player akan dapat melihat sejumlah
artikel berita. Dalam 1 waktu, jumlah maksimal berita muncul sebanyak 8. Untuk
kembali ke menu sebelumnya player tinggal menekan tombol back pada
smartphone.
14
Kode Program 1 Beli saham pada transaksi saham
1 ,,
2 jml = parseInt(document.getElementById("jml").value); 3 var cost = 0; 4 if(jml<max_beli){ 5 qty = qty+jml; 6 cost += jml*harga; 7 }else{ 8 qty = qty+max_beli; 9 cost += max_beli*harga; 10 } 11 var tunai = parseInt(window.localStorage.getItem("tunai"))-cost; 12 belibaru(kode_saham,qty,harga); 13 updatetunai(tunai); 14 ..
Salah satu proses transaksi saham adalah beli saham seperti yang tertera
dalam Kode Program 1. Saat player memilih beli, jumlah transaksi saham
disimpan dalam variabel jml di baris ke-2 dan mendeklarasi variabel cost (biaya)
di baris ke-3. Jika jml dibawah batas maksimum beli player, maka jumlah qty, qty
adalah banyak saham yang dimiliki (baris-5), ditambahkan jml. Lalu cost
didapatkan dengan mengalikan harga saham dengan jml. Jika jml melewati batas
maksimum beli, maka qty ditambahkan dengan jumlah maksimum saham yang
dapat dibeli player. Variabel tunai di baris-11 adalah sisa uang tunai yang dimiliki
player setelah dikurangi oleh cost. Setelah itu, disimpanlah data saham yang
dibeli dan jumlah sisa uang tunai yang dimiliki player.
Kode Program 2 Proses tambah berita di Admin bagian 1.
1 ..
2 $hasil = $frekuensi->get_jumlah_efek($kode);
3 $row = mysql_fetch_assoc($hasil);
4 $jumlah = $row['jumlah'];
5 for($i=0;$i<X;$i++){
6 $berita = "BRT-";
7 $pilih_berita = rand(1,$jumlah);
8 if($pilih_berita>99){
9 $berita=$berita.$pilih_berita;
10 }else if($pilih_berita>9){
11 $berita=$berita."0".$pilih_berita;
12 }else{
13 $berita=$berita."00".$pilih_berita;
14 };
15 $hasil = $frekuensi->get_frekuensi_efek($kode,$berita);
16 $row = mysql_fetch_assoc($hasil);
17 $durasi = $row['frekuensi'];
18 if($durasi>0){
19 $durasi--;
20 $hasil = $brt->get_detil_berita($berita);
21 while($row = mysql_fetch_array($hasil)){
22 $tem = array();
23 $tem['kode_berita']= $row['Kode_berita'];
24 $tem['kode_saham'] = $row['Kode_saham'];
25 $tem['value'] = $row['value'];
26 $tem['durasi'] = $row['Durasi'];
27 $brt->insert_efek_berita($tem,$kode);
28 }
29 $frekuensi->update_frekuensi_efek($kode,$berita,$durasi);
30 }else{
31 $i--;
32 }
33 } 34 ..
15
Salah satu proses terpenting di game adalah munculnya berita yang diatur
oleh admin seperti yang tertera dalam Kode Program 2. Untuk memilih berita
yang akan dikeluarkan, terlebih dahulu menyimpan total jumlah berita di variabel
jumlah pada baris ke-4. baris ke-6 sampai baris ke-14 merupakan proses
pengacakan untuk menentukan kode berita yang akan muncul. Kode berita
tersebut kemudian dicek apakah berita sudah dikeluarkan pada proses pada baris
ke-18. Jika frekuensinya diatas 0, maka semua efek berita yang dimiliki oleh
berita tersebut dimasukan dalam data berita aktif (baris-18 sampai baris-29) dan
frekuensi berita dikurangi. Jika pengecekan tersebut menghasilkan sebaliknya,
pengacakan diulang kembali. Proses pengacakan berita ini diulang minimal
sebanyak X kali. Nilai X ditentukan dari berapa lama ‘hari’ telah berlalu.
Kode Program 3 update kekayaan sisi Client
1 function update_harta(ruang,nama){
2 ..
3 harta+=parseInt(window.localStorage.getItem("tunai"));
4 $.ajax({
5 method : "POST",
6 data : { nama : nama,harta : harta},
7 url : "http://coba321selalu.esy.es/update_harta.php",
8 async : true,
9 crossDomain: true,
10 error : function(data) {
11 ..
12 },
13 success : function(data) {
14 ..
15 } 16 })
17 ..
18 }
Kode Program 4 update kekayaan sisi web service
1 <?php
2 include("player_status.php");
3 $nama = $_POST['nama'];
4 $harta = $_POST['harta'];
5 $status = new player_status();
6 $status->update_player_kekayaan($nama,$pass);
7 ?>
Update kekayaan player adalah salah satu proses yang membutuhkan web
service yang bisa dilihat pada Kode Program 3 dan 4. Proses ini dapat dilakukan
menggunakan AJAX yang telah disediakan oleh jquery. Dimulai dengan client
mengirimkan data harta dan nama player ke web service. Kekayaan ditampung
dalam variabel harta(baris-3, client). Kemudian dibukalah koneksi AJAX dengan
merujuk ke alamat web service update kekayaan (baris-4 sampai baris-6, client).
Lalu, web service pada kode program 4 menerima data dari client dan
menampungnya di variabel nama untuk nama player (baris-3, WS) dan variabel
harta untuk kekayaan player (baris-4, WS). Kemudian data tersebut disimpan
dalam data player di server.
16
Gambar 15. Tampilan waiting room
Permainan ditampung didalam ruang yang telah dibuat oleh room master
(RM). Dalam Gambar 18-A, ada 1 pemain yang menunggu dalam ruang. Saat ada
pemain baru yang masuk, list pemain ditambahkan kedalam ruang seperti yang
ditunjukan di Gambar 18-B. Jika, pemain sudah berjumlah lebih dari 2, maka
game bisa dimulai oleh RM. Setiap pemain memiliki tanggungan yang berbeda-
beda.
Gambar 16. Tampilan dari setiap player (ket : A : abc dan B : randozero)
Setiap player memiliki perbedaan masing-masing kekayaan yang dimiliki
serta aset yang dimiliki. Pada Gambar 17, pemain A memiliki aset MAC
sedangkan pemain B memiliki aset MAULN. Kekayaan paling tinggi dimiliki
oleh pemain B dengan kekayaan sejumlah Rp. 1.001.000. pemain dapat melihat
bahwa game sekarang berada pada hari kelima, pagi.
(A)
(A) (B)
(B)
17
Gambar 17. Tampilan hasil permainan (ket : A : ada orang berhasil dan B : semua gagal)
Pemain yang berhasil menyelesaikan permintaan GS, berhasil melunasi
hutangnya. Operator akan menyebutkan nama pemain. jika tidak ada yang
berhasil, operator akan mengatakan tidak ada pemain yang berhasil. Perkataan
operator sedikit berubah jika ada lebih dari satu pemain yang berhasil.
Gambar 17. Tampilan bagi pemain yang kalah
Bagi pemain yang kalah, mengingat pemain memiliki kesempatan gagal 3
kali, pemain diberitahukan sisa kesempatan yang ia miliki. Jika kesempatan telah
habis, operator akan menyayangkan sekali ‘kehilangan’ satu client-nya. Kemudian,
warna tampilan ter-invert. Dengan tulisan merah, operator mengucapkan ‘selamat
tinggal’. Lalu, ID tersebut sudah tidak bisa ‘digunakan’ kembali.
Teknik pengujian yang dilakukan adalah wawancara tidak terstruktur.
Wawancara tidak tersruktur adalah wawancara bebas yang tidak mengikuti aturan
wawancara yang telah tersusun [16]. Teknik ini dipilih dikarenakan lebih cepat
mendapatkan kekurangan dari aplikasi dan lebih bebas menerima masukkan dari
para tester. Wawancara dilakukan bersamaan dengan pengujian program. Semua
masukkan dicatat menjadi bahan untuk melakukan revisi program. Versi android
yang digunakan untuk pengujian adalah versi 4.4.2 sampai 5.0.
Uji coba pertama dilakukan oleh 3 mahasiswa FTI UKSW. Masalah
pertama yang ditemui adalah masalah jika jumlah pemain bukan 4 pemain. hal ini
diselesaikan dengan mengubah jumlah minimal sebanyak 2 pemain dan jumlah
maksimal sebanyak 4 pemain. Masalah kedua adalah waktu menunggu putaran
baru yang lama. Salah satu penyebabnya dikarenakan ada pemain yang tidak
menekan tombol pass setelah aksinya selesai. Masalah lainnya didapat dari bug-
bug yang belum ditemui dari pembuatan seperti tidak bisa merubah skor di server
dan status pass tidak berubah setelah putaran berubah.
(A) (B)
18
Uji coba kedua dilakukan oleh 10 mahasiswa FEB UKSW. Masukan
pertama yang diterima adalah pengaturan sistem pass yang tergantung oleh room
master. Masalah ini berhasil diselesaikan dengan memunculkan admin yang
diharuskan untuk selalu membuka sebuah halaman web agar game dapat berjalan.
Dengan munculnya admin, hak yang dimiliki room master tidak berbeda dengan
pemain lain. Masukan kedua adalah durasi game yang terlalu lama. Durasi game
dapat dikurangi dengan timer dan putaran game selesai. Lalu ditemukan bug akan
panjang username yang tidak sesuai dengan jumlah karakter yang bisa ditangkap
server.
Uji coba terakhir dilakukan oleh 10 mahasiswa FEB UKSW. Hal pertama
yang ditemui saat mencoba, adalah cepatnya timer yang digunakan. Saat itu juga
perubahaan timer disesuaikan. Masukan kedua perubahan harga yang tidak sesuai
dengan banyaknya sektor saham yang ada. Hal ini diselesaikan dengan
menambakan jumlah maksimal munculnya berita. Masukan ketiga adalah kurang
efisiennya mengetahui perubahan harga beli saham dengan harga sekarang. Dari
masukan itu, ditambahkan info harga beli pemain di halaman game awal berserta
harga sekarang. Masukan keempat adalah login ke akun lama. Sebelumnya,
karena masih dibuat seadanya, akun lama sudah tidak bisa diakses setelah game di
hapus dan sekarang akun lama sudah bisa diakses kembali. Masukan kelima
adalah tidak adanya tutorial atau help bagi pemain yang menjadi arahan
permainan. dalam hal ini, revisi yang bisa dilakukan untuk saat ini adalah
membuat help.
Dalam pengujian ditemukan masalah terhadap server yang sering
mengalami overload. Hal ini dikarenakan jumlah proses game melebihi batas
jumlah proses cpu yang diperbolehkan oleh web server. Akibatnya, game tidak
bisa mengakses data di server dan tidak bisa dimainkan. Untuk lebih mendekati
situasi trading asli, berita harus muncul dalam waktu yang berbeda dimana dalam
game ini hanya muncul waktu ‘pagi’. Selain gameplay, grafis perlu ditambahkan
untuk melengkapi keseluruhan game.
5. Kesimpulan dan Saran
Game simulasi trading dibuat dengan menggunakan metode R&D dengan
pengujian yang dilakukan sebanyak 3 kali. Digunakan Web service sebagai
penghubung antar pemain yang dibuat menggunakan PHP. Sedangkan game
dibuat menggunakan html dan javascript yang dikemas ke android dengan
menggunakan cordova.
Game simulasi dijalankan dengan mengumpulkan beberapa player dalam
sebuah game room. Dalam game room tersebut, terjadi perubahan harga saham
yang mengikuti situasi yang dimunculkan dalam bentuk berita. Player dapat
membuat memilih saham yang dianggap dapat memberikan keuntungan
berdasarkan berita yang muncul. Semua jalannya permainan diatur oleh admin
yang selalu aktif di web server.
19
Untuk penelitian selanjutnya, sebaiknya game diperbaiki dengan
menyesuaikan jumlah proses game dengan batas proses cpu atau menaikan batas
jumlah proses cpu pada web server supaya server overload jarang terjadi. Waktu
pemunculan berita perlu diubah agar berita dapat muncul pada waktu yang tidak
menentu, serta perlu menambahkan grafis untuk melengkapi kelengkapan game.
20
6. Daftar Pustaka
[1] Investopedia. 2016. Aset. http://www.investopedia.com/terms/a/aset.asp.
[2] May, Ellen. 2011. Smart Trader Not Gambler. Jakarta: Gramedia.
[3] Aliya, Angga. 2015. Yunani Bakal Bangkrut, IHSG Negatif. http://finance.detik.com/bursa-dan-valas/d-2954586/yunani-bakal-bangkrut-ihsg-negatif, diakses 11 November 2016
[4] Mahardhika, Jauhari. 2015. BEI: IHSG Merespons Positif Paket Kebijakan Ekonomi. http://www.beritasatu.com/pasar-modal/313718-bei-ihsg-merespons-positif-paket-kebijakan-ekonomi.html, diakses 11 November 2016
[5] Sihombing, Martin. 2017. Tambang Emas: TMPI Targetkan prodiksi mulai kuartal iii. http://market.bisnis.com/read/20170301/192/633010/tambang-emas-tmpi-targetkan-produksi-mulai-kuartal-iii, diakses 2 mei 2017.
[6] Dunia Investasi. 2017. http://www.duniainvestasi.com/bei/prices/stock/TMPI, histori pada bulan maret, diakses 2 mei 2017.
[7] Petroski, Andy. 2012. Games vs. Simulations: When Simulations May Be a Better Approach. https://www.td.org/Publications/Magazines/TD/TD-Archive/2012/02/Games -Vs-Simulations-When-Simulations-May-Be-a-Better-Approach , diakses 5 Oktorber 2016.
[8] Chaffey, Dave . 2016. Mobile Marketing Statistics compilation. http://www.smartinsights.com/mobile-marketing/mobile-marketing-analytics/mobile-marketing-statistics/, diakses 18 Oktober 2016.
[9] Rachman, Adi Fida. 2015. Android Kuasai Asia Tenggara, di Indonesia Paling Juara. http://inet.detik.com/read/2015/10/27/103538/3054169/317/android-kuasai-asia-tenggara-di-indonesia-paling-juara, diakses 9 November 2016.
[10] Lucky, Elizabeth. 2013. Perilaku Investor Individu Dalam Pembuatan Keputusan Investasi Saham: Efek Disposisi dan Informasi Akuntansi. Semarang : Universitas Katolik Soegijapranata.
[11] Suhendro dan Yuli Chomsatu. 2014. Model Pembelajaran Pasar Modal Berbasis Simulasi Perdagangan Daring Melalui Perdagangan Maya Bei. Surakarta : Universitas Islam Batik.
[12] Silvia Rostianingsih, dkk. 2013. Perancangan Dan Pembuatan Game Simulasi Pertanian Dan Peternakan. Surabaya : Universitas Kristen Petra.
[13] Muhammad, dkk. 2015. Game Runner Berbasis Mobile yang Mengangkat Sejarah Indonesia. Bandung: Universitas Telkom.
[14] Adam, Ernest. 2013. Fundametals of Games Design. New Riders : San Francisco.
[15] Wolf, Mark J. P. Encyclopedia of Video Games The culture, Technology, and Art of Gaming Volume One: 414. California:Greenwood.
[16] Android Developers. 2016. Introduction to Android. http://developer.android.com/guide/index.html.
[17] Sugiyono. 2015. Metode Penelitian & Pengembangan Research and Developmenti. Bandung: Alfabeta.