[TOC]

In der technischen Analyse ist Aroon ein sehr einzigartiger technischer Indikator. Das Wort „Aroon“ kommt aus dem Sanskrit und bedeutet „Morgendämmerung“. Es ist nicht so bekannt wie MA, MACD, KDJ. Es wurde später eingeführt und erst 1995 von Tushar Chande erfunden. Der Autor erfand auch den Chande Momentum Oscillator (CMO) und den Intraday Momentum Index (IMI). Je mehr Leute einen technischen Indikator kennen und verwenden, desto geringer ist seine Fähigkeit, Geld zu verdienen. Der relativ neue Aroon-Indikator ist genau das Gegenteil. Aus dieser Perspektive ist er eine gute Wahl.
Der Aroon-Indikator hilft Händlern, Änderungen in der relativen Position von Preisbewegungen und Trendbereichen vorherzusagen, indem er die Anzahl der Kerzen zwischen der aktuellen Kerze und den vorherigen Höchst- und Niedrigstpreisen berechnet. Es besteht aus zwei Teilen, nämlich AroonUp und AroonDown. Diese beiden Linien bewegen sich zwischen 0 und 100 auf und ab. Obwohl sie als obere Linie und untere Linie bezeichnet werden, sind sie nicht dasselbe wie die obere Linie und die untere Linie Im Gegensatz zum BOLL-Indikator verfügt er nicht über eine echte obere und untere Linie. Die folgende Abbildung ist der Aroon-Indikator:

Beim Aroon-Indikator müssen Sie zunächst einen Zeitraumparameter festlegen, genau wie beim Festlegen des gleitenden Durchschnittszeitraumparameters. In herkömmlicher Marktsoftware beträgt diese Periodennummer 14. Natürlich ist dieser Periodenparameter nicht festgelegt. Sie können ihn auch auf 10 setzen. oder 50 usw. warten. Zum besseren Verständnis definieren wir diesen Zeitraumparameter wie folgt: N. Nachdem wir N bestimmt haben, können wir AroonUp und AroonDown berechnen. Die spezifische Berechnungsformel lautet wie folgt:
Anhand dieser Formel können wir grob die Idee des Aroon-Indikators erkennen. Das heißt: Wie viele Zyklen hat der Preis unter dem jüngsten Hoch/Tief gelegen, was dabei hilft, vorherzusagen, ob sich der aktuelle Trend fortsetzt, und die Stärke des aktuellen Trends misst. Wenn wir diesen Indikator kategorisieren, handelt es sich offensichtlich um einen Trendfolgeindikator. Anders als bei anderen Trendfolgeindikatoren wird hier jedoch mehr Wert auf die Zeit als auf den Preis gelegt.
AroonUp und AroonDown geben die Distanz zwischen der aktuellen Zeit und dem vorherigen Höchst- oder Tiefstpreis wieder. Wenn die Zeit näher ist, ist der Wert größer, und wenn die Zeit weiter ist, ist der Wert kleiner. Und wenn sich die beiden Linien kreuzen, deutet dies darauf hin, dass sich die Preisrichtung ändern kann. Wenn AroonUp über AroonDown liegt, bedeutet dies, dass der Preis einen Aufwärtstrend aufweist und in Zukunft weiter steigen kann; wenn AroonDown über AroonUp liegt, bedeutet dies dass der Preis einen Abwärtstrend aufweist und in Zukunft weiter steigen könnte. Er könnte weiter fallen.
Gleichzeitig können wir auch mehrere feste Werte festlegen, um den Eintrittszeitpunkt genau zu bestimmen. Wir wissen, dass der Aroon-Indikator immer zwischen 0 und 100 läuft. Wenn sich der Markt also in einem Aufwärtstrend befindet, d. h. wenn AroonUp über AroonDown liegt, wenn AroonUp größer als 50 ist, bedeutet dies, dass sich der Aufwärtstrend des Marktes gebildet hat und der Preis kann in Zukunft weiter steigen. Wenn AroonUp unter 50 fällt, bedeutet dies, dass die Dynamik des Preisanstiegs nachlässt und der Preis in Zukunft schwanken und fallen kann.
Im Gegenteil, wenn der Markt einen Abwärtstrend aufweist, das heißt, wenn AroonDown über AroonUp liegt oder AroonDown größer als 50 ist, bedeutet dies, dass sich ein Abwärtstrend auf dem Markt gebildet hat und der Preis in Zukunft weiter fallen kann. Wenn AroonDown unter 50 fällt, bedeutet dies, dass die Dynamik des Preisrückgangs nachlässt. Die Preise können in Zukunft schwanken und steigen. Dann können wir gemäß den beiden oben genannten Theorien die Kauf- und Verkaufsbedingungen wie folgt auflisten:
Nachdem wir die Handelslogik geklärt haben, können wir sie mit Code implementieren. In diesem Artikel verwenden wir weiterhin die JavaScript-Sprache und das Produkt ist immer noch Rohstoff-Futures. Freunde mit guten praktischen Fähigkeiten können den Code auch in die Python-Sprache oder digitale Währung übersetzen. OK, ohne weitere Umschweife öffnen Sie: fmz.com > Anmelden > Control Center > Richtlinienbibliothek > Neue Richtlinie, beginnen Sie mit dem Schreiben der Richtlinie und achten Sie auf die Kommentare im folgenden Code.
Schritt 1: Verwenden Sie ein CTA-Framework
Beachten! Klicken Sie unbedingt auf Folgendes:商品期货交易类库. Wenn Sie zur digitalen Währung wechseln, klicken Sie auf:数字货币现货交易类库。
function main() {
// ZC000/ZC888 指用指数做为行情源但交易映射到主力连续合约上
$.CTA("ZC000/ZC888", function(st) {
})
}
Schritt 2: Daten abrufen
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // 获取K线数组
var mp = st.position.amount; // 获取持仓数量
})
}
Schritt 3: Berechnen Sie den Aroon-Indikator
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // 获取K线数组
var mp = st.position.amount; // 获取持仓数量
if (r.length < 21) { // 判断K线数据是否足够
return;
}
var aroon = talib.AROON(r, 20); // 阿隆指标
var aroonUp = aroon[1][aroon[1].length - 2]; // 阿隆指标上线倒数第2根数据
var aroonDown = aroon[0][aroon[0].length - 2]; // 阿隆指标下线倒数第2根数据
})
}
Schritt 4: Handelskonditionen berechnen und Order erteilen
function main() {
$.CTA("ZC000/ZC888", function(st) {
var r = st.records; // 获取K线数组
var mp = st.position.amount; // 获取持仓数量
if (r.length < 21) { // 判断K线数据是否足够
return;
}
var aroon = talib.AROON(r, 20); // 阿隆指标
var aroonUp = aroon[1][aroon[1].length - 2]; // 阿隆指标上线倒数第2根数据
var aroonDown = aroon[0][aroon[0].length - 2]; // 阿隆指标下线倒数第2根数据
if (mp == 0 && aroonUp > aroonDown && aroonUp > 50) {
return 1; // 多头开仓
}
if (mp == 0 && aroonDown > aroonUp && aroonDown > 50) {
return -1; // 空头开仓
}
if (mp > 0 && (aroonUp < aroonDown || aroonUp < 50)) {
return -1; // 多头平台
}
if (mp < 0 && (aroonDown < aroonUp || aroonDown < 50)) {
return 1; // 空头平台
}
})
}
// 以上代码就是基于JavaScript语言完整的策略。
// --------------------分割线--------------------
// 为了照顾伸手党,顺便也把这个策略翻译成My语言。同时该也可以用于数字货币,以下是完整的策略代码:
AROONUP := ((N - HHVBARS(H, N)) / N) * 100; // 阿隆指标上线
AROONDOWN := ((N - LLVBARS(L, N)) / N) * 100; // 阿隆指标下线
AROONUP > AROONDOWN && AROONUP > BKV, BK; // 多头开仓
AROONDOWN > AROONUP && AROONDOWN > SKV, SK; // 空头开仓
AROONUP < AROONDOWN || AROONUP < SPV, SP; // 多头平台
AROONDOWN < AROONUP || AROONDOWN < BPV, BP; // 空头平台
AUTOFILTER;
Um näher an der realen Handelsumgebung zu sein, verwenden wir 2 Sprünge zum Öffnen und Schließen von Positionen und das 2-fache der Bearbeitungsgebühr für Stresstests beim Backtesting. Die Testumgebung ist wie folgt:
Testumgebung
Umsatzdetails
Finanzierungskurve
Aus den obigen Backtest-Ergebnissen können wir ersehen, dass die Strategie gut funktioniert, wenn der Markttrend gleichmäßig ist. Unabhängig davon, ob der Markt steigt oder fällt, kann der Aroon-Indikator den Markt vollständig verfolgen. Auch die Kapitalkurve zeigt insgesamt tendenziell nach oben, es kam zu keinem nennenswerten Rückgang. Dennoch kam es in dem volatilen Markt, insbesondere dem kontinuierlich volatilen Markt, zu lokalen Rückschlägen.
In der Strategie haben wir einige Parameter festgelegt, wie z. B.: aroonUp oder aroonDown ist größer oder kleiner als 50, was die Verzögerung der Strategie verursacht. In vielen Fällen wird der Markt für einen Zeitraum vor der Eröffnung steigen oder fallen und Positionen schließen. Dadurch erhöht sich zwar die Gewinnquote und die maximale Drawdown-Rate sinkt, jedoch entgehen dadurch auch viele Gewinne, was ebenfalls den Grundsatz bestätigt, dass Gewinne und Verluste die gleiche Quelle haben. Interessierte Freunde können es eingehend studieren und Verbesserungen vornehmen.