
Cette stratégie est une stratégie de négociation de courte ligne qui utilise les lignes bi-mesures pour juger du renversement du marché. Elle juge la relation de clôture des trois lignes K précédentes pour déterminer si la tendance est à la hausse ou à la baisse.
Cette stratégie consiste principalement à déterminer le rapport de prix de clôture des trois premières lignes K. Si les trois premières lignes K sont négatives, il est jugé qu’elles sont actuellement en tendance à la baisse; si les trois premières lignes K sont positives, il est jugé qu’elles sont actuellement en tendance à la hausse.
La logique de jugement de plus est la suivante: si les trois premières lignes de K sont négatives et que la dernière ligne de K est négative, faites plus. La logique de jugement de plage est la plage lorsque le prix atteint le point le plus élevé de la ligne de K précédente.
La logique de la courbe de vide est la suivante: si les trois premières lignes de K sont des lignes de soleil et que la dernière ligne de K est une ligne de soleil majeure, et que le prix est inférieur à la moyenne mobile simple. La logique de la courbe de vide est la courbe de vide lorsque le prix tombe au plus bas de la ligne de K précédente.
La longueur de la moyenne mobile et la taille de la largeur de la courbe sont des entrées personnalisées par l’utilisateur.
Utilisez la forme de la ligne K pour déterminer les points de retournement du marché, éviter de se rattraper dans la tendance et réduire les pertes.
Le filtrage des moyennes mobiles, combiné à des signaux de filtrage des moyennes mobiles, permet d’éviter les vides prématurés dans les lignes de but.
La logique de la stratégie est simple et claire, facile à comprendre et à modifier.
Les paramètres peuvent être personnalisés pour s’adapter à différentes variétés et périodes.
Dans certaines conditions, il est avantageux de saisir en temps opportun les opportunités d’ajustement à court terme.
Il est possible que le marché fasse une fausse inversion de trois grands courants consécutifs, ou de trois grands courants, au cours desquels l’entrée est enfermée. Des conditions de retour plus strictes peuvent être mises en place pour réduire ce risque.
Il est possible de régler un stop loss pour contrôler le risque.
Une mauvaise configuration des paramètres peut entraîner des entrées trop fréquentes ou des opportunités manquées. Les paramètres d’optimisation doivent être testés à plusieurs reprises.
Il est facile de se faire piéger en cas d’oscillation du disque.
L’utilisation d’indicateurs plus complexes associés à la rétroaction de la forme de la ligne K, tels que BOLL, MACD, etc., peut améliorer l’exactitude de la décision.
Combiner des indicateurs tels que le volume de transactions ou la volatilité avec la forme de la ligne K pour éviter les vides de volume.
Ajout d’une logique d’arrêt des pertes. Configuration d’un arrêt de points fixes ou d’un arrêt de suivi.
Optimiser les paramètres pour trouver la meilleure combinaison de paramètres.
Tester les données pour plus de variétés et de cycles afin de trouver les meilleurs environnements.
Cette stratégie est généralement une stratégie de courte ligne utilisant des indicateurs simples pour capturer les retournements de marché à court terme. Ses avantages sont la facilité d’intelligence, la clarté de la logique et la possibilité d’obtenir de bons résultats grâce à une certaine optimisation.
/*backtest
start: 2023-12-07 00:00:00
end: 2023-12-14 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © stormis
// Based on strategy by hackertrader (original idea by QuantpT)
//@version=5
strategy(title="Mean reversion", shorttitle="MeanRev", precision=16 , overlay=true)
moveLimit = input(70)
maLength = input(200)
ma = ta.sma(close, maLength)
downBar = open > close
isThreeDown = downBar and downBar[1] and downBar[2]
isThreeUp = not downBar and not downBar[1] and not downBar[2]
isBigMoveDown = ((open - close) / (0.001 + high - low)) > moveLimit / 100.0
isBigMoveUp = ((close - open) / (0.001 + high - low)) > moveLimit / 100.0
isLongBuy = isThreeDown and isBigMoveDown
isLongExit = close > high[1]
isShortBuy = isThreeUp and isBigMoveUp
isShortExit = close < low[1]
strategy.entry("Entry Long", strategy.long, when=isLongBuy)
strategy.close("Entry Long", when=isLongExit)
strategy.entry("Entry Short", strategy.short, when=close < ma and isShortBuy)
strategy.close("Entry Short", when=isShortExit)
plot(ma, color=color.gray)