Home > Belajar Investasi > Panduan Mencari Dan Mengolah Data Return Saham (Bagian 1)

Panduan Mencari Dan Mengolah Data Return Saham (Bagian 1)

Data Saham Online

Dalam melakukan analisa terhadap harga saham bagi para peneliti, mencari sumber data saham yang bisa diolah dalam Microsoft Excel merupakan tantangan tersendiri. Bagi yang belum tahu, artikel ini akan memberikan panduan dimana data saham bisa diperoleh secara gratis dan diolah dalam Microsoft Excel.

Bagi investor saham kawakan, informasi harga saham sebenarnya sudah banyak tersedia. Namun kebanyakan informasi tersebut disajikan dalam bentuk yang sudah diolah. Fitur-fitur tersebut mungkin sangat berguna bagi investor saham, namun bagi peneliti yang ingin membangun model dari 0, menjadi kurang relavan.

Selain itu, kebanyakan dari peneliti (baca: mahasiswa) mungkin tidak memiliki akses langsung pada situs berbayar seperti Bloomberg, RTI, Infovesta atau situs premium berbayar lainnya sehingga kesulitan untuk melakukan penelitian. Jadi mencari sumber yang gratis dan bisa diandalkan juga sangat penting.

Langsung saja kita mulai, untuk bisa mendapatkan informasi data saham secara gratis, online dan bisa diolah, ada minimal 3 hal yang harus dipenuhi yaitu :

  1. Akses internet dengan browser Mozilla Firefox atau Internet Explorer. Pada contoh disini, menggunakan Mozilla Firefox
  2. Aplikasi Microsoft Excel minimal versi 2007 ke atas
  3. Setting Regional : English United States

Untuk point nomor 3 sangat penting karena sumber website yang menjadi rujukan utama untuk mengambil data adalah Yahoo Finance. Karena website tersebut bersumber dari Amerika Serikat, maka setting angka dan tanggal juga mengikuti format tersebut. Apabila settingnya komputer anda adalah Indonesia (dimana ada perbedaan antara pemisah angka ribuan menggunakan TITIK sementara sistem Amerika Serikat menggunakan KOMA), terkadang ketika data di download suka terjadi error karena data angka tidak dibaca sebagai text.

Untuk itu pastikan setting komputer selalu menggunakan setting English United States. Sekalipun sumber datanya dari website lokal, biasanya versi Inggrisnya juga menggunakan sistem United States karena komputer si developer menggunakan setting ini. Contoh setting

Networking

Networking

Jika settingnya sudah benar, selanjutnya adalah menggunakan website Yahoo Finance. Untuk mendapatkan informasi mengenai suatu saham di Yahoo Finance cukup mengetikkan Kode Saham TITIK JK. Misalkan TLKM.JK untuk Telekomunikasi Indonesia dan BBCA.JK untuk Bank BCA. Jika anda kesulitan menghafal / mengetahui kode saham yang ada, cukup ketikkan nama perusahaannya. Contohnya sebagai berikut :

Tampilan BBCA Yahoo Finance

Kemudian klik Historical Data

Data Historis BBCA Yahoo Finance

Untuk kebutuhan data silakan ditarik sesuai kebutuhan. Untuk contoh, saya menggunakan MAX. Selain itu, pengguna tidak perlu copy paste, tapi cukup klik download data yang ada di kanan atas. Sebagai informasi, tidak semua saham historis di Yahoo Finance dapat diklik Download Data karena ada beberapa negara yang memang datanya dijual sehingga tidak tersedia fitur Yahoo Finance.

Setelah klik download data, selanjutnya data akan didownload dalam bentuk file CSV. Silakan buka data tersebut dan save as sebagai data Excel. Sebab format CSV hanya untuk data sehingga semua rumus perhitungan yang di save pada file CSV akan hilang. Jadi harus di save dulu dalam bentuk file .XLSX.

Save As data XLXS

Setelah itu, data sudah siap diolah.

Jika dibandingkan antara data di Excel dengan data di Yahoo Finance, ada perbedaan yaitu data Deviden. Di File Excel, biasanya data deviden tidak ada. Untuk keperluan pengolahan biasanya data deviden tidak dimasukkan dalam perhitungan, namun jika mau, anda bisa menambahkannya secara manual.

Informasi BBCA Yahoo Finance

Bandingkan dengan informasi harga historis ketika di file excel

Informasi Harga BBCA Excel dari Yahoo FinanceDi dalam tampilan Excel, tidak terdapat data Deviden.

Karena pengolahan data dilakukan pada data yang terdapat di file Excel, maka kita perlu memahami maksud dari masing-masing kolom di atas.

  • Date = Tanggal (Format Hari – Bulan – Tahun)
  • Open = Harga Pembukaan
  • High = Harga Tertinggi
  • Low = Harga Terendah
  • Close = Harga Penutupan
  • Volume = Volume transaksi biasanya dalam jumlah lembar
  • Adjusted Close = Harga penutupan yang disesuaikan dengan aksi korporasi seperti right issue, stock split atau stock reverse

Untuk keperluan pengolahan data, yang digunakan cukup DATE dan CLOSE saja.

Mengapa pada DATE, tanggalnya tidak urut dan ada yang Volumenya 0 ?

Karena jumlah hari kerja di Indonesia dan luar negeri berbeda, belum lagi ada cuti tambahan mendadak seperti pada PILKADA Jakarta lalu. Kombinasi dari kedua hal ini menyebabkan jika hanya libur di Indonesia sementara di negara lain tidak libur, yang ditampilkan adalah 0. Sementara jika datanya tidak urut, kemungkinan hari kerjanya sama dan untuk Sabtu – Minggu dilewati.

Untuk mendapatkan data yang bersih, perlu dilakukan urut. Caranya adalah sebagai berikut :

Sortir Data di Excel

Selanjutnya data dengan volume 0 di delete supaya menjadi bersih dari data yang tidak digunakan.

Delete Data Volume 0

Selanjutnya data di sort berdasarkan tanggal

Data Setelah Dibersihkan

Jika mau lebih bersih lagi, bisa delete kolom Open, High, Low, Volume dan Adj Close supaya hanya tinggal Date dan Close saja yang benar-benar dibutuhkan.

Data Tanggal dan HargaHasil data harian yang benar-benar bersih adalah sebagai berikut

Data BBCA

 

Setelah datanya tersedia secara rapi, maka selanjutnya tinggal melakukan pengolahan atas data tersebut. Pengolahan data yang paling umum adalah menghitung return. Sebab dari data return tersebut selanjutnya bisa dikembangkan untuk menghitung standar deviasi, menghitung beta, melakukan berbagai simulasi dan lain sebagainya.

Untuk menghitung return caranya cukup sederhana yaitu harga hari ini – harga sebelumnya dibagi dengan harga sebelumnya. Yang menjadi tantangan dalam pengolahan data adalah ketika data yang tersedia harian, sementara yang dibutuhkan bulanan. Mau tidak mau harus dicari data per akhir bulan atau per akhir tahun agar bisa dilakukan perhitungan return bulanan atau return tahunan. Untuk mempermudah proses tersebut, cara ini dapat dilakukan :

Menggunakan Gabungan Fungsi IF dan Fungsi MONTH

Data Bulanan Saham

Menggunakan Fungsi IF dan Fungsi YEAR

Data Tahunan Saham

Untuk penggunaan cara di atas, yang harus diperhatikan atau dicoret secara manual adalah data terakhir. Karena kolom setelah data terakhir adalah kosong, maka angkanya akan keluar meskipun pada tanggal tersebut bukan akhir bulan atau akhir tahun. Untuk itu harus di delete supaya tidak terpakai. Setelah di delete, selanjutnya data bisa disort berdasarkan Bulan atau Tahun untuk menghitung data Return Bulanan dan Return Tahunan.

Delete Data Terakhir

Selanjutnya data bisa disort berdasarkan bulanan atau tahunan untuk keperluan pengolahan. Sebelum di sort, datanya mesti dijadikan values dulu karena merupakan rumus. Jika tidak, ketika di sort, datanya akan lari sehingga menjadi tidak valid. Cara untuk file dari rumus menjadi values adalah sbb

Dari Rumus Menjadi Values

Paste Values

Setelah semuanya menjadi Values, selanjutnya bisa diurutkan dengan menggunakan fungsi filter. Caranya klik DATA yang ada di bagian atas, kemudian block kolom A – D dan klik Filter. Jika benar akan muncul seperti kolom yang bisa disort pada bagian kanan kolom A – D.

Menggunakan Fungsi Filter

Data kemudian di sort berdasarkan bulan. Pilih Sort A to Z.

Sort Menggunakan Filter

Setelah langkah ini dilakukan, anda sudah berhasil mendapatkan data harga saham setiap akhir bulan. Namun urutannya masih belum benar karena diurutkan dari paling kecil sampai paling besar. Supaya bisa mendapatkan data dengan urutan waktu yang benar, perlu di urut lagi dengan data yang hanya ada data bulanan saja. Sebagai contoh, kolom yang ada di A – D saya copy paste ke H-K kemudian diurutkan berdasarkan tanggal. Hasilnya adalah sebagai berikut

Data Bulanan BBCA 2004 - 2017

Dengan demikian data pada Kolom H dan Kolom J sudah berbentuk data harga bulanan yang siap diolah. Jika proses anda benar, hasilnya adalah sebagai berikut

Date Bulan
30-06-04 1875
30-07-04 1875
31-08-04 1800
30-09-04 2000
29-10-04 2400
30-11-04 2750
30-12-04 2975
31-01-05 2875
28-02-05 3275
31-03-05 3400
29-04-05 3075
31-05-05 3475
30-06-05 3600
29-07-05 3650
31-08-05 3425
30-09-05 3450
31-10-05 3225
30-11-05 3300
29-12-05 3400
30-01-06 3625
28-02-06 3600
29-03-06 4175
28-04-06 4375
31-05-06 4100
30-06-06 4100
31-07-06 4175
31-08-06 4550
29-09-06 4825
31-10-06 4650
30-11-06 5300
28-12-06 5200
31-01-07 5100
28-02-07 4925
30-03-07 5100
30-04-07 5300
31-05-07 5250
29-06-07 5450
31-07-07 6300
31-08-07 6000
28-09-07 6150
31-10-07 7300
30-11-07 7100
28-12-07 7300
31-01-08 3550
29-02-08 3575
31-03-08 3250
30-04-08 3000
30-05-08 2775
30-06-08 2475
31-07-08 3025
29-08-08 3175
29-09-08 3150
31-10-08 2700
28-11-08 2700
30-12-08 3250
30-01-09 2750
27-02-09 2350
31-03-09 3100
30-04-09 3350
29-05-09 3375
30-06-09 3525
31-07-09 3775
31-08-09 4250
30-09-09 4625
30-10-09 4575
30-11-09 4800
30-12-09 4850
29-01-10 5000
25-02-10 4875
31-03-10 5500
30-04-10 5450
31-05-10 5550
30-06-10 5950
30-07-10 5950
31-08-10 5800
30-09-10 6700
29-10-10 7000
30-11-10 6050
30-12-10 6400
31-01-11 5650
28-02-11 6300
31-03-11 6950
29-04-11 7400
31-05-11 7100
30-06-11 7650
29-07-11 8300
26-08-11 8000
30-09-11 7700
31-10-11 8100
30-11-11 7900
30-12-11 8000
31-01-12 8000
29-02-12 7600
30-03-12 8000
30-04-12 8000
31-05-12 7000
29-06-12 7300
31-07-12 8000
31-08-12 7750
28-09-12 7900
31-10-12 8200
30-11-12 8800
27-12-12 9200
31-01-13 9650
28-02-13 11000
28-03-13 11400
30-04-13 10750
31-05-13 10350
28-06-13 10000
31-07-13 10400
30-08-13 9050
30-09-13 10000
31-10-13 10450
29-11-13 9650
30-12-13 9600
30-01-14 9925
28-02-14 10225
28-03-14 10600
30-04-14 11000
30-05-14 10775
30-06-14 11000
25-07-14 11600
29-08-14 11200
30-09-14 13075
31-10-14 13050
28-11-14 13100
30-12-14 13125
30-01-15 13375
27-02-15 14100
31-03-15 14825
30-04-15 13475
29-05-15 14125
30-06-15 13500
31-07-15 13100
31-08-15 12900
30-09-15 12275
30-10-15 12900
30-11-15 12375
30-12-15 13300
29-01-16 13100
29-02-16 13475
31-03-16 13300
29-04-16 13050
31-05-16 13000
30-06-16 13325
29-07-16 14450
31-08-16 15050
30-09-16 15700
31-10-16 15525
30-11-16 14300
30-12-16 15500
31-01-17 15300
28-02-17 15450
31-03-17 16550
28-04-17 17750

Anda juga bisa melakukan cara yang sama untuk data Harga Tahunan.

Pada tulisan berikutnya saya akan mengajarkan bagaimana cara mengolah data tersebut untuk menghitung return, rata-rata artimatik, rata-rata geometrik, return disetahunkan, total return, standar deviasi dan beta.

Demikian artikel ini, semoga bermanfaat

Penyebutan produk investasi  (jika ada) tidak bermaksud untuk memberikan penilaian bagus buruk, ataupun rekomendasi jual beli atau tahan untuk instrumen tertentu. Tujuan pemberian contoh adalah untuk menunjukkan fakta yang menguatkan opini penulis. Kinerja Masa Lalu tidak menjadi jaminan akan kembali terulang pada masa yang akan datang. Semua data dan hasil pengolahan data diambil dari sumber yang dianggap terpercaya dan diolah dengan usaha terbaik. Meski demikian, penulis tidak menjamin kebenaran sumber data. Data dan hasil pengolahan data dapat berubah sewaktu-waktu tanpa adanya pemberitahuan. Seluruh tulisan, komentar dan tanggapan atas komentar merupakan opini pribadi.

Facebook : https://www.facebook.com/rudiyanto.blog

Twitter : https://twitter.com/Rudiyanto_zh

Belajar Reksa Dana : www.ReksaDanaUntukPemula.com

Sumber Gambar : Istock Photo

Categories: Belajar Investasi Tags:
  1. wesly
    June 3rd, 2017 at 21:42 | #1

    Pak, saya mau bertanya….Bapak menyarankan untuk menghapus volume yang bernilai “0″, namun saya menemukan volume yang bernilai “3″. Apakah itu tidak digunakan juga pak (dihapus)??

  2. Rudiyanto
    June 4th, 2017 at 14:47 | #2

    @wesly
    Salam Wesly,

    Silakan anda putuskan sendiri dengan membandingkan data lain.
    Sortir data juga bagian dari pekerjaan peneliti.

    Semoga bermanfaat

  3. Kibopro
    September 12th, 2017 at 11:35 | #3

    Pak Rudi kenapa itu data dari yahoo finance harus diproses lagi untuk dicari harga closing per bulan? Bukannya tinggal ganti frequency daily ke monthly di yahoo finance aja pak? sehingga jadi gak repot,bedanya apa ya pak..thanks

  4. Rudiyanto
    September 20th, 2017 at 14:10 | #4

    @Kibopro
    Salam pak Kibo,

    Kalau data monthly di Yahoo Finance itu munculnya harga awal bulan atau setiap tanggal 1. Dalam perhitungan, dalam menghitung return, harga yang digunakan adalah akhir bulan bukan awal bulan.

    Semoga bermanfaat

  5. Lia
    September 25th, 2017 at 15:46 | #5

    Pak Rudi saya mau tanya.. jadi kalau saya mau ambil data mingguan atau bulanan, itu data nya diambil per tanggal yang saya mau yaa pak ? Bukan rata-rata untuk data per minggu atau per bulan kan pak isi nya ? Terimakasih

  6. Ria
    September 26th, 2017 at 21:49 | #6

    Pak, kalau kita mau cari data historis saham sebelum stock split bagaimana ya pak di yahoo…. contoh, kalau gak salah KLBF melaksanakan aksi korprasi… nah data2 saham harian sebelumnya gimana ya dr yahoo finance

    Terimakasih

  7. Rudiyanto
    October 2nd, 2017 at 04:27 | #7

    @Lia
    Salam ibu Lia,

    Kalau untuk data mingguan, menurut saya adalah data per setiap hari Jumat.

    Semoga bermanfaat

  8. Rudiyanto
    October 2nd, 2017 at 04:31 | #8

    @Ria
    Salam bu Ria,

    Kalau ada stock split berarti harus disesuaikan lagi data historisnya. Biasanya data di Yahoo tidak disesuaikan sehingga seolah2 terlihat anjlok. Sebagai contoh, jika stock split 1 : 2, berarti data historisnya juga perlu dibagi 2.

    Semoga bermanfaat

  9. nia
    October 6th, 2017 at 20:12 | #9

    Pak saya ingin bertaya jika data dari yahoo finance harus diproses lagi untuk dicari harga closing per bulan, apakah untuk volume juga harus diproses lagi seperti data close ?
    atau volumenya cukup menggunakan data yang dari yahoo finance tanpa diolah ?

    terima kasih

  10. Rudiyanto
    October 13th, 2017 at 16:03 | #10

    @nia
    Salam Nia,

    Boleh tahu untuk apa data volume tersebut?

    Semoga bermanfaat

 


%d bloggers like this: