Stratégie de l'indicateur PB de croisement des bandes de Bollinger


Date de création: 2024-01-17 17:10:53 Dernière modification: 2024-01-17 17:10:53
Copier: 0 Nombre de clics: 661
1
Suivre
1617
Abonnés

Stratégie de l’indicateur PB de croisement des bandes de Bollinger

Aperçu

La stratégie consiste à calculer la relation entre le PB moyen et le Brin en descente et à déterminer la corrélation entre le PB moyen et le Brin en descente, générant des signaux d’achat et de vente. Un signal d’achat est généré lorsque l’indicateur PB monte en haut et franchit le milieu de la Brin ou en descente; un signal de vente est généré lorsque l’indicateur PB descend et franchit le milieu de la Brin ou en descente.

Principe de stratégie

L’indicateur central de la stratégie est l’indicateur moyen de PB. L’indicateur moyen de PB combine la stabilité du système de moyenne et la sensibilité de l’indicateur de PB, qui utilise les différences de deux moyennes périodiques différentes pour exprimer rapidement et lentement la tendance des changements de prix, afin de déterminer si la situation est trop vide.

Cette stratégie utilise également l’indicateur de la ceinture de Brin pour déterminer les sur-achats et les sur-vente du prix des actions. L’indicateur de la ceinture de Brin est composé de trois courbes: la voie médiane, la voie supérieure et la voie inférieure. La voie médiane est la moyenne mobile de n jours; la voie supérieure et la voie inférieure sont calculées à partir de la voie médiane et des fluctuations historiques.

En résumé, cette stratégie utilise habilement l’indicateur moyen PB pour déterminer la tendance des cours à la hausse et à la baisse, et est complétée par l’indicateur de la ceinture de Brin pour juger de la situation de survente et de survente, et de trouver des points d’achat et de vente dans la relation d’indicateur combinée entre les deux. C’est une stratégie de trading d’indicateur numérique typique.

Analyse des avantages

Les principaux avantages de cette stratégie sont les suivants:

  1. La valeur moyenne du PIB est utilisée pour déterminer les variations de tendance des cours des actions, avec une sensibilité élevée.
  2. Identification des zones de survente avec l’indicateur de la ceinture de Brin pour améliorer la précision de la détermination des points de vente et de vente
  3. Les stratégies sont simples et faciles à mettre en œuvre
  4. Les données de suivi montrent que les gains stratégiques sont considérables

Analyse des risques

Les principaux risques de cette stratégie sont les suivants:

  1. L’indicateur moyen PB et l’indicateur des bandes de Brin s’appuient sur des calculs de données historiques et sont sujets à des signaux erronés lorsque les cours des actions fluctuent fortement.
  2. L’indicateur PB et la bande de Brin sont sensibles à la configuration des paramètres, et une configuration incorrecte peut entraîner des transactions trop erronées.
  3. Pendant la période de mise en œuvre de la stratégie, les changements de l’environnement macroéconomique peuvent avoir un impact majeur sur les cours boursiers, tels que la crise économique, les changements de politique, etc., ce qui peut entraîner l’échec de la stratégie

Pour les risques susmentionnés, il est possible d’éviter les risques en réglant des paramètres d’optimisation, en éliminant les pertes, en tenant compte des facteurs environnementaux et en surveillant manuellement.

Direction d’optimisation

Les axes d’optimisation de cette stratégie sont:

  1. Optimiser les paramètres de l’indicateur PB moyen et de la bande de Bryn pour trouver la meilleure combinaison de paramètres
  2. Ajout de filtres sur d’autres indicateurs, tels que MACD, KDJ, etc., pour améliorer l’efficacité de la stratégie
  3. Augmentation des mécanismes de prévention des pertes et contrôle efficace des pertes individuelles
  4. Combinez les indicateurs du cycle de temps plus large pour déterminer la direction générale et éviter les transactions à contre-courant

Résumer

La stratégie fonctionne bien dans l’ensemble, avec des indicateurs PB de valeur moyenne au cœur, en plus de la bande de Bryn pour déterminer le point d’achat et de vente. L’opération est simple, la sensibilité est élevée et le rendement de la rétro-évaluation est bon.

Code source de la stratégie
/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("BandPass EOS", overlay=false, initial_capital = 1000)

src = input(close, "Source", input.source)
Period1 = input(41, "Fast Period", input.integer)
Period2 = input(54, "Slow Period", input.integer)
showBG = input(false, "Show crosses on background?", input.bool)
UseReversalStop = input(true, "Use additional triggers?", input.bool)

//Super Passband Filter
a1 = 0.0
a2 = 0.0
PB = 0.0
RMS = 0.0
if bar_index > Period1
    a1 := 5 / Period1
    a2 := 5 / Period2
    PB := (a1 - a2) * src + (a2 * (1 - a1) - a1 * (1 - a2)) * src[1] + 
       (1 - a1 + 1 - a2) * nz(PB[1]) - (1 - a1) * (1 - a2) * nz(PB[2])
    for i = 0 to 49 by 1
        RMS := RMS + PB[i] * PB[i]
        RMS
    RMS := sqrt(RMS / 40)
    RMS
z = 0

buy = PB > PB [5] and crossover(PB, -RMS) or PB > PB [5] and crossover (PB, RMS) or PB > PB [5] and crossover (PB, z)
sell = PB < PB [5] and crossunder(PB, RMS) or PB < PB [5] and crossunder (PB, -RMS) or PB < PB [5] and crossunder (PB, z)
signal = buy ? 1 : sell ? -1 : 0
bg = buy ? color.green : sell ? color.red : color.white
bg := showBG ? bg : na
upperFill = PB>RMS ? color.lime : na
lowerFill = PB<-RMS ? color.red : na

p1 = plot(PB,"PB",color.red)
p2 = plot(RMS,"+RMS",color.blue)
p3 = plot(-RMS,"-RMS",color.blue)
bgcolor(bg)
fill(p1,p2,upperFill)
fill(p1,p3,lowerFill)
hline(0)



//PERIOD
testStartYear = input(2018, "Backtest Start Year") 
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay, 0, 0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay, 0, 0)

testPeriod() => true
    
lcolor = PB > PB [5] and crossover(PB, -RMS) or PB > PB [5] and crossover (PB, RMS) or PB > PB [5] and crossover (PB, z)
scolor = PB < PB [5] and crossunder(PB, RMS) or PB < PB [5] and crossunder (PB, -RMS) or PB < PB [5] and crossunder (PB, z)

c1 = (PB < PB [5] and crossunder(PB, RMS) or PB < PB [5] and crossunder (PB, -RMS) or PB < PB [5] and crossunder (PB, z))
c2 = (PB > PB [5] and crossover(PB, -RMS) or PB > PB [5] and crossover (PB, RMS) or PB > PB [5] and crossover (PB, z))

plot (c1 ? PB : na, style = plot.style_circles, color = color.red, linewidth = 3)
plot (c2 ? PB : na, style = plot.style_circles, color = color.green, linewidth = 3)

if (PB > PB [5] and crossover(PB, -RMS) or PB > PB [5] and crossover (PB, RMS) or PB > PB [5] and crossover (PB, z))
    strategy.entry("long", strategy.long, when = testPeriod())


if (PB < PB [5] and crossunder(PB, RMS) or PB < PB [5] and crossunder (PB, -RMS) or PB < PB [5] and crossunder (PB, z))
    strategy.entry("short", strategy.short, when = testPeriod())