Sett deg på ventelisten
Strategier / Trend / Bollinger Trend Catcher

Bollinger Trend Catcher: én pullback-inngang per trend

Når hele det nedre eksponentielle båndet ligger over 200 SMA, er trenden opp, og strategien kjøper den første lukningen på eller under 20 SMA. Den tar bare én long per opptrend, og shorts speiler logikken. Et equity-kurvefilter setter inngangene på pause når strategien ligger under sitt eget 250-bars gjennomsnitt.

TrendLong & shortIntradayGull10 min
n/aProfit factor
432Nettogevinst EUR
46.55%Treffprosent
696Handler
-387Max drawdown
0.62Gj.sn. handel

Beste kjøring av 6. Gold, 10 min, spread 0.6, fra kjøring sweeps:2026-09-23-GOLD-10m-opt.tsv:4.

Inngangsregler, long

  1. Prisen lukker på eller under 20-periodes SMA
  2. Ingen long er tatt ennå i denne opptrenden
  3. Strategiens equity er på eller over sitt 250-bars gjennomsnitt (hoppes over i løpet av de første 250 barene)
  4. Ingen posisjon er åpen

Inngangsregler, short

  1. Prisen lukker på eller over 20-periodes SMA
  2. Ingen short er tatt ennå i denne nedtrenden
  3. Strategiens equity er på eller over sitt 250-bars gjennomsnitt (hoppes over i løpet av de første 250 barene)
  4. Ingen posisjon er åpen

Utgangsregler

  1. Stop loss på 40 i kontovaluta
  2. Gevinstmål på 130 i kontovaluta
  3. Shorts speiler dette

Testbetingelser

PeriodeFrem til 2026-09-23
InstrumentGold, 10 minutter
Spread0.6 poeng
Kontrakter1
Startkapital1,000,000
KostnaderKun spread. Kommisjoner og overnattfinansiering er ikke inkludert.
BarerOpptil 200,000 barer, færre der instrumentet har kortere historikk
Sist testet2026-09-23
Parametere (11)
positionSize
Kontrakter per handel
1
startCapital
Start-equity som equity-kurvefilteret bruker
10000
equityCurvePeriod
SMA-lengde for equity-kurven
250
fastPeriod
SMA-lengde for inngang og endelig utgang
20
midPeriod
SMA-lengde som aktiverer utgangen
50
trendPeriod
Lengde på trend-SMA
200
bandPeriod
Lengde på de eksponentielle log-prisbåndene
42
bandWidth
Båndbredde i standardavvik
2.4
seedPeriod
SMA-lengde som gir båndene startverdier på de første barene
3
stopLossMoney
Beskyttende stopp i kontovaluta
40
takeProfitMoney
Gevinstmål i kontovaluta
130

Hver kjøring

Markeder og tidsrammer som er testet

MarkedTidsrammePFHandlerTreff %NettoMax DD
GullBeste kjøring10 minn/a 69646.55432 EUR-387
EUR/USDDaglign/a 5242.311,660 USD-240
FTSE 1004 timern/a 9641.67762 EUR-362
S&P 500Daglign/a 5446.30593 EUR-223
Nasdaq 1004 timern/a 11843.22462 EUR-424
FTSE 100Daglign/a 3732.43434 EUR-344

Diagrammer

Resultater per kjøring

NettogevinstMax drawdown

Koden

ProBuilder, omskrevet til husstandard

// ============================================================
// Bollinger Trend Catcher
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Trend
// Direction: Long & short
// Timeframe tested: 10 minutes
// ============================================================

// --- Settings ---
DEFPARAM CumulateOrders = false

// --- Parameters ---
positionSize = 1          // contracts per trade
startCapital = 10000      // starting equity for the equity curve filter
equityCurvePeriod = 250   // SMA length of the equity curve
fastPeriod = 20           // entry and final exit average
midPeriod = 50            // average that arms the exit
trendPeriod = 200         // trend average the bands are compared with
bandPeriod = 42           // length of the log-price exponential bands
bandWidth = 2.4           // band width in standard deviations
seedPeriod = 3            // SMA used to seed the bands on early bars
stopLossMoney = 40        // protective stop in account currency
takeProfitMoney = 130     // profit target in account currency

// State: one trade per trend, and a staged exit.
ONCE longTrendUsed = 0
ONCE shortTrendUsed = 0
ONCE longExitStage = 0
ONCE shortExitStage = 0
ONCE logEma = 0
ONCE logVariance = 0

// --- Indicators ---
// Only trade while equity is at or above its own moving average.
equity = startCapital + StrategyProfit
equityCurve = Average[equityCurvePeriod, 0](equity)
equityOk = BarIndex < equityCurvePeriod OR (BarIndex > equityCurvePeriod AND equity >= equityCurve)

fastMA = Average[fastPeriod](close)
midMA = Average[midPeriod](close)
trendMA = Average[trendPeriod](close)

// Exponential bands on log price.
logPrice = LOG(CustomClose)
emaAlpha = 2 / (bandPeriod + 1)
IF BarIndex < bandPeriod THEN
  logEma = Average[seedPeriod](logPrice)
ELSE
  logEma = emaAlpha * logPrice + (1 - emaAlpha) * logEma
ENDIF
logError = logPrice - logEma
errorSquared = SQUARE(logError)
IF BarIndex < bandPeriod + 1 THEN
  logVariance = errorSquared
ELSE
  logVariance = emaAlpha * errorSquared + (1 - emaAlpha) * logVariance
ENDIF
logStdDev = SQRT(logVariance)
upperBand = EXP(logEma + (bandWidth * logStdDev))
lowerBand = EXP(logEma - (bandWidth * logStdDev))

44 flere linjer: inngangs- og utgangsreglene.

Oppsett

Slik laster du den inn

  1. Kopier koden med kopiknappen på kodeblokken.
  2. I ProRealTime åpner du et diagram for instrumentet og tidsrammen du vil teste, og åpner deretter ProOrder > New trading system og velger "Create with programming".
  3. Lim inn koden, gi systemet et navn og lagre det.
  4. Klikk "Backtest", angi din egen spread og position size, og kjør den før du vurderer å handle den live.

Indikatorer som brukes

Bollinger BandsSMA
Les dette førstKjente svakheter4 poeng
  • Det finnes bare sweep-data, så profit factor ble ikke registrert.
  • På den beste kjøringen (Gold 10 minutter) kom nettogevinsten på EUR 431.9 fra 696 handler, et gjennomsnitt på EUR 0.62 per handel, noe som gir svært lite rom for ekstra kostnader.
  • Max drawdown på den kjøringen var EUR 387.3, nær hele nettogevinsten.
  • Stoppen (40) og målet (130) er pengebeløp, så de betyr noe annet med ulik kontraktstørrelse og ulikt instrument.

Spørsmål

Om denne strategien

Kan den kjøres i ProOrder?

Ja, den er skrevet som et ProOrder-system. Koden er omskrevet og ennå ikke kompileringssjekket, så kjør en backtest før du går live.

Hvor ble den testet, og hvordan gjorde den det?

Gold, EUR/USD, FTSE 100, S&P 500 og Nasdaq 100. Alle de oppførte kjøringene ga en liten gevinst, den største var USD 1,660 på EUR/USD Daglig fra 52 handler.

Hvilken risiko følger med 1 kontrakt?

Med 1 kontrakt hadde den beste kjøringen en max drawdown på EUR 387.3. Hver handel risikerer pengestoppen på 40, før spread.

Hvorfor har daglige kjøringer så få handler?

Regelen om én handel per trend betyr at en ny long først kommer etter at båndet har falt under 200 SMA og hentet seg inn igjen. På dagsbarer skjer det sjelden, for eksempel 37 handler på FTSE 100 Daglig.

Relatert

Strategier som denne

Bollinger Squeeze

Bruker samme indikator.

14.30 PF · 86 handler

Triple Band Market Model

Beste kjøring på samme marked, Gold.

2.27 PF · 203 handler

Long-Term Moving Average Cross

Også en trendstrategi.

12.31 PF · 61 handler

Nysgjerrig på hvilke trendfiltre som holder best? Sett deg på ventelisten til ProRealAlgos og sammenlign erfaringer.

ProRealAlgos-fellesskapet får de fullstendige reglene, hele koden og den automatiserte porteføljen.

Tidligere backtest-resultater er ingen garanti for fremtidige resultater. Dette er ikke finansiell rådgivning. Kuratert og vedlikeholdt av ProRealAlgos. ProRealTime™ er et varemerke tilhørende ProRealTime SAS. prorealalgos.comStatistikkDokumentasjon