Stratégie de quantification de la tendance suivie avec l'aide de plusieurs indicateurs technologiques


La date de création: Je vous en prie. La dernière modification: Je vous en prie.
Je suis désolée. 0 est 0. Le nombre de clics: 283
1
Attention
1105
Les personnes concernées

多重技术指标配合的趋势追踪型量化策略

Résumé

Cette stratégie permet de réaliser des opérations de traçage à long terme d'actifs tels que les crypto-monnaies en combinant plusieurs indicateurs techniques tels que les bandes bleues, les oscillateurs aléatoires et les indices de force et de faiblesse relatives pour définir les signaux d'achat et de vente.

Les principes stratégiques

La stratégie définit d'abord les paramètres de calcul des indicateurs tels que la courbe de Bryn, les oscillateurs aléatoires et le RSI. Elle définit ensuite les conditions du signal d'achat comme suit: prix de clôture inférieur à la courbe de la courbe de Bryn, ligne K inférieure à 20 et supérieure à la ligne D, RSI inférieure à 30. Longing est effectué lorsque ces trois conditions sont remplies simultanément.

Analyse des avantages

Cette stratégie combine plusieurs indicateurs pour juger de l'état du marché, afin d'éviter les erreurs causées par un seul indicateur. La courbe de browning détermine si vous êtes en surbaisse, l'oscillateur aléatoire détermine si vous êtes en survente et le RSI détermine si vous êtes en sur-oversold. Plusieurs indicateurs fonctionnent ensemble pour identifier efficacement les bas de marché et le faire avec plus de précision.

L'analyse des risques

La stratégie repose sur l'optimisation des paramètres, qui ne permettent pas de reconnaître correctement les bas et les sommets s'ils ne sont pas configurés correctement. En outre, il peut y avoir une mauvaise combinaison entre les indicateurs. Par exemple, les bandes de Brynck identifient les dépassements, mais les autres indicateurs ne répondent pas aux conditions correspondantes. Ces situations peuvent entraîner des pertes inutiles.

Optimisation

  1. Les paramètres de l'indicateur sont testés et optimisés pour trouver la meilleure combinaison de paramètres.

  2. Augmentation des contrôles de retrait maximal et suspension des transactions lorsque le seuil est atteint.

  3. Ajouter un module de gestion des positions, afin d'ajuster dynamiquement les positions en fonction des conditions du marché.

  4. Ajouter une stratégie de stop-loss. Lorsque la direction du marché est erronée, définir un point de stop-loss raisonnable et contrôler les pertes individuelles.

Résumé

L'idée générale de la stratégie est claire, elle est capable de saisir les sommets des basses vallées à travers plusieurs indicateurs. Mais certains paramètres et modules ont encore une marge d'optimisation et, lorsqu'ils sont correctement ajustés, peuvent constituer une stratégie quantitative avec des gains stables.

Le code source de la stratégie
                
                    /*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Stratégie d'Entrée et de Sortie Longue", overlay=true)

// Paramètres des indicateurs
longueurBollinger = 20
stdDevBollinger = 2
longueurStochastic = 14
smoothK = 3
smoothD = 3
longueurRSI = 14

// Bollinger Bands
basis = ta.sma(close, longueurBollinger)
dev = ta.stdev(close, longueurBollinger)
lowerBand = basis - stdDevBollinger * dev

// Stochastic Oscillator
k = ta.sma(ta.stoch(close, high, low, longueurStochastic), smoothK)
d = ta.sma(k, smoothD)

// RSI
rsi = ta.rsi(close, longueurRSI)

// Logique des autres indicateurs (à compléter)

// Conditions d'entrée (à définir)
conditionBollinger = close < lowerBand
conditionStochastic = k < 20 and k > d
conditionRSI = rsi < 30
// Autres conditions (Braid Filter, VolumeBIS, Price Density...)

conditionEntree = conditionBollinger and conditionStochastic and conditionRSI // et autres conditions

// Exécution du trade (entrée)
if (conditionEntree)
    strategy.entry("Long Position", strategy.long)

// Conditions de sortie
stochCrossOver70 = k > 70 and k[1] <= 70

// Simplification de la détection de divergence baissière
// (Cette méthode est basique et devrait être raffinée pour une analyse précise)
highsRising = high > high[1]
lowsRising = low > low[1]
rsiFalling = rsi < rsi[1]
divergenceBearish = highsRising and lowsRising and rsiFalling

// Clôturer la moitié de la position
if (stochCrossOver70 and divergenceBearish)
    strategy.close("Long Position", qty_percent = 50)

                
            
En savoir plus