
Aperçu
La stratégie est basée sur la théorie des ondes d’Elyot et tente de détecter automatiquement les ondes de poussée. Elle définit les ondes de poussée ascendantes en trouvant 4 combinaisons de lignes K de hausse de clôture consécutives et de prix de clôture actuel supérieur au prix de clôture de 9 jours précédents; elle définit les ondes de poussée descendantes avec une logique inverse.
Principe de stratégie
- Définissez le nombre de cycles de hausse/baisse de clôture consclos ((par défaut 3) et le nombre de jours où le prix de clôture actuel est comparé au prix de clôture de N jours auparavant ((par défaut 9)).
- Utilisez les variables long_cc et short_cc pour enregistrer si la ligne K de la racine de conclusion la plus récente est positive/négative, si elle est continue, la valeur est de 1, sinon de 0.
- Comparez le prix de clôture actuel avec le prix de clôture du jour précédant le daysago, si le prix actuel est plus/moins long_daysago/short_daysago est vrai.
- La combinaison de long_cc, short_cc et long_daysago, short_daysago, donne le signal final pluriel long et short.
- Dessinez les triangles vert et rouge correspondant aux signaux long et short.
- Si un signal long apparaît et qu’il n’y a pas de positions de plus en plus grandes, ouvrez un plus et définissez le stop loss comme le point le plus bas de la ligne K du signal.
- Si un signal court apparaît et qu’il n’y a pas de position de tête vide en ce moment, ouvrez la position et définissez le stop loss comme le point le plus élevé du signal K.
Analyse des avantages
- Il est capable d’identifier automatiquement les pulsations dans la théorie des ondes d’Elliot, réduisant ainsi l’impact de l’analyse subjective.
- Les ondes de poussée sont souvent accompagnées d’une forte tendance, et cette tactique permet de s’en saisir.
- La position de stop-loss est alignée sur la tendance, ce qui augmente le taux de profit/perte.
- Il est possible de trouver des opportunités d’entrée potentielles avant le début de la tendance.
- Les paramètres sont réglables et adaptatifs.
Analyse des risques
- Il y a peut-être des failles dans l’interprétation de la théorie des vagues, ce qui conduit à des erreurs de jugement.
- La durée de la tendance est imprévisible, et il est possible que des points d’arrêt trop proches aient causé des pertes.
- Les échanges sur les marchés en crise peuvent être inefficaces et entraîner des transactions fréquentes.
- Le manque de prise en compte de la gestion des positions et de la gestion des fonds.
Direction d’optimisation
- Il est possible d’améliorer la précision des signaux en optimisant la configuration des paramètres consclos et daysago par rétro-analyse.
- Il est possible d’introduire des indicateurs de confirmation de tendance tels que le MACD pour réduire le bruit.
- Envisagez d’inclure un stop-loss mobile pour mieux protéger vos profits.
- Il est possible d’établir un petit nombre de positions lorsque la tendance n’est pas claire et d’augmenter les positions lorsque la tendance est claire.
- Contrôler les positions et les risques, par exemple en limitant le pourcentage de fonds pour une transaction, en fixant le maximum de retraits, etc.
Résumer
La stratégie est basée sur la théorie classique des vagues d’Elliot, capte les tendances fortes et présente un certain potentiel d’application et de profit. Cependant, la théorie des vagues elle-même, la définition des vagues de poussée, etc., peuvent affecter la performance de la stratégie.
Code source de la stratégie
/*backtest
start: 2023-04-20 00:00:00
end: 2024-04-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Smollet
//@version=5
strategy("LW: 4-9 indicator", overlay = true)
consclos = input.int(3, "Consecutive close")
daysago = input.int(9, "Days ago")
var int long_cc = 0
var int short_cc = 0
long_cc := 1
short_cc := 1
for i = 1 to consclos
long_cc := close[i-1] > close[i] ? long_cc*1 : long_cc*0
short_cc := close[i-1] < close[i] ? short_cc*1 : short_cc*0
long_daysago = close > close[daysago]
short_daysago = close < close[daysago]
long = long_cc ==1 and long_daysago
short = short_cc ==1 and short_daysago
plotshape(long, style=shape.triangleup, location=location.belowbar, color=color.green)
plotshape(short, style=shape.triangledown, location=location.abovebar, color=color.red)
//Strategy code
if long and strategy.position_size <= 0
strategy.entry("Long", strategy.long)
strategy.exit("Long SL", "Long", stop = low)
if short and strategy.position_size >= 0
strategy.entry("Short", strategy.short)
strategy.exit("Short SL", "Short", stop = high)