avatar of 发明者量化-小小梦 发明者量化-小小梦
Suivre Messages privés
4
Suivre
1271
Abonnés

Application des indicateurs techniques Aroon au trading quantitatif

Créé le: 2019-06-29 14:42:04, Mis à jour le: 2024-12-24 20:18:07
comments   1
hits   3794

[TOC]

Application des indicateurs techniques Aroon au trading quantitatif

Introduction à l’indicateur Aroon

En analyse technique, Aroon est un indicateur technique très particulier. Le mot « Aroon » vient du sanskrit et signifie « aube ». Il n’est pas aussi connu que MA, MACD, KDJ. Il a été introduit plus tard et n’a été inventé qu’en 1995 par Tushar Chande. L’auteur a également inventé le Chande Momentum Oscillator (CMO) et l’Intraday Momentum Index (IMI). Si un indicateur technique est plus connu et utilisé, sa capacité à générer des bénéfices sera moindre. L’indicateur Aroon, relativement nouveau, est tout le contraire. De ce point de vue, c’est un bon choix.

Indicateur Aroon sur le graphique

L’indicateur Aroon aide les traders à prédire les changements dans la position relative des mouvements de prix et des zones de tendance en calculant le nombre de chandeliers entre le chandelier actuel et les prix les plus élevés et les plus bas précédents. Il se compose de deux parties, à savoir AroonUp et AroonDown. Ces deux lignes montent et descendent entre 0 et 100. Bien qu’elles soient nommées ligne supérieure et ligne inférieure, elles ne sont pas identiques. Contrairement à l’indicateur BOLL, il n’a pas de véritables lignes supérieures et inférieures. La figure suivante est l’indicateur Aroon : Application des indicateurs techniques Aroon au trading quantitatif

Méthode de calcul de l’indicateur Aroon

L’indicateur Aroon nécessite de définir d’abord un paramètre de période de temps, tout comme pour la définition du paramètre de période de moyenne mobile. Dans les logiciels de marché traditionnels, ce numéro de période est 14. Bien entendu, ce paramètre de période n’est pas fixe. Vous pouvez également le définir sur 10 ou 50, etc. attendez. Pour faciliter la compréhension, définissons ce paramètre de période comme : N. Après avoir déterminé N, nous pouvons calculer AroonUp et AroonDown. La formule de calcul spécifique est la suivante :

  • AroonUp =[ (paramètre de période défini - nombre de périodes après le prix le plus élevé) / période calculée] * 100
  • AroonDown =[ (paramètre de période défini - nombre de périodes après le prix le plus bas) / période calculée] * 100

À partir de cette formule, nous pouvons voir approximativement l’idée de l’indicateur Aroon. C’est-à-dire : combien de cycles le prix a été en dessous du récent haut/bas, ce qui permet de prédire si la tendance actuelle va se poursuivre et de mesurer la force de la tendance actuelle. Si nous catégorisons cet indicateur, il est évident qu’il appartient au type de suivi de tendance. Mais contrairement à d’autres indicateurs de suivi de tendance, il met davantage l’accent sur le temps plutôt que sur le prix.

Comment utiliser l’indicateur Aroon

AroonUp et AroonDown reflètent la distance entre l’heure actuelle et le prix le plus élevé ou le plus bas précédent. Si l’heure est plus proche, la valeur est plus grande, et si l’heure est plus éloignée, la valeur est plus petite. Et lorsque les deux lignes se croisent, cela indique que la direction du prix peut changer. Si AroonUp est au-dessus d’AroonDown, cela signifie que le prix est dans une tendance à la hausse et que le prix peut encore augmenter à l’avenir ; si AroonDown est au-dessus d’AroonUp, cela signifie que le prix est dans une tendance à la baisse et que le prix pourrait encore augmenter à l’avenir. Il pourrait encore baisser.

Dans le même temps, nous pouvons également définir plusieurs valeurs fixes pour déterminer avec précision le moment de l’entrée. Nous savons que l’indicateur Aroon évolue toujours entre 0 et 100. Ainsi, lorsque le marché est dans une tendance à la hausse, c’est-à-dire lorsque AroonUp est supérieur à AroonDown, lorsque AroonUp est supérieur à 50, cela signifie que la tendance à la hausse du marché s’est formée. et le prix pourrait continuer à augmenter à l’avenir. Lorsque AroonUp passe en dessous de 50, cela signifie que la dynamique de hausse des prix s’affaiblit et que le prix pourrait fluctuer et baisser à l’avenir.

Au contraire, lorsque le marché est dans une tendance à la baisse, c’est-à-dire lorsque AroonDown est supérieur à AroonUp, lorsque AroonDown est supérieur à 50, cela signifie que la tendance à la baisse du marché s’est formée et que le prix peut continuer à baisser à l’avenir ; Lorsque AroonDown passe en dessous de 50, cela signifie que la dynamique de baisse des prix s’affaiblit. Les prix peuvent fluctuer et augmenter à l’avenir. Ensuite, selon les deux théories ci-dessus, nous pouvons énumérer les conditions d’achat et de vente comme suit :

  • Lorsque AroonUp est supérieur à AroonDown et qu’AroonUp est supérieur à 50, une position longue est ouverte ;
  • Lorsque AroonUp est inférieur à AroonDown, ou qu’AroonUp est inférieur à 50, les positions longues sont fermées ;
  • Lorsque AroonDown est supérieur à AroonUp et qu’AroonDown est supérieur à 50, une position courte est ouverte ;
  • Lorsque AroonDown est inférieur à AroonUp, ou que AroonDown est inférieur à 50, la position courte est fermée ;

Construire une stratégie de trading basée sur l’indicateur Aroon

Après avoir clarifié la logique de trading, nous pouvons l’implémenter avec du code. Dans cet article, nous continuerons à utiliser le langage JavaScript, et le produit est toujours un contrat à terme sur matières premières. Les amis ayant de bonnes compétences pratiques peuvent également traduire le code en langage Python ou en monnaie numérique. OK, sans plus tarder, ouvrez : fmz.com > Connexion > Centre de contrôle > Bibliothèque de politiques > Nouvelle politique, commencez à écrire la politique et faites attention aux commentaires dans le code ci-dessous.

Étape 1 : Utiliser un framework CTA Avis! Assurez-vous de cliquer sur les éléments suivants :商品期货交易类库. Si vous passez à la monnaie numérique, cliquez sur :数字货币现货交易类库

function main() {
    // ZC000/ZC888 指用指数做为行情源但交易映射到主力连续合约上
    $.CTA("ZC000/ZC888", function(st) {

    })
}

Étape 2 : Récupérer les données

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
    })
}

Étape 3 : Calculer l’indicateur Aroon

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根数据
    })
}

Étape 4 : Calculez les conditions de trading et passez une commande

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;

Backtesting de stratégie

Afin d’être plus proche de l’environnement de trading réel, nous utilisons 2 sauts pour l’ouverture et la fermeture des positions et 2 fois les frais de traitement pour les tests de résistance lors du backtesting. L’environnement de test est le suivant :

  • Type de marché : Indice du charbon thermique
  • Variétés commerciales : charbon thermique principal
  • Période : 1er juin 2015 au 28 juin 2019
  • Cycle : Quotidien
  • Glissement : 2 sauts pour l’ouverture et la fermeture des positions
  • Frais de gestion : 2 fois le taux de change

Environnement de test Application des indicateurs techniques Aroon au trading quantitatif Détails des revenus Application des indicateurs techniques Aroon au trading quantitatif Courbe de financement Application des indicateurs techniques Aroon au trading quantitatif D’après les résultats du backtest ci-dessus, nous pouvons voir que la stratégie fonctionne bien lorsque la tendance du marché est régulière. Qu’elle soit à la hausse ou à la baisse, l’indicateur Aroon peut suivre entièrement le marché. La courbe des capitaux a également tendance à être globalement à la hausse, et il n’y a pas eu de repli significatif. Cependant, dans un marché volatil, en particulier dans un marché continuellement volatil, des replis locaux se sont produits.

Avantages et inconvénients de l’indicateur Aroon

  • Avantages : L’indicateur Aroon peut déterminer l’état de la tendance, en tenant compte de la capacité à découvrir les tendances du marché et à déterminer les fluctuations de prix, aidant ainsi les traders à améliorer le taux d’utilisation des fonds. Cet avantage est particulièrement important sur les marchés volatils.
  • Inconvénients : L’indicateur Aroon n’est qu’un des indicateurs de suivi de tendance et présente les mêmes inconvénients que les indicateurs de suivi de tendance. Et il ne détermine que le nombre de cycles du prix le plus élevé ou le plus bas dans le temps spécifié, mais parfois le prix le plus élevé ou le plus bas sera accidentel dans l’ensemble de la tendance du marché. Cette éventualité interférera avec l’indicateur Aroon lui-même et provoquera de faux signaux.

Cliquez pour copier le code source de la stratégie

Résumer

Dans la stratégie, nous avons fixé certains paramètres, tels que : aroonUp ou aroonDown est supérieur ou inférieur à 50, ce qui provoque le décalage de la stratégie. Dans de nombreux cas, le marché va monter ou descendre pendant un certain temps avant l’ouverture et positions de fermeture. Bien que cela augmente le taux de gain et réduise le taux de retrait maximum, cela manque également beaucoup de bénéfices, ce qui confirme également le principe selon lequel les bénéfices et les pertes ont la même source. Les amis intéressés peuvent l’étudier en profondeur et y apporter des améliorations.