La stratégie BB%B est une stratégie de négociation quantitative qui utilise le pourcentage de la valeur B de l’indicateur de la bande de Brin pour prendre des décisions d’investissement. Elle peut émettre des signaux d’achat ou de vente lorsque le prix est proche de la bande de Brin sur la voie ou en dessous de la voie.
La stratégie commence par calculer la moyenne des prix de clôture des jours de la période spécifiée, ainsi que l’écart-type, puis obtient les hauts et les bas de la ceinture de Brin. L’indicateur BB%B est le prix actuel moins le prix bas de la ceinture, puis le prix supérieur moins le prix bas de la ceinture, indiquant la position du prix actuel dans la ceinture de Brin.
Plus précisément, la stratégie commence par calculer la moyenne SMA du prix de clôture de 21 jours et le double écart-type pour que Brin prenne le relais. Ensuite, elle calcule la valeur BB%B du prix de clôture actuel. Si la valeur BB%B est inférieure à -0.2 ((configurable) et qu’il n’y a pas de position en cours, alors faites plus; si la valeur BB%B est supérieure à 1.2 ((configurable) et qu’il n’y a pas de position en cours, alors faites vide.
La stratégie repose sur l’indicateur BB%B pour déterminer si le prix actuel est trop élevé ou trop bas, et sur la direction de la tendance actuelle en se basant sur la ligne de parité. La fréquence de la stratégie peut être ajustée en configurant différents paramètres.
Les courbes de Brin en haut et en bas représentent respectivement un certain écart-type entre les prix actuels. Quand le prix est proche ou touche le haut, il représente un surachat, et quand il est proche ou touche le bas, il représente un survente. La stratégie BB%B tire pleinement parti de cette caractéristique pour déterminer les bons moments pour acheter et vendre.
Les seuils BB%B, les paramètres de la moyenne et les seuils de retour peuvent être librement configurés dans la stratégie, ce qui facilite la fréquence d’ajustement de la stratégie. L’utilisation d’une moyenne plus longue et d’un seuil de retour plus grand peut réduire la fréquence des transactions.
En plus de juger le sur-achat et le sur-vente de la chaîne de blocs, il est également possible de juger la grande tendance en combinant la courbe moyenne et d’éviter les transactions à l’opposé.
Lorsqu’un prix touche la bande de Brin pour la première fois, il est fort probable qu’il soit marqué comme un surachat ou une survente, mais il peut également s’agir d’une fausse rupture à court terme. Cette stratégie s’ajoute à une marge de reprise, qui ne se stabilise que si BB% B revient clairement dans la direction opposée, ce qui permet de filtrer les fausses signaux.
Cette stratégie se base sur l’indicateur des courbes de Brent pour évaluer la possibilité d’une reprise des cours, sans tenir compte des grandes tendances qui peuvent entraîner des pertes en cours de négociation.
Le seuil de régression est trop élevé, ce qui peut entraîner une perte d’opportunité et l’impossibilité de changer de direction en temps opportun après un renversement de tendance.
Lorsque la volatilité du marché augmente, l’écart entre les bornes monte et descend, les écarts de prix entre les points d’achat et de vente augmentent et le risque de perte individuelle augmente.
Les stratégies de longues lignes ont une fréquence de transaction plus élevée, entraînant des coûts de transaction plus élevés et des pertes de points de dérapage.
Il est possible d’ajouter des indicateurs de jugement de tendance tels que MACD, KDJ, etc. Le signal de négociation n’est émis que lorsque la direction de la tendance coïncide, évitant ainsi le trading à contre-courant.
Il est préférable de fixer un nombre ou un pourcentage de stop-loss pour contrôler le risque de perte individuelle et prévenir l’expansion des pertes.
Ajustez les paramètres tels que la longueur de la moyenne, le seuil BB% B et le seuil de régression pour trouver la combinaison optimale de paramètres afin de supprimer plus de bruit et d’améliorer la stabilité de la stratégie.
Adapter les paramètres de la stratégie en fonction des coûts de transaction des différentes variétés, réduire la fréquence des transactions et réduire les effets des coûts de transaction.
La stratégie BB%B est une stratégie de trading quantitatif simple et pratique. Elle utilise le moment où le prix peut être inversé dans la courbe de Brin, en fonction de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe de la courbe.
/*backtest
start: 2023-08-25 00:00:00
end: 2023-09-24 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
// strategy(title = "BB%B Strat", shorttitle = "BB%B Strat", format=format.price, precision=2, default_qty_type=strategy.percent_of_equity, default_qty_value=20)
length = input.int(21, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
ob = input.float(1.2, "Overbought Line", step=0.1)
ob_close = input.float(1.0, "Overbought Close", step=0.1)
os = input.float(-0.2, "Oversold Line", step=0.1)
os_close = input.float(0.2, "Oversold Close", step=0.1)
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
bbr = (src - lower)/(upper - lower)
p = plot(bbr, "Bollinger Bands %B", color=#26A69A)
ob_hline = hline(ob, "Overbought", color=color.red, linestyle=hline.style_dashed)
obc_hline = hline(ob_close, "Overbought Close", color=color.red, linestyle=hline.style_dashed)
os_hline = hline(os, "Oversold", color=color.green, linestyle=hline.style_dashed)
osc_hline = hline(os_close, "Oversold Close", color=color.green, linestyle=hline.style_dashed)
fill(ob_hline, obc_hline, color=color.new(color.red, 80), title="Overbought")
fill(os_hline, osc_hline, color=color.new(color.green, 80), title="Overbought")
bgcolor(bbr > ob ? color.new(color.fuchsia, 80) : (bbr < os ? color.new(color.lime, 80) : na))
if bbr < os and strategy.position_size == 0
strategy.entry("L", strategy.long)
if bbr >= os_close and strategy.position_size > 0
strategy.close_all()
if bbr > ob and strategy.position_size == 0
strategy.entry("S", strategy.short)
if bbr <= ob_close and strategy.position_size < 0
strategy.close_all()