Moving average ya kalo diindonesiakan sich kurang lebih artinya adalah rata-rata bergerak, “sorry kalo salah ya coz kurang bisa bahasa inggris sich…hehehe..” merupakan metode standar dan paling sederhana yang kita gunakan, maklum metode ini hanya merupakan pengembangan dari metode rata-rata yang kita telah pelajari tempo doloe…….
Moving average mempunyai beberapa bentuk diantaranya simple moving average, weighted moving average, dan exponential moving average. Tapi dari 3 bentuk yang disebutkan semuanya merupakan metode moving average hanya saja cara untuk merata-ratakannya berbeda. Dan pada kesempatan kali ini saya akan coba membahas tentang simple moving avarege “coz agak gampang sich”
Kegunaan dari metode Simple Moving Average :
Menentukan trend yang akan terjadi
Menentukan titik support dan resistence
Memuluskan indicator yang terlalu bergerigi
Kayaknya udah cukup teorinya nich, langsung masuk ke intinya aja ya….!
Misalnya “kita mempunyai 8 buah data sebuah trend sebuah jenis motor dimana datanya adalah 32, 45, 43, 23, 57, 56, 44, 31 dengan periode simple moving average 3, maka hitunglah simple moving average periode ke 3 ?”
Dari hasil pengerjaan table penyelesaian diatas maka, algoritma dari penyelesaian diatas adalah :
Algoritma
Menentukan berapa banyak data yang akan dihitung simple moving average. Misalnya 8 data
Menginput data-data yang akan dihitung sesuai dengan jumlahnya
Menentukan skala prioritas simple moving averages yang akan dihitung. Misalnya skala prioritas ke-3.
Melakukan perhitungan simple moving average. Misalnya jika skala prioritas tiga maka akan dilakukan penjumlahan data mulai pada data ke-3, kemudian jumlah data yang akan dijumlahkan 3 data dimulai dari data ke 1 ”a+b+c -> b+c+d”, dan rata-ratanya akan dibagi dengan 3.
Deksripsi
Menginisialisasi variabel-variabel yang akan digunakan.
Menginput banyaknya data yang akan digunakan, selain itu banyaknya data juga berfungsi sebagai control/kondisi perulangan. Baca artikel tutorial statement perulangan. → variabel p sebagai variabel untuk menentukan banyak data yang akan digunakan.
Menginput data dengan menggunakan perulangan for agar sesuai dengan banyak data yang dinginkan. → variabel q sebagai variabel yang digunakan untuk perulangan, variabel x[q] sebagai variabel yang menyimpan data sesuai dengan indeks q.
Menentukan skala prioritas yang akan digunakan. → variabel y sebagai variabel skala perioritas simpan nilai y, selain itu y juga berfungsi untuk mengecek apakah penjumlahan data akan dimulai pada data ke berapa, dan variabel s menyimpan nilai y yang berfungsi untuk menjadi standar pembagi.
Melakukan proses perhitungan dengan menggunakan for bersarang, dimana perulangan pertama untuk mengontrol perhitungan berdasarkan jumlah data, sedangkan for yang kedua untuk menjumlah data, tetapi sebelum itu dicek apakah nilai dari q sudah berada pada data ke-3 ”karena prioritas skala 3”, dan apabila bernilai benar maka melakukan perulangan. → variabel q sebagai variabel yang digunakan untuk perulangan dan variabel p sebagai kontrol perulangan. If(q>=y) berfungsi untuk mengecek apakah nilai dari q sudah sama dengan y, disini asumsinya bahwa apabila nilai dari data indeks ke q sudah sama dengan nilai prioritas maka lakukan proses perulangan di dalam perulangan yang diatasnya dan untuk melakukan perhitungan pada data ke 4 maka nilai dari y dinaikkan sehingga untuk masuk dalam proses perulangan nilai y yang akan diseleksi menjadi naik . Untuk proses perhitungan dilakukan dalam perulangan yang berada dalam perulangan, untuk itu disini menggunakan 2 variabel bantu yaitu z dan n untuk mengontrol perulangan dengan perpindahan data yang akan dijumlah berdasarkan nilai dari variabel y dan variabel y sendiri berubah berdasarkan perpindahan data indeks q sedangkan variabel z dinaikkan agar perpindahan nilai dari data berubah dari yang awalnya indeks 1 kemudian akan dimulai indeks 2. contoh ”21 + 23 + 24” indeks 1 dan indeks 2 ”23 + 24 + 26”.
Menjumlah Total dari dari data. → variabel n sebagai variabel yang digunakan untuk perulangan, variabel x[n] sebagai variabel yang menyimpan data sesuai dengan indeks n, menggunakan variabel bantu jum yang akan menjumlah tiap-tiap data dengan rumus jum= jum + x[n] yang berlangsung dalam perulangan.
Menghitung simple moving average. → variabel s sebagai variabel menyimpan nilai y sehingga digunakan untuk membagi jum dengan rumus jum/s setelah proses perhitungan selesai maka akan perhitungan akan belangsung pada indeks q berikutnya namun sebelummnya nilai dari z dan y dinaikkan 1 “rumus z++ y++”, dan merubah/mengset nilai variabel jum kembali 0.
Source Code
Output Program