• Tidak ada hasil yang ditemukan

Simulasi Expert Advisor Trading Forex Menggunakan Metode Batu Penjuru.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Simulasi Expert Advisor Trading Forex Menggunakan Metode Batu Penjuru."

Copied!
18
0
0

Teks penuh

(1)

ABSTRAK

Forex (foreign exchange) adalah salah satu bisnis online yang sedang marak karena mampu mendapatkan keuntungan lebih besar dari modal, tetapi seiring dengan keuntungan yang besar terdapat juga resiko untuk kehilangan modal dengan cepat. Oleh karena itu diperlukan suatu metode yang dapat menanggulangi kemungkinan rugi dan mudah digunakan. Tujuan dari penelitian ini adalah untuk membuat sebuah robot expert advisor yang dapat menangani kemungkinan kehilangan modal dengan cepat dan mudah untuk digunakan oleh pemula. Metode yang dilakukan dalam penelitian ini adalah metode batu penjuru dengan pendekatan studi kasus terhadap metode yang lain (metode hedging dan martingale). Aplikasi ini dibuat dengan menggunakan bahasa MQL4 (C++). Hasil penelitian menunjukan bahwa metode batu penjuru lebih baik dibandingkan metode hedging dan martingale.

(2)

ABSTRACT

Forex (foreign exchange) is one of the emerging online business because it can get greater benefit from capital, but as a great advantage there is also a risk for loss of capital quickly. Therefore we need a method that can cope with the possibility of loss and easy to use. The purpose of this study is to make a robot expert advisor that can handle the possibility of capital loss quickly and easily for use by beginners. The method used in this research is the cornerstone method with a case study approach to other methods (method of hedging and martingale). This application is created using MQL4 language (C++). The results showed that the method is better than the cornerstone of hedging and martingale methods.

(3)

DAFTAR ISI

LEMBAR PENGESAHAN ... i

PRAKATA ... ii

PERNYATAAN PUBLIKASI LAPORAN PENELITIAN ... iv

PERNYATAAN ORISINALITAS LAPORAN PENELITIAN ... v

ABSTRAK ... vi

ABSTRACT ... vii

DAFTAR ISI ... viii

DAFTAR GAMBAR ... xi

DAFTAR TABEL ... xiii

DAFTAR PROGRAM ... xiv

DAFTAR ISTILAH ... xv

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 2

1.3 Tujuan ... 2

1.4 Batasan Masalah ... 2

1.5 Sistematika Pembahasan ... 2

BAB II LANDASAN TEORI ... 4

2.1 Pemodelan ... 4

2.1.1 Use Case Diagram ... 4

(4)

2.2.3 Contract Size (Lot) & Pip (Point) ... 10

2.2.4 Jenis-jenis Order ... 12

2.3 Instatrader ... 13

2.4 Expert Advisor (EA) ... 14

2.5 MQL4 ... 14

2.6 Trading Strategy ... 15

2.6.1 Hedging ... 15

2.6.2 Martingale ... 16

2.7 Pengujian ... 17

2.7.1 Pengujian Strategi Tester ... 17

BAB III ANALISIS DAN DISAIN ... 19

3.1 Analisis ... 19

3.2 Gambaran Keseluruhan ... 20

3.2.1 Persyaratan Antarmuka Eksternal ... 20

3.2.2 Antarmuka dengan Pengguna ... 20

3.2.3 Antarmuka Perangkat Keras ... 20

3.2.4 Antarmuka Perangkat Lunak ... 20

3.3 Disain Perangkat Lunak ... 21

3.3.1 Use Case Diagram ... 21

3.3.2 Activity Diagram ... 22

3.4 Metode Batu Penjuru ... 25

3.4.1 Cara Kerja ... 25

3.4.2 Strategi ... 29

3.5 Contoh Kasus ... 31

BAB IV PENGEMBANGAN PERANGKAT LUNAK ... 34

(5)

4.1.1 Alert ... 34

4.1.2 Close ... 35

4.1.3 Digit ... 35

4.1.4 Lot ... 36

4.1.5 Martingale ... 37

4.1.6 Modify ... 37

4.1.7 Hedging ... 38

4.1.8 Step... 39

4.1.9 Take Profit ... 39

4.1.10 Profit In Money ... 40

4.1.11 Close All ... 40

4.1.12 Open Order ... 43

4.1.13 Open Modify ... 44

4.2 Cara Menggunakan ... 46

BAB V TESTING DAN EVALUASI SISTEM ... 50

5.1 Rencana Pengujian ... 50

5.1.1 Strategi Tester ... 50

5.1.2 Perbandingan metode ... 65

BAB VI KESIMPULAN DAN SARAN ... 69

6.1 Kesimpulan ... 69

6.2 Saran ... 69

DAFTAR PUSTAKA ... 70

(6)

DAFTAR GAMBAR

Gambar 2.1 Use case Diagram (Rumbaugh,1991)... 5

Gambar 2.2 Activity Diagram (Booch, 1999) ... 6

Gambar 2.3 Market Watch (Widoadmojo,2005) ... 10

Gambar 2.4 Strategi tester (Parmadita,2013)... 18

Gambar 3.1 Use case batu penjuru ... 22

Gambar 3.2 Activity new order ... 23

Gambar 3.3 Activity close order ... 24

Gambar 3.4 Activity modify / delete ... 25

Gambar 3.5 Langkah pertama metode batu penjuru ... 26

Gambar 3.6 Langkah ke 2 metode batu penjuru ... 27

Gambar 3.7 Langkah ke 3 metode batu penjuru ... 27

Gambar 3.8 Langkah ke 4 metode batu penjuru ... 28

Gambar 3.9 Langkah ke 5 metode batu penjuru ... 28

Gambar 3.10 Langkah ke 6 metode batu penjuru ... 29

Gambar 3.11 Langkah ke 7 metode batu penjuru ... 30

Gambar 3.12 Metode hedging yang diterapkan dalam metode batu penjuru ... 31

Gambar 3.13 Metode martingale dimulai dari order sell ... 31

Gambar 3.14 Metode martingale dimulai dari order buy... 32

Gambar 4.1 Cara ubah setting metode batu penjuru ... 47

Gambar 4.2 Ubah nilai lot ... 48

Gambar 4.3 Ubah nilai step ... 49

Gambar 4.4 Ubah nilai take profit ... 50

Gambar 5.1 Penjelasan header ... 51

Gambar 5.2 Hasil tester batu penjuru step 1 lot 2 ... 52

Gambar 5.3 Hasil tester batu penjuru step 2 lot 2 ... 53

Gambar 5.4 Hasil tester batu penjuru step 3 lot 2 ... 54

Gambar 5.5 Hasil tester batu penjuru step 4.1 lot 2 ... 55

Gambar 5.6 Hasil tester batu penjuru step 4.2 lot 2 ... 56

Gambar 5.7 Hasil tester batu penjuru step 1 lot 3 ... 57

(7)

Gambar 5.9 Hasil tester batu penjuru step 3 lot 3 ... 59

Gambar 5.10 Hasil tester batu penjuru step 4 lot 3 ... 60

Gambar 5.11 Hasil tester batu penjuru step 5 lot 3 ... 61

Gambar 5.12 Hasil tester batu penjuru modal 10000 lot 2 ... 62

Gambar 5.13 Hasil tester batu penjuru profit dari modal 10000 USD... 63

Gambar 5.14 Hasil tester batu penjuru modal 10000 lot 3 ... 64

Gambar 5.15 Hasil tester batu penjuru profit dari modal 10000 USD... 65

Gambar 5.16 Penerapan metode hedging ... 66

Gambar 5.17 Hasil dari metode hedging ... 67

Gambar 5.18 Penerapan metode martingale ... 68

(8)

DAFTAR TABEL

Tabel 2.1 Pengertian forex trading ... 7

Tabel 2.2 Cara kerja forex ... 9

Tabel 2.3 Quote currency ... 9

Tabel 2.4 Quote position ... 10

Tabel 2.5 Position long / short ... 13

Tabel 2.6 Jenis-jenis order... 14

Tabel 3.1 Contoh kasus modal 5000 USD ... 32

Tabel 3.2 Contoh kasus modal 10000 USD ... 32

Tabel 3.3 Contoh kasus lot kelipatan 2 ... 32

(9)

DAFTAR PROGRAM

Kode Program 4.1 Aktivasi expert advisor ... 35

Kode Program 4.2 Close order ... 36

Kode Program 4.3 Check digit ... 37

Kode Program 4.4 Extern lot ... 37

Kode Program 4.5 Algoritma martingale ... 38

Kode Program 4.6 Modify order ... 38

Kode Program 4.7 Modify order step 2 ... 39

Kode Program 4.8 Algoritma hedging ... 39

Kode Program 4.9 Extern step ... 40

Kode Program 4.10 Extern take profit ... 40

Kode Program 4.11 Profit in money ... 41

Kode Program 4.12 Close all ... 42

Kode Program 4.13 Close all step 2 ... 42

Kode Program 4.14 Close all step 3 ... 43

Kode Program 4.15 Close all step 4 ... 43

Kode Program 4.16 Close all step 5 ... 44

Kode Program 4.17 Close all step 6 ... 44

Kode Program 4.18 Open order ... 45

Kode Program 4.19 Open order step 2 ... 45

Kode Program 4.20 Modify open order ... 46

Kode Program 4.21 Modify open order step 2 ... 46

Kode Program 4.22 Modify open order step 3 ... 47

(10)

DAFTAR ISTILAH

Balance : Dana real yang ada pada account.

Close : Istilah yang digunakan untuk menggambarkan harga terakhir pada suatu

periode perdagangan.

Consistency : Kata yang menjelaskan suatu kondisi menguntungkan secara terus

menerus (berkesinambungan) dan juga menggambarkan tindakan untuk

tetap pada suatu strategi dalam suatu jangka waktu tertentu.

Contract Size : Ukuran dari suatu kontrak perdagangan mata uang asing.

Cross Rate : Nilai kurs antara dua mata uang diluar mata uang USD.

Current Account : Adalah selisih antara total ekspor dan impor barang, jasa, dan

transfer. Merupakan bagian dari neraca perdagangan. Dalam

perhitungannya, Current account tidak mencakup transaksi-transaksi asset

finansial dan kewajiban (hutang). Data ini merupakan indikator tren

perdagangan luar negeri.

Cut Loss : Tindakan di mana kita melakukan likuidasi posisi dalam keadaan rugi.

Hal ini dilakukan untuk menghindari kerugian yang lebih besar. Biasanya

cut loss ini dilakukan pada kisaran kerugian 30 point sampai 50 point.

Entry Order : Sebuah perintah beli atau jual mata uang pada level harga tertentu.

Equity : Jumlah dana yang tersedia pada account, (balance + jumlah profit atau

loss).

Euro : Mata uang negara-negara Eropa yang tergabung dalam European Union

(EU).

High : Istilah yang digunakan untuk mendeskripsikan harga tertinggi pada

perdagangan dalam suatu periode yang sedang diamati.

High Return : Tingkat keuntungan yang akan dialami sangat tinggi.

Higher High : Pergerakan harga di dalam suatu tren naik yang sudah ada dimana

memotong di atas gerakan naik awal.

Initial Margin : Adalah sejumlah uang yang disetor oleh investor pada saat

pembukaan account sesuai kesepakatan awal yang dibuat antara nasabah

pialang yang besarnya perkontrak umumnya berkisar 5 - 10 % dari nilai

(11)

(contract size), waktu, dan gejolak harga yang terjadi. Initial margin

merupakan jaminan uang yang diperlukan oleh penjual maupun pembeli

untuk menjamin kewajiban dari transaksi tersebut.

Leverage : Merujuk pada margin trading. Menggunakan kredit dana untuk

meningkatkan kekuatan beli / jual.

Limit Order : Perintah untuk membeli atau menjual kontrak yang mengindikasikan

adanya batasan keinginan untuk melanjutkan kontrak jika harga melebihi

dari yang sudah ditentukan.

Limit Profit : Sebuah perintah beli atau jual mata uang pada level harga tertentu

pada saat posisi sudah untung.

Liquid position : Sebuah perintah beli atau jual untuk keluar (menutup) dari posisi

yang terbuka.

Locking : Tindakan ini sering dilakukan pada saat kita dalam keadaan floatingloss.

Untuk mengurangi kerugian yang lebih besar atau mempertahankan

keuntungan, kita kunci kerugian atau keuntungan tersebut dengan posisi

yang berlawanan dengan posisi pertama. Sistem ini sering juga disebut

dengan hedging posisi.

Lot : Satuan hitung untuk menyatakan besarnya transaksi. Transaksi minimal

yang bisa dilakukan adalah satu lot. Dalam investasi forex satu lot bernilai

USD10,000 untuk nilai kontrak kecil dan USD100,000 untuk nilai kontrak

besar.

Low : Istilah yang digunakan untuk mendeskripsikan harga terendah yang

diperdagangkan dalam suatu jangka waktu yang sedang diamati.

Lower High : Pergerakan harga di dalam suatu tren turun yang sudah ada, dimana

merupakan gerakan tajam menaiknya dibawah harga gerakan naik

sebelumnya.

Maintenance margin : Biasa disebut minimum margin, adalah margin yang harus

(12)

Investor harus menambah dananya sampai ke level initial marginnya,

kalau tidak posisinya akan ditutup oleh pialang yang bersangkutan.

Market Order : Perintah untuk membeli atau menjual kontrak yang

mengindikasikan kebersediaan untuk tetap melanjutkan kontrak tanpa

syarat batasan harga apapun.

Open : Istilah yang digunakan untuk mendeskripsikan harga pertama

perdagangan untuk suatu periode yang sedang diamati.

Open Position : Transaksi jual/beli yang dilakukan pada harga market dan posisi

tersebut belum diliquidasi (ditutup).

Pivot : Istilah yang digunakan untuk mendefinisikan tipe perubahan kembali

pada posisi dengan jenis V.

Quotation : Sering disebut quote dan juga menunjukkan harga bid/ask.

Resistance : Sekelompok harga-harga tertinggi yang terjadi beberapa waktu yang

lalu dan membentuk suatu kekuatan harga yang sulit untuk dilalui oleh

pergerakan masa berikutnya.

Risk Management : Tingkat resiko yang dapat ditekan seminimal mungkin dalam

menjalankan atau mengelola investasi.

Sideway : Adalah keadaan di mana tren mata uang bergerak cenderung turun naik

antara support dan resistant dalam satu periode tertentu. Ini disebabkan

adanya market yang libur terutama market Amerika Serikat.

Slippage : Perbedaan antara tingkat harga yang diinginkan untuk melihat harga

aktual yang dihadapi.

Spread : Selisih harga jual (sell) dan harga beli (buy) yang dikenal juga dengan

harga bid dan ask.

Stop : Tingkat harga dimana pasar menunjukkan kesalahan kita, dan dimana

posisi kita akan keluar dan mengalami kerugian.

Stop Limit order : Perintah untuk membeli atau menjual kontrak yang akan

mengirimkan pesanan pasar pada perdagangan secepat mungkin ketika

harga pada posisi berhenti terjadi. Tipe pesanan yang paling sering

digunakan ketika memasuki suatu posisi.

Stop order : Sebuah perintah beli atau jual mata uang pada level harga tertentu untuk

(13)

Time Stop : Strategi keluar dari pasar yang menggunakan suatu jangka waktu

tertentu untuk mengindikasikan kegagalan perdagangan dan memicu

untuk keluar dari pasar.

Trade Balance : Trade balance adalah selisih bersih dari nilai ekspor dan impor

barang dan jasa suatu negara dalam suatu periode tertentu. Angka positif

menunjukkan surplus (ekspor melebihi impor), negatif menunjukkan

defisit (impor melebihi ekspor).

Trader Orders : Perintah untuk membeli atau menjual mata uang pada posisi tertentu

dalam kisaran harga tertentu.

Trailing Stops : Proses untuk memindahkan posisi untuk mengurangi risiko

berlebihan atau untuk melindungi keuntungan ketika perdagangan

bergerak pada arah yang tepat.

Volume : Istilah pengukuran digunakan untuk mendeskripsikan besar dari kontrak

(14)

BAB I

PENDAHULUAN

1.1 Latar Belakang

Trading forex adalah perdagangan mata uang asing dengan mata uang asing

lainnya dalam satuan kontrak, yang tidak melibatkan fisik secara langsung

melainkan hanya nilainya saja. Perdagangan atau transaksi ini menggunakan

margin sebagai jaminan transaksi. Trading forex merupakan salah satu pilihan

investasi yang berkembang di Indonesia. Trading forex berbeda dengan money

changer. Pada money changer, jual beli dilakukan secara fisik (memiliki tempat

dan barang), sedangkan Trading forex dilakukan dengan memindahbukukan dana

pada rekening bank antara trader.

Pasar forex sebenarnya adalah pasar uang terbesar di dunia. Banyak sekali

trader yang terlibat di dalamnya, perusahaan bertaraf internasional, bank-bank

dunia maupun individu. Banyaknya trader di pasar ini membuat perputaran uang

menjadi sangat cepat.

Perputaran uang yang begitu cepat, selain diakibatkan oleh banyaknya

jumlah trader, juga dipengaruhi oleh berbagai macam faktor, seperti faktor

ekonomi, politik dan sosial suatu negara. Akibatnya, harga menjadi sangat

fluktuatif. Harga yang sangat fluktuatif merupakan resiko yang harus dihadapi para

trader.

Dengan adanya resiko ini, metode batu penjuru diharapkan dapat menjadi

jawaban untuk para trader dikarenakan cara kerja dari batu penjuru sendiri adalah

dengan memanfaatkan metode hedging yaitu suatu cara untuk membuka 2 posisi

yang berlawanan sehingga salah 1 dari posisi tersebut akan mendapatkan

keuntungan dan 1 posisi lainnya yang mengalami kerugian ditutup dengan

memanfaatkan metode martingale yaitu suatu cara untuk mendapatkan keuntungan

dari transaksi yang rugi dengan menggandakan nilai harga dari transaksi

(15)

1.2 Rumusan Masalah

Berdasarkan latar belakang masalah tersebut, dapat dibuat rumusan masalah

sebagai berikut :

1. Bagaimana cara kerja dari metode batu penjuru?

2. Bagaimana mengembangkan metoda yang lebih baik dari metode hedging

dan martingale pada kasus modal awal minimal 5000 USD?

1.3 Tujuan

Berdasarkan rumusan-rumusan masalah yang didapat, maka dapat

dituliskan tujuan membuat adalah sebagai berikut :

1. Membuat Expert advisor dengan menggunakan metode batu penjuru.

2. Menunjukkan metode batu penjuru lebih baik atau tidak daripada metode

hedging dan metode martingale pada kasus modal awal minimal 5000 USD.

1.4 Batasan Masalah

Batasan masalah dalam tugas akhir ini adalah sebagai berikut :

1. Mengembangkan metoda batu penjuru yang merupakan gabungan dari

metoda hedging dan martingale.

2. expert advisor ini lebih baik digunakan untuk modal di atas 5000 USD.

3. Transaksi lebih baik menggunakan kurs yang memiliki 3-5 digit.

contohnya seperti (1.0000 atau 11.000).

4. Rentang waktu untuk menggunakan expert advisor menyesuaikan hari kerja dari

pasar forex. (hari senin - jumat).

5. Maksimal dari kekuatan metode batu penjuru ini sebanyak 10 titik.

1.5 Sistematika Pembahasan

Sistematika penulisan pada tugas akhir ini adalah :

Bab 1 PENDAHULUAN

(16)

Bab 2 LANDASAN TEORI

Bab ini berisikan tentang dasar-dasar teori apa saja yang akan digunakan

dalam mendukung penyusunan laporan serta pembuatan aplikasi dengan

judul "Simulasi Expert Advisor Trading Forex Menggunakan Metode Batu

Penjuru".

Bab 3 ANALISIS DAN DISAIN

Bab ini berisikan tentang analisis dan perancangan aplikasi EA (expert

advisor) Trading menggunakan metode batu penjuru yang dijelaskan

dengan Use Case Diagram, Activity Diagram serta user interface.

Bab 4 PENGEMBANGAN PERANGKAT LUNAK

Bab ini berisikan tentang hasil pengembangan yang dijelaskan dengan

source code dari aplikasi dengan judul "Simulasi Expert Advisor Trading

Forex Menggunakan Metode Batu Penjuru".

Bab 5 TESTING DAN EVALUASI SISTEM

Bab ini berisikan uji coba penelitian dengan studi kasus dan strategi tester.

Bab 6 KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran untuk "Simulasi Expert Advisor

Trading Forex Menggunakan Metode Batu Penjuru" yang dapat digunakan

(17)

BAB VI

KESIMPULAN DAN SARAN

6.1 Kesimpulan

Berdasarkan hasil pengamatan dalam melakukan analisis, pengujian, dan

perancangan dapat ditarik kesimpulan sebagai berikut :

1. Metode batu penjuru menggunakan metode hedging untuk mendapatkan profit

dan setiap kerugian diselesaikan dengan menggunakan metode martingale.

2. Penggunaan lot yang semakin besar sangat berpengaruh dengan peningkatan

jumlah modal awal.

3. Metode martingale dapat menjadi kekuatan dalam mempertahankan modal juga

dapat menjadi sumber kerugian apabila kurang diperhatikan.

4. Penggunaan modal awal 10000 usd memberikan hasil positif (profit)

dibandingkan dengan modal 5000 usd.

5. Penggunaan lot 3 memberikan hasil positif di tiap titiknya daripada penggunaan

lot 2 di dalam metode batu penjuru.

6. Metode batu penjuru lebih baik daripada metode hedging dan martingale seperti

pada gambar 5.15.

6.2 Saran

Untuk pengembangan lebih lanjut maka dapat diberikan saran berupa

penambahan Trailing Stop pada cara mendapatkan profit terlihat jauh lebih baik

(18)

DAFTAR PUSTAKA

Andriawan, N. (2013). Forex Profit and Rich. Semarang: Jagad Valindo.

Dick, J. (2004). Forex Made Easy. United State of America: McGraw-Hill.

Grady Booch, J. R. (1999). The Unified Modeling Language User Guide. Wesley:

Addison.

Gunawan, l. (2003). Transaksi Derivatif, Hedging, dan Pasar Modal. Jakarta:

PT.Grasindo.

hendarto, K. (2005). belajartrading. malang: andi yogyakarta.

James Rumbaugh, I. J. (1999). The Unified Modeling language Reference Manual.

Wesley: Addison.

James Rumbaugh, M. B. (1991). Object-Oriented Modeling and Design. prentice Hall.

Lehmann, B. N. (1990). Fads, martingales, and market efficiency, Quarterly Journal of

Economics.

Marsel. (2011, april 22). Strategi Forex Martingale. Retrieved from

http://siembah.com/strategi-martingale-forex

Parmadita. (2013, Jan 2). Belajar MQL EA. Retrieved from

http://www.seputarforex.com/artikel/forex/belajar-mql-ea/

Widoatmojo, S. (2005). Forex On-Line Trading. Jakarta: Elex Media Komputindo.

Gambar

Tabel 2.1 Pengertian forex trading .........................................................................

Referensi

Dokumen terkait

rangkanya, merupakan bagian dari konsep arsitektur tradisional jepang yang diterapkan dalam skala dan dimensi yang lebih besar. Jepang adalah sebuah Negara yang kecil

Yakni jumlah panas yang dibutuhkan untuk menaikkan suhu satu unit volume atau massa tanah (kal/cm 3 / o C, kal/g/ o C).Untuk tanah mineral lembab, kapasitas panas bergantung pada

Dari konsep tersebut, terlihat bahwa kemampuan seorang kader RBM sebagai agen perubahan, tidak hanya mampu mendeteksi kecacatan dari keempat aspek rehabilitais diatas

Dengan Metode Eksperimen Faktorial ditunjukkan besar arus pengelasan dan kecepatan volume alir gas serta interaksi kedua parameter tersebut memberikan pengaruh yang cukup

Semoga lebih banyak lagi orang yang bisa menaiki perahu penyelamat dari Guan Shi Yin Pu Sa, membersihkan jiwa kita, terbebas dari penderitaan dan memperoleh kebahagiaan,

a) Studi potensi energi terbarukan di Pabrik Gula dalam penelitian ini dinyatakan dalam bentuk berupa potensi energi listrik yang dapat dihasilkan dari pabrik

Melakukan refleksi dengan peserta didikatas manfaat proses pembelajaran yang telah dilakukan dan menentukan tindakan yang akan dilakukan berkaitan dngan penetapan Pancasila

Berdasarkan gambar 3 didapatkan perkembangan psikososial anak usia 3-6 tahun yaitu anak mengenal namanya sendiri, responden menyatakan anak bertanya segala hal