Ställ dig i kön
Strategier / Momentum / Impulse Momentum

Impulse Momentum: köpa starka barer på hög volym

Impulse Momentum kombinerar 13-bars momentum med en 3-bars impulspoäng och köper när den signalen överstiger 0.7 och sitt eget 8-barsgenomsnitt. Volymen måste vara 1.2 gånger det normala, baren måste vara 1.8 gånger det senaste genomsnittliga spannet, och 9 SMA måste ligga över 21 SMA. Den går ur på en 1%-stop, när signalen mattas av, eller när priset stänger under 9 SMA.

MomentumEndast långSwingNasdaq 1001 timme
1.44Profit factor
4,958Nettovinst EUR
48.65%Träffsäkerhet
481Affärer
-1,182Max drawdown
10.31Snittaffär

Bästa körningen av 10. Nasdaq 100, 1 timme, spread 3, från körning pf:2026-09-24-NAS100-1h.tsv:2.

Entryregler, long

  1. Volymen är mer än 1.2 gånger sitt 21-barsgenomsnitt
  2. Den här barens spann är mer än 1.8 gånger det genomsnittliga spannet över 5 barer
  3. Uppgången från föregående högsta är större än nedgången från föregående lägsta
  4. 9-bars SMA ligger över 21-bars SMA

Exitregler

  1. Stop loss 1% under entry

Testvillkor

PeriodFram till 2026-09-25
InstrumentNasdaq 100, 1 timme
Spread3 punkter
Kontrakt1
Startkapital1,000,000
KostnaderEndast spread. Courtage och overnight-finansiering ingår inte.
BarerUpp till 200,000 barer, färre där instrumentet har kortare historik
Senast testad2026-09-25
Parametrar (14)
positionSize
Kontrakt per affär
1
momentumPeriod
Längd för prismomentum och normaliseringsfönster
13
volumePeriod
Längd för genomsnittlig volym
21
fastPeriod
Snabb SMA-längd
9
slowPeriod
Långsam SMA-längd
21
impulseBars
Barer i det korta impulsfönstret
3
powerPeriod
Längd på genomsnittligt barspann för impulsstyrka
5
momentumWeight
Vikt för normaliserat momentum i signalen
2
impulseWeight
Vikt för normaliserad impuls i signalen
3
signalPeriod
SMA-längd för signallinjen
8
signalLevel
Signalen måste ligga över detta för att köpa
0.7
minVolumeRatio
Volymen måste vara denna multipel av sitt 21-barsgenomsnitt
1.2
minImpulsePower
Barens spann måste vara denna multipel av sitt 5-barsgenomsnitt
1.8
stopLossPct
Skyddande stop, procent av entrypris
1

Varje körning

Testade marknader och tidsramar

MarknadTidsramPFAffärerTräff %NettoMax DD
Nasdaq 100Bästa körning1 timme1.44 48148.654,958 EUR-1,182
USD/JPY1 timmen/a 83942.55144,730 JPY-56,450
USD/JPY10 minn/a 97540.2146,450 JPY-40,770
Silver3 minn/a 77336.743,975 USD-2,757
Nikkei 225Dagn/a 2245.453,294 USD-1,928
Silver2 minn/a 81233.252,654 USD-2,639
Nasdaq 1004 timmarn/a 28253.192,145 EUR-1,341
DAX 404 timmarn/a 21549.301,078 EUR-821
Guld4 timmarn/a 34541.74321 EUR-185
GuldDagn/a 4339.53164 EUR-156

Diagram

Resultat per körning

NettovinstMax drawdown

Koden

ProBuilder, omskriven till husstandard

// ============================================================
// Impulse Momentum
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Momentum
// Direction: Long only
// Timeframe tested: 1 hour
// ============================================================

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

// --- Parameters ---
positionSize = 1             // contracts per trade
momentumPeriod = 13          // price momentum length and normalising window
volumePeriod = 21            // average volume length
fastPeriod = 9               // fast SMA length
slowPeriod = 21              // slow SMA length
impulseBars = 3              // bars in the short impulse window
powerPeriod = 5              // average bar range length for impulse power
momentumWeight = 2           // weight of normalised momentum in the signal
impulseWeight = 3            // weight of normalised impulse in the signal
signalPeriod = 8             // SMA of the signal line
signalLevel = 0.7            // signal must be above this to buy
minVolumeRatio = 1.2         // volume must be this multiple of its average
minImpulsePower = 1.8        // bar range must be this multiple of its average
stopLossPct = 1              // protective stop, percent of entry price

ONCE inTrade = 0

// --- Indicators ---
fastMA = Average[fastPeriod](close)
slowMA = Average[slowPeriod](close)

priceMomentum = (close - close[momentumPeriod]) / close[momentumPeriod] * 100

// Directional movement: only count up moves that beat down moves.
upMove = high - high[1]
IF upMove <= 0 THEN
  upMove = 0
ENDIF

downMove = low[1] - low
IF downMove <= 0 THEN
  downMove = 0
ENDIF

upMoveDominant = 0
IF upMove > downMove AND upMove > 0 THEN
  upMoveDominant = 1
ENDIF

volumeRatio = Volume / Average[volumePeriod](Volume)

impulseUp = (close - close[impulseBars]) / (Highest[impulseBars](high) - Lowest[impulseBars](low)) * 100
impulsePower = (high - low) / Average[powerPeriod](high - low)

// Scale momentum and impulse to 0..1 over the recent window, then blend them.
normMomentum = (priceMomentum - Lowest[momentumPeriod](priceMomentum)) / (Highest[momentumPeriod](priceMomentum) - Lowest[momentumPeriod](priceMomentum))
normImpulse = (impulseUp - Lowest[momentumPeriod](impulseUp)) / (Highest[momentumPeriod](impulseUp) - Lowest[momentumPeriod](impulseUp))

signalLine = (normMomentum * momentumWeight + normImpulse * impulseWeight) / (momentumWeight + impulseWeight)
signalMA = Average[signalPeriod](signalLine)

19 rader till: entry- och exitreglerna.

Uppsättning

Så laddar du in den

  1. Kopiera koden med kopieringsknappen på kodblocket.
  2. I ProRealTime, öppna ett diagram för det instrument och den tidsram du vill testa, öppna sedan ProOrder > Nytt handelssystem och välj "Skapa med programmering".
  3. Klistra in koden, ge systemet ett namn och spara det.
  4. Klicka på "Backtest", ange din egen spread och position size, och kör den innan du överväger att handla den live.

Använda indikatorer

SMAMomentumVolym
Läs det här förstKända svagheter4 punkter
  • Efter en stop-out öppnas ingen ny affär förrän det normala exitvillkoret har utlösts en gång, så vissa giltiga signaler hoppas över.
  • Edgen i den bästa körningen är måttlig: profit factor 1.44 med 48.65% träffsäkerhet på Nasdaq 100 1 timme.
  • Vissa körningar är små urval, som 22 affärer på Nikkei 225 Dag och 43 på Gold Dag.
  • Endast lång, och de extra marknaderna har bara sweepdata utan registrerad profit factor.

Frågor

Om den här strategin

Går den att automatisera i ProOrder?

Ja. Alla fem entryfilter, signalexiten och 1%-stoppen är kodade. Den omskrivna koden har ännu inte kompileringskontrollerats.

Vilka instrument handlade den?

Den framhävda körningen på Nasdaq 100 1 timme gav 4,958.30 EUR över 481 affärer. Alla 9 övriga körningar var positiva, bland annat USD/JPY 1 timme på 144,730 JPY och DAX 40 4 timmar på 1,077.90 EUR.

Vad är risken per kontrakt?

Med 1 kontrakt och 3 punkters spread hade körningen på Nasdaq 100 1 timme en max drawdown på 1,181.50 EUR. Varje affär skyddas av en 1%-stop.

Varför 1-timmesbarer?

Volym- och spannfiltren behöver tillräckligt med aktivitet per bar för att vara meningsfulla. På Nasdaq 100 gav 1-timmesdiagrammet den bästa profit factorn, 1.44.

Relaterat

Strategier som den här

Bollinger Squeeze

Använder samma indikator.

14.30 PF · 86 affärer

Negated Hammer

Bästa körning på samma marknad, Nasdaq 100.

3.20 PF · 372 affärer

Rock Climber

En liknande profit factor.

1.44 PF · 1,644 affärer

Se hur momentum-system handlas i praktiken. Ställ dig i ProRealAlgos-kön.

Copy trading på amerikanska index är tillgängligt för ProRealAlgos-medlemmar när platser blir lediga.

Tidigare backtest-resultat är ingen garanti för framtida resultat. Detta är inte finansiell rådgivning. Kurerat och underhållet av ProRealAlgos. ProRealTime™ är ett varumärke som tillhör ProRealTime SAS. prorealalgos.comStatistikDokumentation