Indikator Teknis

Memprediksi Harga Selanjutnya dengan Jaringan Saraf: Panduan Lengkap untuk Trader
MetaTrader4
Memprediksi Harga Selanjutnya dengan Jaringan Saraf: Panduan Lengkap untuk Trader

Penulis: gpwr Riwayat Versi: 26/06/2009 - menambahkan indikator baru BPNN Predictor dengan Smoothing.mq4, di mana harga diperhalus menggunakan EMA sebelum prediksi. 20/08/2009 - memperbaiki kode yang menghitung fungsi aktivasi neuron untuk mencegah pengecualian aritmatika; memperbarui BPNN.cpp dan BPNN.dll. 21/08/2009 - menambahkan pembersihan memori di akhir eksekusi DLL; memperbarui BPNN.cpp dan BPNN.dll. Teori Singkat Jaringan Saraf: Jaringan saraf adalah model yang dapat disesuaikan dari keluaran sebagai fungsi dari masukan. Model ini terdiri dari beberapa lapisan: lapisan masukan, yang terdiri dari data masukan lapisan tersembunyi, yang terdiri dari node pemrosesan yang disebut neuron lapisan keluaran, yang terdiri dari satu atau beberapa neuron, yang keluaran tersebut adalah keluaran jaringan. Semua node dari lapisan yang berdekatan saling terhubung. Koneksi ini disebut sinapsis. Setiap sinapsis memiliki koefisien skala yang ditugaskan, di mana data yang dipropagasikan melalui sinapsis dikalikan. Koefisien skala ini disebut bobot (w[i][j][k]). Dalam Jaringan Saraf Maju (Feed-Forward Neural Network) (FFNN), data dipropagasikan dari masukan ke keluaran. Berikut adalah contoh FFNN dengan satu lapisan masukan, satu lapisan keluaran, dan dua lapisan tersembunyi: Topologi dari FFNN sering disingkat sebagai berikut: &lt;# masukan&gt; - &lt;# neuron di lapisan tersembunyi pertama&gt; - &lt;# neuron di lapisan tersembunyi kedua&gt; -...- &lt;# keluaran&gt;. Jaringan di atas dapat disebut sebagai jaringan 4-3-3-1. Data diproses oleh neuron dalam dua langkah, sesuai yang ditunjukkan dalam lingkaran dengan tanda penjumlahan dan tanda langkah: Semua masukan dikalikan dengan bobot terkait dan dijumlahkan. Jumlah yang dihasilkan diproses oleh fungsi aktivasi neuron, yang keluaran adalah keluaran neuron. Fungsi aktivasi neuron memberikan non-linearitas pada model jaringan saraf. Tanpa itu, tidak ada alasan untuk memiliki lapisan tersembunyi, dan jaringan saraf menjadi model autoregressive linier (AR). File perpustakaan yang dilampirkan untuk fungsi NN memungkinkan pemilihan antara tiga fungsi aktivasi: sigmoid sigm(x)=1/(1+exp(-x)) (#0) tangen hiperbolik tanh(x)=(1-exp(-2x))/(1+exp(-2x)) (#1) fungsi rasional x/(1+|x|) (#2) Ambang aktivasi dari fungsi-fungsi ini adalah x=0. Ambang ini dapat dipindahkan di sepanjang sumbu x berkat masukan tambahan dari setiap neuron, yang disebut masukan bias, yang juga memiliki bobot yang ditugaskan. Jumlah masukan, keluaran, lapisan tersembunyi, neuron di lapisan ini, dan nilai bobot sinapsis sepenuhnya menggambarkan sebuah FFNN, yaitu model non-linear yang diciptakannya. Untuk menemukan bobot, jaringan harus dilatih. Selama pelatihan terawasi, beberapa set masukan masa lalu dan keluaran yang diharapkan dimasukkan ke dalam jaringan. Bobot dioptimalkan untuk mencapai kesalahan terkecil antara keluaran jaringan dan keluaran yang diharapkan. Metode paling sederhana untuk optimasi bobot adalah back-propagation dari kesalahan, yang merupakan metode penurunan gradien. Fungsi pelatihan yang dilampirkan Train() menggunakan varian dari metode ini, yang disebut Improved Resilient back-Propagation Plus (iRProp+). http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.17.1332 Kekurangan utama dari metode optimasi berbasis gradien adalah bahwa mereka sering menemukan minimum lokal. Untuk seri yang kacau seperti seri harga, permukaan kesalahan pelatihan memiliki bentuk yang sangat kompleks dengan banyak minimum lokal. Untuk seri semacam ini, algoritma genetik adalah metode pelatihan yang lebih disukai. File yang dilampirkan: BPNN.dll - file perpustakaan BPNN.zip - arsip semua file yang diperlukan untuk mengompilasi BPNN.dll dalam C++ BPNN Predictor.mq4 - indikator yang memprediksi harga buka di masa depan BPNN Predictor dengan Smoothing.mq4 - indikator yang memprediksi harga buka yang diperhalus File BPNN.cpp memiliki dua fungsi: Train() dan Test(). Train() digunakan untuk melatih jaringan berdasarkan nilai masukan dan keluaran yang diharapkan. Test() digunakan untuk menghitung keluaran jaringan menggunakan bobot yang dioptimalkan, yang ditemukan oleh Train(). Berikut adalah daftar parameter masukan (hijau) dan keluaran (biru) dari Train(): double inpTrain[] - Data pelatihan masukan (array 1D yang membawa data 2D, yang lebih tua pertama) double outTarget[] - Data target keluaran untuk pelatihan (data 2D sebagai array 1D, yang lebih tua pertama) double outTrain[] - Array keluaran 1D untuk menampung keluaran jaringan dari pelatihan int ntr - # set pelatihan int UEW - Gunakan Bobot Eksternal untuk inisialisasi (1=gunkan extInitWt, 0=gunkan rnd) double extInitWt[] - Array masukan 1D untuk menampung array 3D dari bobot inisialisasi eksternal double trainedWt[] - Array keluaran 1D untuk menampung array 3D dari bobot terlatih int numLayers - # lapisan termasuk masukan, tersembunyi dan keluaran int lSz[] - # neuron di lapisan. lSz[0] adalah # masukan net int AFT - Jenis fungsi aktivasi neuron (0:sigm, 1:tanh, 2:x/(1+x)) int OAF - 1 mengaktifkan fungsi aktivasi untuk lapisan keluaran; 0 menonaktifkan int nep - Max # epoch pelatihan double maxMSE - Max MSE; pelatihan berhenti setelah maxMSE tercapai Berikut adalah daftar parameter masukan (hijau) dan keluaran (biru) dari Test(): double inpTest[] - Data pengujian masukan (data 2D sebagai array 1D, yang lebih tua pertama) double outTest[] - Array keluaran 1D untuk menampung keluaran jaringan dari pelatihan (yang lebih tua pertama) int ntt - # set pengujian double extInitWt[] - Array masukan 1D untuk menampung array 3D dari bobot inisialisasi eksternal int numLayers - # lapisan termasuk masukan, tersembunyi dan keluaran int lSz[] - # neuron di lapisan. lSz[0] adalah # masukan net int AFT - Jenis fungsi aktivasi neuron (0:sigm, 1:tanh, 2:x/(1+x)) int OAF - 1 mengaktifkan fungsi aktivasi untuk lapisan keluaran; 0 menonaktifkan Apakah akan menggunakan fungsi aktivasi di lapisan keluaran atau tidak (nilai parameter OAF) tergantung pada sifat keluaran. Jika keluaran bersifat biner, yang sering terjadi dalam masalah klasifikasi, maka fungsi aktivasi harus digunakan di lapisan keluaran (OAF=1). Harap diperhatikan bahwa fungsi aktivasi #0 (sigmoid) memiliki level jenuh 0 dan 1, sementara fungsi aktivasi #1 dan #2 memiliki level -1 dan 1. Jika keluaran jaringan adalah prediksi harga, maka tidak perlu fungsi aktivasi di lapisan keluaran (OAF=0). Contoh Penggunaan Perpustakaan NN: BPNN Predictor.mq4 - memprediksi harga buka di masa depan. Masukan jaringan adalah perubahan harga relatif: x[i]=Buka[test_bar]/Buka[test_bar+delay[i]]-1.0 di mana delay[i] dihitung sebagai angka Fibonacci (1,2,3,5,8,13,21..). Keluaran jaringan adalah perubahan relatif yang diprediksi dari harga berikutnya. Fungsi aktivasi dimatikan di lapisan keluaran (OAF=0). Masukan indikator: extern int lastBar - Bar terakhir dalam data masa lalu extern int futBars - # bar masa depan untuk diprediksi extern int numLayers - # lapisan termasuk masukan, tersembunyi &amp; keluaran (2..6) extern int numInputs - # masukan extern int numNeurons1 - # neuron di lapisan tersembunyi pertama atau lapisan keluaran extern int numNeurons2 - # neuron di lapisan tersembunyi kedua atau lapisan keluaran extern int numNeurons3 - # neuron di lapisan tersembunyi ketiga atau lapisan keluaran extern int numNeurons4 - # neuron di lapisan tersembunyi keempat atau lapisan keluaran extern int numNeurons5 - # neuron di lapisan tersembunyi kelima atau lapisan keluaran extern int ntr - # set pelatihan extern int nep - Max # epoch extern int maxMSEpwr - menetapkan maxMSE=10^maxMSEpwr; pelatihan berhenti < maxMSE extern int AFT - Jenis fungsi aktivasi (0:sigm, 1:tanh, 2:x/(1+x)) Indikator ini menggambar tiga kurva di grafik: warna merah - prediksi harga masa depan warna hitam - harga buka pelatihan masa lalu, yang digunakan sebagai keluaran yang diharapkan untuk jaringan warna biru - keluaran jaringan untuk masukan pelatihan BPNN Predictor.mq4 - memprediksi harga buka yang diperhalus di masa depan. Menggunakan perhalusan EMA dengan periode smoothPer. Pengaturan Semua: Salin BPNN.DLL yang dilampirkan ke C:\Program Files\MetaTrader 4\experts\libraries Di MetaTrader: Alat - Opsi - Penasihat Ahli - Izinkan impor DLL Anda juga dapat mengompilasi file DLL Anda sendiri menggunakan kode sumber dalam BPNN.zip. Rekomendasi: Sebuah jaringan dengan tiga lapisan (numLayers=3: satu masukan, satu tersembunyi dan satu keluaran) sudah cukup untuk sebagian besar kasus. Menurut Teorema Cybenko (1989), jaringan dengan satu lapisan tersembunyi mampu mendekati fungsi multivariabel kontinu dengan tingkat akurasi yang diinginkan; jaringan dengan dua lapisan tersembunyi mampu mendekati fungsi multivariabel diskontinu. Jumlah neuron optimum di lapisan tersembunyi dapat ditemukan melalui percobaan dan kesalahan. "Aturan praktis" yang dapat ditemukan dalam literatur: # neuron tersembunyi = (# masukan + # keluaran)/2, atau SQRT(# masukan * # keluaran). Pantau kesalahan pelatihan, yang dilaporkan oleh indikator di jendela ahli MetaTrader. Untuk generalisasi, jumlah set pelatihan (ntr) harus dipilih 2-5 kali jumlah total bobot dalam jaringan. Sebagai contoh, secara default, BPNN Predictor.mq4 menggunakan jaringan 12-5-1. Jumlah total bobot adalah (12+1)*5+6=71. Oleh karena itu, jumlah set pelatihan (ntr) harus setidaknya 142. Konsep generalisasi dan memorisasi (overfitting) dijelaskan pada grafik di bawah ini. Data masukan ke jaringan harus ditransformasikan menjadi stasioner. Harga Forex tidak stasioner. Sangat disarankan untuk menormalkan masukan ke rentang -1..+1. Grafik di bawah menunjukkan fungsi linier y=b*x (x-masukan, y-keluaran) yang keluaran nya terganggu oleh noise. Noise yang ditambahkan menyebabkan keluaran fungsi yang diukur (titik hitam) menyimpang dari garis lurus. Fungsi y=f(x) dapat dimodelkan oleh jaringan saraf maju. Jaringan dengan sejumlah bobot besar dapat disesuaikan dengan data yang diukur dengan kesalahan nol. Perilakunya ditunjukkan sebagai kurva merah yang melewati semua titik hitam. Namun, kurva merah ini tidak ada hubungannya dengan fungsi linier asli y=b*x (hijau). Ketika jaringan yang overfitted ini digunakan untuk memprediksi nilai masa depan dari fungsi y(x), itu akan menghasilkan kesalahan besar karena sifat acak dari noise yang ditambahkan. Sebagai imbalan untuk berbagi kode ini, penulis memiliki sedikit permohonan. Jika Anda berhasil membuat sistem perdagangan yang menguntungkan berdasarkan kode ini, silakan bagikan ide Anda kepada saya dengan mengirimkan email langsung ke vlad1004@yahoo.com. Semoga sukses!

2009.06.26
Indeks Dimensi Fraktal dan Penggunaan Step EMA dalam Trading
MetaTrader4
Indeks Dimensi Fraktal dan Penggunaan Step EMA dalam Trading

Selamat datang kembali, trader! Di kesempatan kali ini, kita akan membahas dua alat analisis yang cukup menarik, yaitu Indeks Dimensi Fraktal dan penggunaan Step EMA. Mari kita kupas tuntas! Step EMA File Step_Ema_LK.mq4 adalah kombinasi antara filter step dan EMA yang saya buat beberapa waktu lalu. Alat ini menawarkan pendekatan yang menarik dengan menukar beberapa lag/pergerakan harga menjadi lag/waktu sehingga pergerakan harga menjadi lebih signifikan. Indeks Dimensi Fraktal Selanjutnya, kita punya LK_FDI_V2.mq4, versi saya dari Indeks Dimensi Fraktal. Alat ini mengikuti prinsip yang kurang lebih sama dengan FGDI.mq4 yang telah diposting di tempat lain dalam basis kode. Namun, ada beberapa perbedaan kecil, terutama saat berhadapan dengan periode yang kecil. Contohnya, periode 2 bar (2 pengamatan) dianggap acak (~1.58) dalam versi ini, sementara FGDI akan memberikan nilai di atas 2.0. Versi ini juga mendukung mode bobot linier yang mungkin memberikan sedikit lag yang lebih rendah dalam beberapa kasus. Selain itu, ada juga dFDI (garis hijau di chart), yang merupakan FDI pada turunan pertama (laju perubahan). Interpretasi FDI FDI di bawah 1.5: Menunjukkan bahwa kita sedang dalam tren. FDI di 1.5: Menunjukkan bahwa kita berada di pasar yang acak. FDI di atas 1.5: Menunjukkan bahwa kita sedang berada di pasar yang bergerak dalam rentang (ranging). Pengukuran dFDI yang tinggi umumnya menunjukkan bahwa tren yang ada stabil. Sekian pembahasan kali ini mengenai Indeks Dimensi Fraktal dan Step EMA. Semoga informasi ini bermanfaat untuk trading Anda! Jangan ragu untuk berbagi pendapat di kolom komentar.

2009.06.25
Mengoptimalkan Trading dengan MTF Relative Strength Index
MetaTrader4
Mengoptimalkan Trading dengan MTF Relative Strength Index

MTF Relative Strength Index adalah indikator MetaTrader yang berbasis pada RSI (Relative Strength Index) yang sudah cukup dikenal di kalangan trader. RSI sendiri adalah osilator momentum dalam analisis teknikal yang mengukur kecepatan dan besarnya pergerakan harga dengan membandingkan pergerakan close ke close yang naik dan turun. Indikator ini pertama kali dikembangkan oleh J. Welles Wilder dan dipublikasikan di majalah Commodities pada bulan Juni 1978. Di MetaTrader, kita sudah memiliki RSI yang termasuk dalam indikator teknikal standar. Namun, RSI ini hanya dapat digunakan untuk timeframe yang sedang aktif. Terkadang, kita ingin melihat RSI dari timeframe yang lebih tinggi. MTF Relative Strength Index yang akan kita bahas di sini memiliki parameter tambahan yaitu TimeFrame. Dengan parameter ini, kamu bisa mengatur timeframe yang lebih tinggi untuk menghitung nilai RSI. Karena nilai-nilai ini diambil dari bar, saat menggunakan timeframe yang lebih tinggi, kamu akan melihat bentuk garis indikator yang lebih kasar. Pengaturan MTF Relative Strength Index: TimeFrame Nilai default adalah 0, yang berarti timeframe saat ini. Untuk timeframe lainnya: 1=M1, 5=M5, 15=M15, 30=M30, 60=H1, 240=H4, 1440=D1, 10080=W1, 43200=MN1. RSIPeriod Nilai default adalah 14. Ini adalah jumlah periode yang digunakan untuk perhitungan. Applied_price Nilai default adalah 0, yang berarti harga Close digunakan untuk perhitungan. Untuk jenis harga lainnya: 0-CLOSE, 1-OPEN, 2-HIGH, 3-LOW, 4-MEDIAN, 5-TYPICAL, 6-WEIGHTED. Shift Nilai default adalah 0. Parameter ini menggeser seluruh indikator sebanyak jumlah Shift bar dari timeframe yang ditetapkan ke kanan pada chart. Contoh: Screenshot MTF Relative Strength Index

2009.05.27
Panduan Lengkap MTF MACD untuk Trader Indonesia
MetaTrader4
Panduan Lengkap MTF MACD untuk Trader Indonesia

MTF MACD adalah indikator MetaTrader yang berbasis pada MACD yang sudah terkenal. Moving Average Convergence/Divergence (MACD) adalah indikator analisis teknis yang dibuat oleh Gerald Appel pada tahun 1960-an. Indikator ini menunjukkan selisih antara rata-rata bergerak eksponensial (EMA) cepat dan lambat dari harga penutupan. Selain itu, MACD juga memiliki garis sinyal yang merupakan rata-rata bergerak sederhana (SMA) dari nilai utama indikator. MACD adalah indikator yang mengikuti tren dan dirancang untuk mengidentifikasi perubahan tren. Namun, penggunaan indikator ini tidak disarankan dalam kondisi pasar yang bergerak sideways. Di MetaTrader, kita sudah memiliki MACD yang termasuk sebagai indikator teknis standar. Namun, MACD hanya dapat digunakan untuk timeframe saat ini. Ketika kita mencari tren, sangat diinginkan untuk memiliki MACD yang menunjukkan timeframe yang lebih tinggi. MTF MACD yang akan kita bahas di sini memiliki parameter tambahan - TimeFrame. Anda dapat mengatur timeframe yang lebih tinggi dari mana MACD akan menghitung nilainya. Karena nilai-nilai ini berasal dari bar, saat menggunakan timeframe yang lebih tinggi, Anda akan melihat bentuk garis indikator yang lebih kasar. Pengaturan MTF MACD: TimeFrame Nilai default adalah 0, yang berarti timeframe saat ini. Untuk timeframe lainnya: 1=M1, 5=M5, 15=M15, 30=M30, 60=H1, 240=H4, 1440=D1, 10080=W1, 43200=MN1 FastEMA Nilai default adalah 12. Ini adalah rata-rata bergerak eksponensial cepat. SlowEMA Nilai default adalah 26. Ini adalah rata-rata bergerak eksponensial lambat. Signal Nilai default adalah 9. Ini adalah garis sinyal dan merupakan rata-rata bergerak sederhana. Applied_price Nilai default adalah 0 - yang berarti harga penutupan digunakan untuk perhitungan MA. Untuk jenis harga lainnya: 0-CLOSE, 1-OPEN, 2-HIGH, 3-LOW, 4-MEDIAN, 5-TYPICAL, 6-WEIGHTED. Shift Nilai default adalah 0. Parameter ini menggeser seluruh indikator sebanyak angka Shift dari timeframe yang ditentukan ke kanan pada grafik. Contoh: Tangkapan layar MTF MACD

2009.05.27
Panduan Lengkap Menggunakan Indikator Doji Reader untuk Trading
MetaTrader4
Panduan Lengkap Menggunakan Indikator Doji Reader untuk Trading

Pengenalan Indikator Doji Reader Halo trader! Hari ini kita akan membahas tentang Indikator Doji Reader yang bisa membantu kamu mengenali pola doji dalam grafik trading. Indikator ini sangat berguna untuk mengambil keputusan trading yang lebih baik. Fitur Utama Indikator Doji Reader 1. Membaca Pola Doji: Dapat mengatur panjang minimal dari uptail. Dapat mengatur panjang minimal dari lowtail. 2. Membaca Gravestone Doji: Dapat mengatur panjang minimal dari uptail. Dapat mengatur panjang maksimal dari lowtail. 3. Membaca Dragonfly Doji: Dapat mengatur panjang maksimal dari uptail. Dapat mengatur panjang minimal dari lowtail. 4. Notifikasi: Kamu bisa mengatur alarm yang muncul ketika candlestick baru muncul jika diinginkan. Pengaturan Tambahan Berikut adalah beberapa pengaturan tambahan yang bisa kamu gunakan pada Indikator Doji Reader: AnAlert: Aktifkan jika kamu ingin mendapatkan notifikasi ketika doji baru muncul. ShowCandleBox: Aktifkan jika kamu ingin candlestick doji muncul dalam bentuk kotak. BoxColor: Pilih warna favorit untuk kotak tersebut. ShowStar: Aktifkan untuk menampilkan bintang di atas candlestick. StarColor: Pilih warna favorit untuk bintang tersebut. FontColor: Pilih warna untuk teks yang menampilkan nama doji. MyBrokerHas5Digits: Aktifkan jika broker kamu menggunakan 5 digit. Dengan pengaturan ini, kamu bisa menyesuaikan tampilan indikator sesuai dengan kebutuhan trading kamu. Kesimpulan Indikator Doji Reader adalah alat yang sangat berharga bagi setiap trader. Dengan memahami cara kerjanya dan memanfaatkan fitur-fiturnya, kamu bisa meningkatkan kemampuan analisis grafik dan mengambil keputusan trading yang lebih baik. Semoga informasi ini bermanfaat dan selamat trading! Salam sukses, heartnet Kunjungi Blog Kami untuk Lebih Banyak Tips dan Trik!

2009.05.19
Awal Sebelumnya 347 348 349 350 351 352 353 354 355 356 357 Berikutnya Akhir