
La stratégie de croisement bi-médian est une stratégie classique de suivi de la tendance. Elle utilise des moyennes mobiles de deux périodes différentes pour capturer la tendance du marché, produisant des signaux de multiplication lorsque la moyenne rapide traverse la moyenne lente sur la moyenne rapide et des signaux de blanchiment lorsque la moyenne lente traverse la moyenne rapide sous la moyenne rapide. L’idée centrale de cette stratégie est que la moyenne rapide est plus sensible aux changements de prix et réagit plus rapidement aux changements de tendance du marché, tandis que la moyenne lente réagit à la tendance à long terme du marché.
Le code de la stratégie utilise deux moyennes mobiles, une moyenne rapide (la période 14 par défaut) et une moyenne lente (la période 28 par défaut). Les types de moyennes mobiles peuvent être choisis parmi les moyennes mobiles simples (SMA), les moyennes mobiles indicielles (EMA), les moyennes mobiles pondérées (WMA) et les moyennes mobiles relatives (RMA).
La logique principale de la stratégie est la suivante:
Grâce à cette logique, la stratégie peut suivre les principales tendances du marché, en tenant des positions à plusieurs têtes dans une tendance à la hausse, en tenant des positions à vide ou en attendant des positions à vide dans une tendance à la baisse. La période et le type de la ligne de parité peuvent être ajustés et optimisés en fonction des différents marchés et types de transactions.
Les mesures suivantes peuvent être prises pour contrer ces risques:
Ces optimisations permettent d’améliorer l’adaptabilité et la stabilité des stratégies et de mieux s’adapter aux différentes conditions du marché. Cependant, il convient de noter qu’une optimisation excessive peut entraîner une suradaptation des stratégies et une mauvaise performance dans le monde réel.
La stratégie de croisement bi-équilibré est une stratégie de suivi de tendance classique, qui génère un signal de négociation par la croisement de moyennes mobiles à deux périodes différentes. Sa logique est simple et facile à mettre en œuvre, elle s’applique aux marchés tendance. Cependant, dans les marchés instables, il peut y avoir des transactions fréquentes et des pertes continues.
/*backtest
start: 2024-02-09 00:00:00
end: 2024-03-10 00:00:00
period: 1h
basePeriod: 15m
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/
// © z4011
//@version=5
strategy("#2idagos", overlay=true, margin_long=100, margin_short=100)
allowShorting = input.bool(true, "Allow Shorting")
fastMALength = input.int(14, "Fast MA Length")
slowMALength = input.int(28, "Slow MA Length")
fastMAType = input.string("Simple", "Fast MA Type", ["Simple", "Exponential", "Weighted", "Relative"])
slowMAType = input.string("Simple", "Fast MA Type", ["Simple", "Exponential", "Weighted", "Relative"])
float fastMA = switch fastMAType
"Simple" => ta.sma(close, fastMALength)
"Exponential" => ta.ema(close, fastMALength)
"Weighted" => ta.wma(close, fastMALength)
"Relative" => ta.rma(close, fastMALength)
plot(fastMA, color = color.aqua, linewidth = 2)
float slowMA = switch slowMAType
"Simple" => ta.sma(close, slowMALength)
"Exponential" => ta.ema(close, slowMALength)
"Weighted" => ta.wma(close, slowMALength)
"Relative" => ta.rma(close, slowMALength)
plot(slowMA, color = color.blue, linewidth = 2)
longCondition = ta.crossover(fastMA, slowMA)
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = ta.crossunder(fastMA, slowMA) and allowShorting
if (shortCondition)
strategy.entry("Short", strategy.short)
closeCondition = ta.crossunder(fastMA, slowMA) and not allowShorting
if (closeCondition)
strategy.close("Long", "Close")