Anda di halaman 1dari 33

Analisis Teknikal Dalam Excel Menggunakan 

TALIB 
©Arry Andriana Ir. H, arry.andriana@gmail.com, Desember 2016 - February 2017

Tujuan:

- Untuk menunjukkan perhitungan indikator teknikal dalam Excel menggunakan TALIB.


- Melakukan optimisasi indicator teknikal dengan algoritma genetika untuk mencari strategi
Trading menguntungkan.
- Menampilkan data finansial secara grafis berikut sinyal trading pada chart excel berikut
tampilan equity chartnya.

Pernyataan Sanggahan:
Perdagangan pasar finansial (saham, forex, index, reksadana, bond dan lain-lain) baik melalui transaksi
tunai, non-tunai, online atau offline, berjangka atau options, memiliki potensi keuntungan yang besar,
tetapi juga memiliki potensi risiko yang besar. Anda harus sadar akan risiko dan bersedia untuk
menerima keuntungan dan resiko untuk berinvestasi di pasar finansial. Jangan melakukan transaksi
dengan uang jika Anda tidak sanggup mengalami kerugian. Artikel ini dibuat untuk menjadi bahan
pengetahuan semata dan bukan merupakan ajakan atau penawaran untuk membeli/ menjual produk
finansial. Tidak ada representasi yang dibuat bahwa setiap account akan atau mungkin untuk
memperoleh keuntungan atau kerugian serupa dengan apa yang dibahas dalam artikel ini. Kinerja masa
lalu dari setiap sistem perdagangan atau metodologi tidak selalu menunjukkan hasil di masa
mendatang.

ATURAN CFTC 4.41 - HIPOTESIS ATAU SIMULASI HASIL KINERJA MEMILIKI BATASAN
TERTENTU. TIDAK SEPERTI REKAMAN KINERJA SEBENARNYA, HASIL SIMULASI
TIDAK MENYATAKAN TRANSASKI PERDAGANGAN SEBENARNYA. JUGA, KARENA
PERDAGANGAN BELUM DILAKUKAN, HASILNYA MUNGKIN MEMILIKI DAMPAK
KOMPENSASI YANG KURANG-ATAU-LEBIH, JIKA ADA, FAKTOR TERTENTU PADA
PASAR, SEPERTI KEKURANGAN LIKUIDITAS. PROGRAM SIMULASI TRADING UMUM
JUGA TUNDUK PADA FAKTA BAHWA MEREKA DIRANCANG DENGAN PERKIRAAN
KEUNTUNGAN. NTIDAK ADA REPRESENTASI YANG DIBUAT BAHWA ACCOUNT
APAPUN AKAN ATAU MUNGKIN UNTUK MENCAPAI KEUNTUNGAN ATAU
KERUGIAN SERUPA DENGAN YANG DITAMPILKAN. Semua perdagangan, pola, grafik,
sistem, dll, yang dibahas dalam artikel dan produk bahasan adalah untuk tujuan ilustrasi saja dan tidak
dapat ditafsirkan sebagai rekomendasi nasihat yang khusus. Semua ide-ide dan materi yang
disampaikan sepenuhnya dari penulis dan tidak mencerminkan pandangan dari penerbit atau lembaga
lainnya.

1|Hal
1 Mengenal TALIB
1.1 Pendahuluan
TA-Lib (Technical Analysis Library) adalah sebuah perpustakaan software sumber terbuka (open-
source) bagi indikator analisis teknikal. Perpustakaan menyediakan sekitar 125 fungsi seperti ADX,
RSI, MACD, Stochastics, Bollinger Bands, pengenalan pola candlestick. TA-Lib dapat digunakan
kembali oleh pengembang software trading agar bekerja dengan Excel, NET, Java, Perl, Python, PHP,
C atau C ++. Hal ini didistribusikan di bawah lisensi BSD dan dapat secara bebas dibundel dengan
aplikasi sumber terbuka dan tertutup.

Melalui artikel ini kita akan menggali bagaimana bisa menggunakan TA-Lib dalam Excel untuk
menerapkan Analisis Teknikal (TA, technical analysis) terhadap data historis pasar. Dengan
menggunakan TA-Lib pengguna tidak perlu bersusah payah mengetahui isi formula sebuah indicator
dan menuliskan formua tersebut di Excel. Pengguna hanya perlu mengetahui bagaimana sebuah
indicator TA-Lib dipanggil dalam sebuah sel dan disalin ke beberapa sel dalam bentuk Array.

Ada 10 kelompok indicator yang didukung TA-Lib dan berisi 125 fungsi indicator. Kita akan membuat
sebuah spreadsheet Excel di mana kita menggunakan formula dari beberapa indikator analisisi teknikal
yang umum seperti: Simple Moving Average, Bollinger Bands, Exponential Moving Average, MACD,
RSI dan indicator lainnya. Di sini akan dijelaskan cara penulisan formula untuk memanggil TA-Lib.

1.1.1 Instalasi TA-Lib di Windows

Download ta-lib-0.4.0-msvc.zip dan unzip ke folder C:\ta-lib

Perlu diketahui bahwa TA-Lib ini dibuat sekitar tahun 2007, dengan demikian akan kompatibel dengan
Excel 2007 atau versi yang terakhir. Penulis mencoba memanggil talib.xll ke dalam versi windows95
ternyata tidak bisa digunakan.

Selanjutnya di dalam folder ta-lib anda memiliki subfolder-subfolder seperti diperlihatkan pada gambar
berikut:

2|Hal
Gambar 1-1 Isi Subfolder c:\ta-lib hasil extract file ta-lib-0.4.0-msvc.zip

Selanjutnya kita bisa memanggil TA-Lib melalui:

1. Pemgrograman Bahasa C, di mana semua file sumber kode C ada di dalam folder c:\ta-lib\c
2. Pemgrograman Bahasa Dotnet, di mana semua file sumber kode C ada di dalam folder c:\ta-
lib\dotnet.
3. Melalui add-in Excel yang akan dijelaskan lebih rinci pada bab berikutnya.
4. Pemrograman Bahasa Java
5. Pemrograman untuk membangun SWIG wrapper. SWIG adalah tool pengembangan skrip
software interface dengan program C dan C++. Ia mendukung sejumlah Bahasa pemrograman
termasuk Guile, Java, Mzscheme, Ocaml, Perl, Pike, PHP, Python, Ruby, and Tcl. Informasi
lebih lanjut bisa ditemukan pada http://www.swig.org.

1.1.2 Instalasi TA-Lib sebagai Add-Ins Excel

Kita bisa menggunakan TA-Lib dalam excel sebagai Add-Ins, dalam hal ini TA-Lib sudah
menyediakan dua buah file ta-lib.xll dan ta-lib-reverse.xll. Semua fungsi TA akan menjadi terlihat
dalam "Function Wizard".

Perbedaan penggunaan Ta-lib.xll dan Ta-lib-reverse.xll adalah berbeda dari segi urutan data array
inputnya:

 Ta-lib.xll melakukan perhitungan dari atas ke bawah atau kiri ke kanan.


 Ta-lib-reverse.xll melakukan perhitungan dari bawah ke atas atau kanan ke kiri.

Untuk memasang kedua file xll TA-Lib, lakukan langkah berikut:

3|Hal
1. Melalui add-in Excel dengan memanggil ta-lib.xll atau ta-lib-reverse.xll ke dalam Excel.
Gunakan menu File, Options, Add-Ins, lalu tekan tombol Go.

Gambar 1 - Memanggil Add-Ins dalam Excel

2. Kemudian kotak dialog Add-Ins akan muncul seperti gambar di bawah ini.

Gambar 1-2 Kotak dialog Add-Ins dalam Excel

3. Klik tombol Browse, lalu arahkan layar dialog ke lokasi dimana file Ta-lib.xll dan Ta-lib-
reverse.xll terletak, misal terletak di folder C:\ta-lib\Excel\Ta-lib.xll, lalu tekan tombol OK.

4|Hal
Anda bisa memasang satu xll dan mengulang kembali file berikutnya dengan menekan tombol
Browse.
4. Selanjutnya pastikan anda pilih kedua add-ins tersebut seperti gambar berikut.

Gambar 1-3 Kotak dialog Add-Ins dalam Excel

5|Hal
1.2 Indikator Tercakup TA-Lib
Semua Indikator dan Fungsi TALIB yang didukung termasuk dalam kelompok indikator berikut:

 Overlap Studies
 Momentum Indicators
 Volume Indicators
 Volatility Indicators
 Price Transform
 Cycle Indicators
 Pattern Recognition
 Statistic Functions
 Math Transform
 Math Operators

1.2.1 Overlap Studies

BBANDS Bollinger Bands

DEMA Double Exponential Moving Average

EMA Exponential Moving Average

HT_TRENDLINE Hilbert Transform - Instantaneous Trendline

KAMA Kaufman Adaptive Moving Average

MA Moving average

MAMA MESA Adaptive Moving Average

MAVP Moving average with variable period

MIDPOINT MidPoint over period

MIDPRICE Midpoint Price over period

SAR Parabolic SAR

SAREXT Parabolic SAR - Extended

SMA Simple Moving Average

T3 Triple Exponential Moving Average (T3)

6|Hal
TEMA Triple Exponential Moving Average

TRIMA Triangular Moving Average

WMA Weighted Moving Average

1.2.2 Momentum Indicators

ADX Average Directional Movement Index

ADXR Average Directional Movement Index Rating

APO Absolute Price Oscillator

AROON Aroon

AROONOSC Aroon Oscillator

BOP Balance Of Power

CCI Commodity Channel Index

CMO Chande Momentum Oscillator

DX Directional Movement Index

MACD Moving Average Convergence/Divergence

MACDEXT MACD with controllable MA type

MACDFIX Moving Average Convergence/Divergence Fix 12/26

MFI Money Flow Index

MINUS_DI Minus Directional Indicator

MINUS_DM Minus Directional Movement

MOM Momentum

PLUS_DI Plus Directional Indicator

PLUS_DM Plus Directional Movement

PPO Percentage Price Oscillator


7|Hal
ROC Rate of change : ((price/prevPrice)-1)*100

ROCP Rate of change Percentage: (price-prevPrice)/prevPrice

ROCR Rate of change ratio: (price/prevPrice)

ROCR100 Rate of change ratio 100 scale: (price/prevPrice)*100

RSI Relative Strength Index

STOCH Stochastic

STOCHF Stochastic Fast

STOCHRSI Stochastic Relative Strength Index

TRIX 1-day Rate-Of-Change (ROC) of a Triple Smooth EMA

ULTOSC Ultimate Oscillator

WILLR Williams' %R

1.2.3 Volume Indicators

AD Chaikin A/D Line

ADOSC Chaikin A/D Oscillator

OBV On Balance Volume

1.2.4 Cycle Indicators

HT_DCPERIOD Hilbert Transform - Dominant Cycle Period

HT_DCPHASE Hilbert Transform - Dominant Cycle Phase

HT_PHASOR Hilbert Transform - Phasor Components

HT_SINE Hilbert Transform - SineWave

HT_TRENDMODE Hilbert Transform - Trend vs Cycle Mode

1.2.5 Price Transform

AVGPRICE Average Price


8|Hal
MEDPRICE Median Price

TYPPRICE Typical Price

WCLPRICE Weighted Close Price

1.2.6 Volatility Indicators

ATR Average True Range

NATR Normalized Average True Range

TRANGE True Range

1.2.7 Pattern Recognition

CDL2CROWS Two Crows

CDL3BLACKCROWS Three Black Crows

CDL3INSIDE Three Inside Up/Down

CDL3LINESTRIKE Three-Line Strike

CDL3OUTSIDE Three Outside Up/Down

CDL3STARSINSOUTH Three Stars In The South

CDL3WHITESOLDIERS Three Advancing White Soldiers

CDLABANDONEDBABY Abandoned Baby

CDLADVANCEBLOCK Advance Block

CDLBELTHOLD Belt-hold

CDLBREAKAWAY Breakaway

CDLCLOSINGMARUBOZU Closing Marubozu

CDLCONCEALBABYSWALL Concealing Baby Swallow

CDLCOUNTERATTACK Counterattack

CDLDARKCLOUDCOVER Dark Cloud Cover


9|Hal
CDLDOJI Doji

CDLDOJISTAR Doji Star

CDLDRAGONFLYDOJI Dragonfly Doji

CDLENGULFING Engulfing Pattern

CDLEVENINGDOJISTAR Evening Doji Star

CDLEVENINGSTAR Evening Star

CDLGAPSIDESIDEWHITE Up/Down-gap side-by-side white lines

CDLGRAVESTONEDOJI Gravestone Doji

CDLHAMMER Hammer

CDLHANGINGMAN Hanging Man

CDLHARAMI Harami Pattern

CDLHARAMICROSS Harami Cross Pattern

CDLHIGHWAVE High-Wave Candle

CDLHIKKAKE Hikkake Pattern

CDLHIKKAKEMOD Modified Hikkake Pattern

CDLHOMINGPIGEON Homing Pigeon

CDLIDENTICAL3CROWS Identical Three Crows

CDLINNECK In-Neck Pattern

CDLINVERTEDHAMMER Inverted Hammer

CDLKICKING Kicking

CDLKICKINGBYLENGTH Kicking - bull/bear determined by the longer marubozu

CDLLADDERBOTTOM Ladder Bottom

CDLLONGLEGGEDDOJI Long Legged Doji

10 | H a l
CDLLONGLINE Long Line Candle

CDLMARUBOZU Marubozu

CDLMATCHINGLOW Matching Low

CDLMATHOLD Mat Hold

CDLMORNINGDOJISTAR Morning Doji Star

CDLMORNINGSTAR Morning Star

CDLONNECK On-Neck Pattern

CDLPIERCING Piercing Pattern

CDLRICKSHAWMAN Rickshaw Man

CDLRISEFALL3METHODS Rising/Falling Three Methods

CDLSEPARATINGLINES Separating Lines

CDLSHOOTINGSTAR Shooting Star

CDLSHORTLINE Short Line Candle

CDLSPINNINGTOP Spinning Top

CDLSTALLEDPATTERN Stalled Pattern

CDLSTICKSANDWICH Stick Sandwich

CDLTAKURI Takuri (Dragonfly Doji with very long lower shadow)

CDLTASUKIGAP Tasuki Gap

CDLTHRUSTING Thrusting Pattern

CDLTRISTAR Tristar Pattern

CDLUNIQUE3RIVER Unique 3 River

CDLUPSIDEGAP2CROWS Upside Gap Two Crows

CDLXSIDEGAP3METHODS Upside/Downside Gap Three Methods

11 | H a l
1.2.8 Statistic Functions

BETA Beta

CORREL Pearson's Correlation Coefficient (r)

LINEARREG Linear Regression

LINEARREG_ANGLE Linear Regression Angle

LINEARREG_INTERCEPT Linear Regression Intercept

LINEARREG_SLOPE Linear Regression Slope

STDDEV Standard Deviation

TSF Time Series Forecast

VAR Variance

1.2.9 Math Transform

ACOS Vector Trigonometric ACos

ASIN Vector Trigonometric ASin

ATAN Vector Trigonometric ATan

CEIL Vector Ceil

COS Vector Trigonometric Cos

COSH Vector Trigonometric Cosh

EXP Vector Arithmetic Exp

FLOOR Vector Floor

LN Vector Log Natural

LOG10 Vector Log10

SIN Vector Trigonometric Sin

SINH Vector Trigonometric Sinh


12 | H a l
SQRT Vector Square Root

TAN Vector Trigonometric Tan

TANH Vector Trigonometric Tanh

1.2.10 Math Operators

ADD Vector Arithmetic Add

DIV Vector Arithmetic Div

MAX Highest value over a specified period

MAXINDEX Index of highest value over a specified period

MIN Lowest value over a specified period

MININDEX Index of lowest value over a specified period

MINMAX Lowest and highest values over a specified period

MINMAXINDEX Indexes of lowest and highest values over a specified period

MULT Vector Arithmetic Mult

SUB Vector Arithmetic Substraction

SUM Summation

13 | H a l
1.3 File
1.3.1 File Contoh Excel

File Excel pertama, TA-in-Excel-using-TALIB.xlsx berisi formula untuk perhitungan Simple Moving
Average, Weighted Moving Average, Exponential Moving Average, Bollinger Bands, dan Exponential
Moving Average seperti dijelaskan dalam artikel ini.

1.3.2 File Data

Sebagai contoh, sebuah file berisi data saham BMRI, meliputi Juli 14, 2003 – Des 16, 2016. Kita
memiliki 3454 data dalam file ini. File berisi kolom-kolom tanggal, harga OHLC, Volume, dan
Adjacent Close. Secara default, file bisa disimpan dalam bentuk csv (terpisah koma, tab atau spasi),
akan tetapi agar formula dan hasil perhitungan bisa digunakan ulang untuk data lainnya, maka file bisa
disimpan sebagai file format Excel (.xls, .xlsx).

Catatan: file telah dibuat menggunakan add-in yahoo data downloader (termasuk dalam paket Buku
“Analisis Saham Menggunakan Metatrader”).

Gambar 1-4 Tampilan Yahoo Data Downloader di Excel

14 | H a l
1.4 Cara Memanggil Fungsi TA-Lib di Excel
Pertama panggil menu Formula, kemudian tekan ikon Insert Function.Kemudian pilih drop-down list
pada Select Category, misal untuk indicator kategori overlap studies pilih TA-Lib Overlap Studies.

Gambar 1-5 Memanggil fungsi TA-Lib

Untuk memanggil fungsi TA-Lib, kita harus memiliki baris data yang menjadi basis perhitungan.
Misalkan kita akan menghitung nilai indicator EMA(Close,10), maka kita harus memiliki baris data
untuk nilai Close.

Nilai Close kita sorot dari baris paling atas hingga paling bawah kolom harga Close. Selain itu karena
yang dimasukkan adalah data dalam bentuk Array, maka untuk memasukkan formula array kita harus
menekan tombol keyboard Ctrl-Shift-Enter, Anda akan menemukan bahwa memanggil fungsi TA-
Lib sangat mudah. Berikut adalah contoh:

{= TA_EMA (A1: A200, 13)}

Formula ini akan menghitung eksponensial moving average (EMA) 13 periode sel A1 untuk A200,
dimana A1:A200 adalah baris data nilai Close di kolom A.

1.4.1 Moving Average

Ada beberapa formula Moving Average antara lain: Simple Moving Average (SMA), Weighted Moving
Average (WMA), dan Exponential Moving Average (EMA). SMA secara sederhana merupakan nilai
rata-rata dari harga sepanjang jumlah bar N terakhir. Sementara WMA menggunakan nilai N sebagai
faktor pengali dan EMA menggunakan faktor pengali dan perubahan perhitungan untuk rentang
tertentu. Marilah kita gunakan harga penutupan (Close) untuk menghitung nilai-nilai MA dari file data
sampel kita. Lihat Bab 6.6.1 Simple Moving Average Tunggal.

15 | H a l
Kita akan menghitung sebuah SMA, WMA dan EMA 20 hari dari kolom harga close (Kolom E). Baris
pertama berisi header kolom untuk nama-nama kolom data seperti Tanggal, Open, High, Low, Close,
Volume, dan seterusnya. Masing-masing akan di tempatkan pada kolom H, I dan J dengan header
kolom “SMA-20”, “WMA-20” dan “EMA-20”. Dengan demikian perhitungan formula bisa dimulai
dari baris ke 2.

1.4.1.1 SMA

Untuk perhitungan SMA-20 di kolom H, gunakan formula berikut pada sel H21 (karena baris 21
adalah baris pertama yang memiliki cukup data untuk menghitung SMA 20-hari) dengan memanggil
fungsi TA-Lib (Overlap Studies), TA_SMA.

Gambar 1-6 Memanggil Fungsi TA_SMA

Gambar 1-7 Argumen Fungsi TA_SMA

16 | H a l
Masukkan deret data InReal sebagai baris data nilai Close di kolom E, dalam hal ini diisi E2:E3454,
dan Time period 20, lalu tekan tombol OK.

Gambar 1-8 Penulisan Formula SMA-20 dengan TA_SMA

Selanjutnya anda perlu menyorot sel H2 hingga H3454, dengan menekan tombol shift dan menggeser
kursor ke baris terbawah kolom H. Lalu tekan F2, dan tekan tombol Ctrl+ Shift lalu Enter (return).

Gambar 1-9 Tampilan layar saat menyorot sel H2:H3454

Maka semua baris dalam kolom H akan terisi dengan nilai TA_SMA(Close,20). Perhatikan juga
formula di sel H2 sudah berubah menjadi {=TA_SMA(E2:E3454),20)}. Tanda {} menunjukkan
bahwa data dalam bentuk Array.

1.4.1.2 WMA

Untuk perhitungan WMA-20 di kolom I, kita bisa masukkan formula =TA_WMA(E2:E3454) di sel
I2, kemudian salin ke semua baris di kolom I lalu tekan F2 dan Ctrl+Shift dan Enter. Formula di
seluruh sel dalam kolom I akan berubah bentuk menjadi formula Array, misal dalam sel I2 akan berisi
{= TA_WMA(E2:E3454)}
17 | H a l
Gambar 1-10 TA_WMA di kolom I

1.4.1.3 EMA

Untuk perhitungan WMA-20 di kolom J, kita bisa masukkan formula =TA_WMA(E2:E3454) di sel
J2, kemudian salin ke semua baris di kolom J lalu tekan F2 dan Ctrl+Shift dan Enter. Formula di
seluruh sel dalam kolom I akan berubah bentuk menjadi formula Array, misal dalam sel I2 akan berisi
{= TA_EMA(E2:E3454)}

Gambar 1-11 TA_WMA di kolom I

1.4.2 Pita-Pita Bollinger (Bollinger Bands)


1.4.2.1 BB-Upper

18 | H a l
Formula BB-Upper dibuat pada kolom K menggunakan formula =
=TA_BBANDS(E2:E3454,20,2,0,1) atau =TA_EMA(E2:E3454)+STDDEV(E2:E3454,2).

Gambar 1-12 Penulisan Formula BB-Upper dengan rentang nilai baris Close di kolom E

1.4.2.2 BB-Middle

Formula BB-Middle di kolom L sama dengan formal MA yang digunakan sebagai basis perhitungan.
Jika EMA dijadikan basis perhitungan, maka TA_BBANDS(E2:E3454,20,0,0,1) atau
=TA_EMA(E2:E3454).

Gambar 1-13 Penulisan Formula BB-Middle dengan rentang nilai baris Close di kolom E

1.4.2.3 BB-Lower

Formula BB-Upper dibuat pada kolom M menggunakan formula = TA_BBANDS(E2:E3454,20,-


2,0,1) atau =TA_EMA(E2:E3454)+STDDEV(E2:E3454,-2).

19 | H a l
Gambar 1-14 Penulisan Formula BB-Lower dengan rentang nilai baris Close di kolom E

1.4.3 MACD
1.4.3.1 Garis MACD

Formula MACD dibuat pada kolom N menggunakan formula = TA_BBANDS(E2:E3454,20,-2,0,1)


atau =TA_EMA(E2:E3454)+STDDEV(E2:E3454,-2).

Gambar 1-15 Penyalinan formula U2 untuk baris di bawahnya

1.4.3.2 Garis MACD Signal

Formula MACD dibuat pada kolom O menggunakan formula = =TA_EMA(N2:N3454,9), karena


kolom N berisi data MACD.

20 | H a l
Gambar 1-16 Penyalinan formula U2 untuk baris di bawahnya

1.4.4 Indikator RSI


1.4.4.1 Formula RSI

Masukkan TA_RSI pada kolom P, dengan memasukkan formula di sel P2=TA_RSI(E2:E3454,14),


kemudian salin ke sel di bawahnya dengan menyorot semua sel data di kolom P, tekan F2, lalu tekan
Ctrl+Shift dan Enter.

Gambar 1-17 Formula RSI pada sel P2

Gambar 1-18 Tampilan hasil perhitungan RSI

21 | H a l
1.5 Tampilan Chart Dalam Excel
Anda bisa menampilkan chart indikator semua di atas sesuai gambar di bawah ini.

Gambar 1-19 Chart Pita Bollinger

Gambar 1-20 Tampilan chart MACD dan candlestick harga OHLC

22 | H a l
Gambar 1-21 Tampilan chart RSI dan candlestick harga OHLC

23 | H a l
2 Optimisasi Indikator Dengan Algoritma
Genetika
2.1 Pendahuluan
Algoritma genetika adalah teknologi pencarian dan optimisasi yang meniru proses seleksi makhluk
hidup di alam. Tumbuhan maupun hewan secara alamiah berusaha untuk bertahan hidup terhadap
lingkungannya melalui proses reproduksi (perkawinan), evolusi dan perubahan/mutasi secara genetika.
Sementara, tumbuhan atau hewan yang tidak bisa menyesuaikan dengan kondisi lingkungannya
cenderung akan punah. Contoh sederhana, di lingkungan populasi rawa-rawa, beberapa individu katak
yang akan bertahan hidup perlu memiliki kecepatan saat berenang mengejar mangsa, katak akan
berevolusi dengan cara melebarkan selaput kakinya agar bisa berenang lebih cepat. Sementara katak
yang tidak memiliki pelebaran selaput kakinya akan kesulitan saat mencari makanan dan cenderung
musnah. Katak tersebut mengalami perubahan kromosom kakinya untuk memperoleh perubahan
selaput kakinya.

Proses alami tersebut dapat ditiru melalui proses komputasi, sebuah populasi dibentuk dari individu,
individu memiliki gen yang diwujudkan sebagai deret bilangan biner (8, 16, atau 32 bit). Masing-masing
individu kemudian di kawinkan (crossing) unjuk menghasilkan keturunan/individu yang baru.
Individu yang baru akan dimasukkan ke dalam fungsi target, tergantung tujuannya fungsi target bisa
berupa nilai minimum, maksimum atau nilai tertentu. Setelah perhitungan fungsi target dilakukan
maka, individu yang tidak menghasilkan nilai fungsi target optimum yang dikehendaki akan dibuang
dari populasi. Pada akhirnya kita akan memperoleh individu mana yang menghasilkan nilai fungsi
target optimum.

Untuk melakukan proses optimisasi algoritma genetika, penulis menggunakan aplikasi GeneHunter,
produk Ward Systems. Untuk lebih detail silahkan mengacu pada buku “Aplikasi Algoritma Genetika
GeneHunter”.

2.2 Strategi Trading


Strategi trading mekanik dibentuk melalui aturan/rute sebelum melakukan aksi pembelian dan
penjualan. Berikut adalah beberapa aturan trading mekanik yang populer:

1. Stategi Persilangan MA (MA crossover).


Beli/Buy: MAfast memotong ke atas (Cross above) MAslow
Jual/Exit Buy: MAshort memotong ke bawah (Cross below) MAslow
Periode MAfast < MAslow
Rentang nilai periode MA: 2-25
Metode: mencari nilai periode MAfast dan MAslow yang menghasilkan total profit terbaik.
2. Strategi Bolinger Band
Beli/Buy: Close memotong ke atas Lower BB
Jual/Exit: Close memotong ke bawah Upper BB
3. Strategi RSI
24 | H a l
Beli/Buy: RSI memotong ke atas nilai ThresholdBuy (biasanya 30)
Jual/Exit Buy: RSI memotong ke bawah nilai ThresholdSell (biasanya 70)
Periode RSI: 2-20
Metode: mencari nilai periode RSI, ThresholdBuy dan ThresholdSell yang menghasilkan total
profit terbaik.
4. Strategi MACD
Beli/Buy: MACD memotong ke atas MACD signal
Jual/Exit: MACD memotong ke bawah MACD signal
Periode MACD: EMA1=12, EMA2=26, EMA3=9
Metode: mencari nilai periode EMA1, EMA2 dan EMA3 yang menghasilkan total profit
terbaik.

Sebagai ukuran fungsi target, kita akan menggunakan perhitungan keuntungan perdagangan (Trading
profit) sebagai acuan. Nilai parameter indikator yang menghasilkan profit yang paling besar akan kita
pilih.

2.3 Metode simulasi


Berikut adalah beberapa tahap yang perlu dilakukan:

1. Memanggil data finansial (saham, forex, index, Bond, dan lain-lain) ke dalam Ike excel. Kita
bisa melakukannya melalui aplikasi broker atau download data dari yahoofinance. Detail
pembahasan bisa dibuka dari buku “Analisis saham menggunakan Metatrader”. Dalam artikel
ini penulis akan menggunakan data saham harian.
2. Menampilkan indikator teknikal dengan TALIB (lihat pembahasan Bab 1)
3. Melakukan perhitungan strategi trading berikut perhitungan untung rugi dan total keuntungan.
Untuk menghindari overfit, data kita bagi menjadi dua rentang, yaitu rentang optimisasi dan
rentang di luar sampel (out of sample). Sebuah strategi trading yang baik akan menghasilkan
profit di kedua rentang tersebut. Kita bisa menggunakan grafik account balance untuk melihat
pergerakan kurva total profit selama perubahan parameter indikator dengan algoritma
genetika.
4. Menerapkan nilai indikator optimal pada aplikasi trading misal IDX-MT4 dengan membuat
indikator untuk menghasilkan sinyal trading.

2.4 Konfigurasi GeneHunter


2.4.1 Strategi EMA

Kita memiliki dua individu EMA1 dan EMA2, sedang kromosom berupa bentuk periode EMA,
diterapkan pada saham BMRI, dengan 1703 data, data baris 48 hingga baris 1398 untuk optimisasi dan
baris 1399 ke1719. Dengan konfigurasi sebagai berikut:

Jenis Kromosom: Integer


Constrains/Batasan:
Rentang kromosom EMA1 : 2 sd 5
Rentang kromosom EMA2: 3 sd 20
25 | H a l
Periode EMA1 <= EMA 2

Berikut adalah tampilan awal sebelum nilai periode EMA1 dan EMA2 dioptimisasi.

Gambar 2-1 Tampilan EMA strategi trading sebelum optimisasi

Pada layar excel kita memiliki nilai parameter kromosom (SMA1 dan SMAS2), kurva harga, signal
trading, nilai account balance selama periode optimisasi dan out of sampel (OOS), nilai total profit
optimisasi dan OOS. Untuk perhitungan profit, saya gunakan nilai deposit awal Rp 1 juta, 500 lembar
saham, dengan komisi trading 0.48% per transaksi beli jual.

Perhatikan bahwa kurva harga saham dibuat berdasar nilai Close saja (anda bisa menggunakan OHLC
chart jika mau). Anda bisa melakukan zoom untuk memperbesar chart harga sehinga bisa melihat
detail sinyal perdagangan yang dihasilkan:

Gambar 2-2 Sinyal Buy dan Exit pada chart harga

Berikut adalah tampilan GeneHunter saat dipanggil sebagai Add-in ke dalam excel.

26 | H a l
Gambar 2-3 Tampilan antarmuka GeneHunter untuk trading strategi EMA

Gambar 2-4 Tampilan setting GeneHunter Options

Gambar 2-5 Tampilan setelah optimisasi strategi EMA

27 | H a l
Gambar 2-6 Worksheet Equity & Equity chart EMA

2.4.2 Strategy Bollinger Band

Kita memiliki dua kromosom BB yaitu periode dan standard deviation, diterapkan pada saham BMRI,
dengan 1703 data, data baris 48 hingga baris 1398 untuk optimisasi dan baris 1399 ke1719. Dengan
konfigurasi sebagai berikut:

Jenis Kromosom: Integer untuk periode dan bilangan real untuk standar deviation
Constrains/Batasan:
Rentang kromosom Periode : 6 sd 25
Rentang kromosom Std. Dev.: 0.1 sd 3
Berikut adalah tampilan awal sebelum nilai periode dan std dev dioptimisasi.

Gambar 2-7 Tampilan BB strategi trading sebelum optimisasi

28 | H a l
Berikut adalah tampilan GeneHunter saat dipanggil sebagai Add-in ke dalam excel.

Gambar 2-8 Tampilan antarmuka GeneHunter untuk trading strategi BB

Gambar 2-9 Tampilan setelah optimisasi strategi

29 | H a l
Gambar 2-10 Worksheet Equity & Equity chart BB

2.4.3 Strategi RSI

Kita memiliki tiga kromosom RSI yaitu periode, buy threshold dan sell threshold, diterapkan pada
saham BMRI, dengan 1703 data, data baris 48 hingga baris 1398 untuk optimisasi dan baris 1399
ke1719. Dengan konfigurasi sebagai berikut:

Jenis Kromosom: Integer untuk periode dan bilangan real untuk buy dan sell threshold
Constrains/Batasan:
Rentang kromosom periode RSI: 2 sd 25
Rentang kromosom buy threshold .: 0 sd 50
Rentang kromosom sell threshold .: 51 sd 100

Gambar 2-11 Tampilan strategi RSI sebelum optimisasi

30 | H a l
Gambar 2-12 Tampilan antarmuka GeneHunter untuk trading strategi RSI

Gambar 2-13 Tampilan trading strategi RSI setelah optimisasi

Gambar 2-14 Worksheet Equity & Equity chart RSI

31 | H a l
2.4.4 Strategi MACD

Kita memiliki tiga kromosom MACD yaitu periode Fast, Slow dan Signal, diterapkan pada saham
BMRI, dengan 1703 data, data baris 48 hingga baris 1398 untuk optimisasi dan baris 1399 ke1719.
Dengan konfigurasi sebagai berikut:

Jenis Kromosom: Integer untuk periode Fast, Slow dan Signal


Constrains/Batasan:
Rentang kromosom periode Fast: 2 sd 15
Rentang kromosom periode Slow: 10 sd 30
Rentang kromosom periode Signal: 2 sd 15

Gambar 2-15 Tampilan strategi MACD sebelum optimisasi

Gambar 2-16 Tampilan antarmuka GeneHunter untuk trading strategi MACD

32 | H a l
Gambar 2-17 Tampilan trading strategi MACD setelah optimisasi

Gambar 2-18 Worksheet Equity & Equity chart

3 Kesimpulan
Kita bisa menggunakan Excel untuk melakukan analisis teknikal pada semua jenis data finansial, baik
saham, forex, index, reksadana, bond dan lain-lain. Seseorang yang memahami formula indicator
teknikal bias menerapkannya ke dalam formula excel, akan tetapi bagi yang tidak memahami formula
tersebut maka akan merasakan kemudahan melalui penggunaan TALIB sebagai add-in pada excel.

Untuk kebutuhan pembuatan strategi trading mekanik, indikator teknikal perlu dioptimisasi untuk
setiap data finansial yang akan dianalisis. Dengan bantuan algoritma genetika sebagai add-in pada excel.
Melalui pemanfaatan add-in TALIB dan GeneHunter, dengan sedikit tambahan tampilan grafik di
Excel maka setiap orang akan dengan mudah melakukan optimisasi indicator teknikal sehingga
memperoleh strategi trading yang optimal sesuai data finansial, indicator dan aturan trading yang akan
diterapkan.

33 | H a l

Anda mungkin juga menyukai