Cette stratégie est une stratégie de scalping Bitcoin basée sur des cycles de 5 minutes. Elle utilise des croisements de moyennes mobiles de 9 cycles et 15 cycles et la forme de la ligne K comme signaux de trading. Plus précisément, elle génère un signal d'achat lorsque la moyenne mobile rapide traverse la moyenne mobile lente vers le haut, et un signal d'achat lorsque la ligne K forme une courbe ou un rayon de soleil pur. Elle génère un signal de vente lorsque la moyenne mobile rapide traverse la moyenne mobile lente vers le bas.
La stratégie utilise deux moyennes mobiles de deux cycles différents pour déterminer la tendance. Les moyennes mobiles de 9 cycles sont plus sensibles et captent les tendances à court terme; les moyennes mobiles de 15 cycles sont plus stables et filtrent une partie du bruit.
En outre, cette stratégie est associée à un filtrage de la forme de la ligne K. Les signaux d'achat ne sont générés que lorsque des lignes K puissantes, telles que des bulles ou des rayons du soleil, se forment. Cela évite de générer des signaux de trading erronés lors de l'établissement.
Les signaux et les règles spécifiques sont les suivants:
Une tendance à court terme à la hausse est indiquée lorsque la moyenne mobile de 15 cycles traverse une moyenne mobile de 9 cycles et que l'angle de la moyenne mobile de 15 cycles est supérieur à 30 degrés.
Si la forme de la ligne K est une ligne de tête ou une ligne de soleil pure, ce qui indique une forte dynamique haussière, un signal d'achat est généré.
Lorsque la moyenne mobile de 9 cycles traverse la moyenne mobile de 15 cycles, indiquant que la tendance à court terme se transforme en baisse, un signal de vente est généré, sans qu'il soit nécessaire de juger de la forme de la ligne K.
Après l'entrée, un stop-loss de 0,5% et un stop-gap de 0,5% sont définis.
La stratégie présente les avantages suivants:
Le retrait est faible, les gains sont stables. Comme stratégie de scalping, un niveau de stop-loss plus faible est mis en place, une perte unique est limitée, et un retrait important n'est pas envisagé même en cas de retrait du marché.
Les signaux sont plus clairs. Les moyennes mobiles croisent la forme de la ligne K pour identifier les points tournants de la tendance et éviter les ruptures inefficaces.
Il est facile de réaliser des transactions automatiques. Les règles de la stratégie sont claires, les paramètres sont faciles à ajuster et conviennent aux transactions algorithmiques.
Convient pour les marchés à forte volatilité de Bitcoin. En tant que monnaie numérique, Bitcoin est très volatil et souvent ajusté à court terme.
La stratégie comporte également des risques:
Il est facile de générer plusieurs pertes mineures. Le marché du Bitcoin est à double tranchant, il est fortement probable que des pertes de stop soient déclenchées et que des pertes de stop consécutives se produisent.
Les paramètres doivent être constamment optimisés. Les paramètres des moyennes mobiles et les paramètres de freinage des stops doivent être ajustés en fonction du marché, sinon l'effet sera déprécié.
L'effet dépend de la tendance. Dans le cas d'un marché de mise en balance, cette stratégie peut entraîner des transactions fréquentes mais des gains et des pertes mineurs.
Augmenter le volume des commandes en une seule fois afin d'assurer un ratio de profit et de perte approprié;
Il est également possible de modifier les paramètres pour suivre les changements du marché.
Identifier l'état du marché et éviter les transactions non valides dans le bilan.
La stratégie peut également être optimisée dans les domaines suivants:
Améliorer les mécanismes d'adaptation de l'arrêt des pertes. Par exemple, suivre les moyennes mobiles, ajuster les arrêts en temps réel, modifier dynamiquement les objectifs de profit, etc.
Le RSI, par exemple, détermine les surachats, les survendues, l'augmentation du volume des transactions, etc.
Test des contrats de différentes variétés. Utilisez cette stratégie pour effectuer des transactions de scalping de variétés telles que le pétrole brut, les futures sur indices boursiers, etc.
L'optimisation des paramètres et l'optimisation de la réévaluation sont effectuées pour déterminer les meilleurs paramètres.
Dans l'ensemble, cette stratégie est une stratégie de scalping Bitcoin efficace. Elle est simple et facile à mettre en œuvre, elle est hautement configurable. Mais il faut aussi être vigilant sur les risques, contrôler raisonnablement les stops et les positions. De plus, il est possible d'optimiser la stratégie en fonction du marché et de sa situation pour obtenir de meilleurs résultats.
/*backtest start: 2024-01-29 00:00:00 end: 2024-02-28 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Moving Average Crossover Strategy with Candlestick Patterns", overlay=true) // Define input parameters fast_length = input(9, "Fast MA Length") slow_length = input(15, "Slow MA Length") stop_loss_percent = input(0.5, "Stop Loss (%)") target_percent = input(0.5, "Target (%)") angle_threshold = input(30, "Angle Threshold (degrees)") // Calculate moving averages fast_ma = sma(close, fast_length) slow_ma = sma(close, slow_length) // Define candlestick patterns is_pin_bar() => pin_bar = abs(open - close) > 2 * abs(open[1] - close[1]) high_tail = max(open, close) - high > abs(open - close) * 1.5 low_tail = low - min(open, close) > abs(open - close) * 1.5 pin_bar and high_tail and low_tail is_marubozu() => marubozu = abs(open - close) > abs(open[1] - close[1]) * 0.75 no_upper_shadow = high == max(open, close) no_lower_shadow = low == min(open, close) marubozu and no_upper_shadow and no_lower_shadow is_full_body() => full_body = abs(open - close) > abs(open[1] - close[1]) * 0.95 full_body // Plot moving averages plot(fast_ma, color=color.blue, title="Fast MA") plot(slow_ma, color=color.red, title="Slow MA") // Calculate angle of slow moving average ma_angle = abs(180 * (atan(slow_ma[1] - slow_ma) / 3.14159)) // Generate buy/sell signals based on angle condition and candlestick patterns buy_signal = crossover(fast_ma, slow_ma) and ma_angle >= angle_threshold and (is_pin_bar() or is_marubozu() or is_full_body()) sell_signal = crossunder(fast_ma, slow_ma) // Calculate stop-loss and target levels stop_loss_level = close * (1 - stop_loss_percent / 100) target_level = close * (1 + target_percent / 100) // Execute trades based on signals with stop-loss and target strategy.entry("Buy", strategy.long, when=buy_signal) strategy.exit("Exit", "Buy", stop=stop_loss_level, limit=target_level) // Plot buy/sell signals on chart (optional) plotshape(series=buy_signal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=sell_signal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small) // Plot angle line hline(angle_threshold, "Angle Threshold", color=color.black, linestyle=hline.style_dashed)