Dalam analisis teknikal, Aroon adalah satu penunjuk teknikal yang sangat unik. perkataan
Indikator Aroon membantu peniaga meramalkan hubungan kedudukan relatif antara pergerakan harga dan kawasan trend dengan mengira bilangan K-garis antara harga tertinggi dan terendah sebelum jarak K-garis semasa. Ia terdiri daripada dua bahagian: AroonUp dan AroonDown. Kedua-dua garis bergerak ke atas dan ke bawah antara 0 dan 100. Walaupun mereka dinamakan ke atas dan ke bawah, tidak seperti indikator BOLL, ia bukan
Indikator Aroon memerlukan anda menetapkan parameter tempoh masa terlebih dahulu, sama seperti menetapkan parameter tempoh purata. Dalam perisian perdagangan tradisional, bilangan kitaran adalah 14. Di samping itu, parameter tempoh ini tidak tetap. Anda juga boleh menetapkannya kepada 10 atau 50 dan sebagainya. Demi pemahaman yang mudah, mari kita tentukan sebagai: N. Selepas menentukan N, kita boleh mengira AroonUp dan AroonDown.
Rumus khusus adalah seperti berikut:
Dari formula ini, kita boleh melihat secara kasar idea penunjuk Aroon. iaitu: berapa banyak kitaran yang ada, dan harga di bawah tinggi / rendah baru-baru ini, membantu meramalkan sama ada trend semasa akan berterusan dan mengukur kekuatan trend semasa. jika kita mengklasifikasikan penunjuk ini, jelas bahawa ia tergolong dalam jenis penjejakan trend. Tetapi tidak seperti metrik penjejakan trend lain, ia memberi lebih banyak perhatian kepada masa daripada harga.
AroonUp dan AroonDown mencerminkan masa semasa dan harga tertinggi atau terendah sebelumnya. jika masa dekat, nilainya akan lebih besar. jika masa jauh, nilainya akan lebih kecil. Dan apabila kedua-dua garis bersilang, ia menunjukkan bahawa arah harga mungkin berubah. jika AroonUp di atas AroonDown, harga naik, harga mungkin naik; jika AroonDown di atas AroonUp, harga berada dalam trend menurun, harga mungkin jatuh.
Pada masa yang sama, kita juga boleh menetapkan beberapa nilai tetap untuk mencari peluang dagangan dengan tepat. Kita tahu bahawa penunjuk Aroon telah berjalan naik turun antara 0 dan 100. Jadi apabila pasaran sedang meningkat, iaitu apabila AroonUp berada di atas AroonDown, apabila AroonUp lebih besar daripada 50, trend kenaikan pasaran telah terbentuk, dan harga mungkin akan berterusan pada masa akan datang. apabila AroonUp di bawah 50, momentum kenaikan harga semakin berkurangan, dan harga mungkin turun turun pada masa akan datang.
Sebaliknya, apabila pasaran berada dalam trend penurunan, iaitu apabila AroonDown berada di atas AroonUp, apabila AroonDown lebih besar daripada 50, trend penurunan pasaran telah terbentuk, dan harga mungkin akan terus jatuh pada masa akan datang; apabila AroonDown memakai 50, kuasa pendorong penurunan harga semakin lemah. Harga masa depan mungkin turun naik dan meningkat. Kemudian mengikut dua perenggan di atas, kita boleh menyenaraikan syarat membeli dan menjual sebagai:
Setelah menjelaskan logika perdagangan, kita boleh menerapkannya dengan kod. Dalam artikel ini, kita terus menggunakan bahasa JavaScript, dan pelbagai perdagangan masih komoditi niaga hadapan. pembaca dengan kemahiran pengaturcaraan yang kuat juga boleh menerjemahkannya ke Python, atau cryptocurrency.
Mengikuti langkah-langkah berikut:fmz.com> Login > Dashboard > Strategy Library > New Strategy, mula menulis strategi, memberi perhatian kepada komen dalam kod di bawah.
Langkah 1: Menggunakan Rangka Kerja CTA
Perhatikan bahawa Pastikan anda mengklik berikut: Perpustakaan Perdagangan Berjangka Komoditi. jika anda disesuaikan dengan cryptocurrency, klik pada: Perpustakaan perdagangan mata wang spot digital.
function main() {
// ZC000/ZC888 refers to using the index as the source of the market but the transaction is mapped to the main contract
$.CTA("ZC000/ZC888", function(st) {
})
}
Langkah 2: Dapatkan data
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // get the K line array
var mp = st.position.amount; // Get the number of positions
})
}
Langkah 3: Mengira penunjuk Aroon
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // get the K line array
var mp = st.position.amount; // Get the number of positions
if (r.length < 21) { // Determine if the K line data is sufficient
Return;
}
var aroon = talib.AROON(r, 20); // Aroon indicator
var aroonUp = aroon[1][aroon[1].length - 2]; // Aroon indicator goes online with the second root data
var aroonDown = aroon[0][aroon[0].length - 2]; // Aroon's indicator goes down the second root of the data
})
}
Langkah 4: Mengira syarat dagangan dan meletakkan pesanan
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // get the K line array
var mp = st.position.amount; // Get the number of positions
if (r.length < 21) { // Determine if the K line data is sufficient
Return;
}
var aroon = talib.AROON(r, 20); // Aroon indicator
var aroonUp = aroon[1][aroon[1].length - 2]; // Aroon indicator goes online with the second root data
var aroonDown = aroon[0][aroon[0].length - 2]; // AAroon's indicator goes down the second root of the data
if (mp == 0 && aroonUp > aroonDown && aroonUp > 50) {
Return 1; // long position open
}
if (mp == 0 && aroonDown > aroonUp && aroonDown > 50) {
Return -1; // short position open
}
if (mp > 0 && (aroonUp < aroonDown || aroonUp < 50)) {
Return -1; // multi-head platform
}
if (mp < 0 && (aroonDown < aroonUp || aroonDown < 50)) {
Return 1; // short platform
}
})
}
// The above code is a complete strategy based on the JavaScript language.
// --------------------Dividing line--------------------
// In order to take care of the reach of the party, this strategy is also translated into My language. At the same time, this can also be used for digital currency. Here is the complete policy code:
AROONUP := ((N - HHVBARS(H, N)) / N) * 100; // Aroon indicator goes online
AROONDOWN := ((N - LLVBARS(L, N)) / N) * 100; // Aroon indicator goes offline
AROONUP > AROONDOWN && AROONUP > BKV, BK; // Long position open
AROONDOWN > AROONUP && AROONDOWN > SKV, SK; // short position
AROONUP < AROONDOWN || AROONUP < SPV, SP; // Multi-head platform
AROONDOWN < AROONUP || AROONDOWN < BPV, BP; // Short platform
AUTOFILTER;
Untuk mendapatkan lebih dekat dengan persekitaran perdagangan sebenar, kami menggunakan 2 pips slippage dan 2 kali yuran urus niaga untuk menguji tekanan semasa backtest.
Kawasan ujian
Laporan keuntungan
Kurva dana
Dari hasil backtest di atas, strategi ini sangat baik apabila trend pasaran lancar, sama ada dalam kenaikan atau kejatuhan, penunjuk Aroon dapat mengesan pasaran sepenuhnya. kurva modal juga menunjukkan kecenderungan menaik secara keseluruhan, dan tidak ada retracement yang ketara.
Kelebihan: Penunjuk Aroon boleh menilai status pasaran trend, mengambil kira trend pasaran dan keupayaan untuk menilai perubahan harga, dan membantu peniaga meningkatkan penggunaan dana.
Kelemahan: Indikator Aroon hanya salah satu daripada penunjuk penjejakan trend, ia mempunyai kekurangan yang sama dengan penunjuk penjejakan trend. ia hanya dapat menilai bilangan tempoh harga tertinggi atau terendah pada masa tertentu, tetapi kadang-kadang harga tertinggi atau terendah akan bergantung pada keseluruhan trend pasaran, keadaan tidak dijangka ini akan mengganggu penunjuk Aroon itu sendiri, menyebabkan isyarat palsu.
Untuk kod sumber,
dengan versi JavaScript, sila klik:https://www.fmz.com/strategy/154547dengan versi Mylanguage, sila klik:https://www.fmz.com/strategy/155582
Dalam strategi ini, kami menetapkan beberapa parameter, seperti: aroonUp atau aroonDown adalah lebih besar daripada dan kurang daripada 50, menyebabkan isu kelewatan strategi. Dalam banyak kes, pasaran akan naik atau jatuh untuk tempoh masa sebelum menutup kedudukan. Walaupun ini meningkatkan kadar kemenangan dan mengurangkan kadar retracement maksimum, ia juga kehilangan banyak keuntungan, yang juga mengesahkan kebenaran homonim keuntungan dan kerugian. Rakan-rakan yang berminat boleh menggali lebih dalam dan memperbaikinya.