Repulse
Repulse i ProBuilder mäter det bullish eller bearish trycket på varje candlestick över n barer, och oscillerar runt noll. Syntax, formel, exempel.
Syntax
Repulse[n](price)Parametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
n | heltal | ingen | Antal barer som analyseras. Små värden som 1 till 5 läser trycket på enskilda candles, större värden som 15 eller mer beskriver den bredare vågen. |
price | priskälla | close | Prisserien som används i beräkningen. Vanligtvis close, accepterar även open, high, eller low. |
Formel
Den definition som oftast anges jämför en uppåtriktad kraft mot en nedåtriktad kraft, var och en uttryckt som en procentandel av close och exponentiellt utjämnad:
up = 100 * (3 * close - 2 * lowest low over n - open) / close
down = 100 * (open + 2 * highest high over n - 3 * close) / close
Repulse = ExponentialAverage[5n](up) - ExponentialAverage[5n](down)Den uppåtriktade kraften växer när close lägger sig långt över de senaste lows, den nedåtriktade kraften växer när close lägger sig långt under de senaste highs. Deras utjämnade skillnad oscillerar runt noll.
Så fungerar det
Repulse försöker besvara en candlestick-fråga numeriskt: under de senaste n barer, vem som tryckte hårdare, köpare eller säljare. Ett ljus som öppnar lågt och stänger nära toppen av sitt senaste intervall visar köpare som absorberar utbud, vilket höjer den positiva komponenten. Det omvända fallet höjer den negativa komponenten. Att nettoberäkna de två ger en enda linje vars tecken sammanfattar vilken sida som vinner.
Indikatorn beter sig som andra nollcentrerade oscillatorer. Tecknet anger riktningen, lutningen anger förändringen i tryck, och divergenser mot priset varnar för att den pågående rörelsen håller på att tappa deltagare. Eftersom utjämningsperioden skalar med n (fem gånger analysfönstret), större n värden ger märkbart långsammare, jämnare linjer.
En vanlig teknik kör flera instanser samtidigt, till exempel Repulse[1], Repulse[5] och Repulse[15], för att läsa korta, mellanlånga och längre tryckvågor i samma diagram. När alla tre ligger på samma sida av noll behandlas det som en läsning med högre tillförlitlighet än någon enskild linje.
Exempel
Exempel 1, Flaggor för bullish och bearish tryck (Indikator)
i1 = Repulse[10](close)
IF i1 > 0 THEN
bullish = 1
bearish = 0
ELSIF i1 < 0 THEN
bullish = 0
bearish = 1
ENDIF
RETURN bullish coloured(127,255,0), bearish coloured(255,64,64)Omvandlar 10-barers Repulse till två binära flaggor, ritade i grönt för köptryck och rött för säljtryck. Observera att när i1 är exakt noll behåller båda flaggorna sina tidigare värden, eftersom variabler lever vidare mellan barer.
Exempel 2, Entry vid nollkorsning med trendfilter (ProOrder)
DEFPARAM CumulateOrders = false
pressure = Repulse[5](close)
trend = Average[100](close)
// Buy when pressure turns positive in an established uptrend
IF NOT LongOnMarket AND close > trend AND pressure CROSSES OVER 0 THEN
BUY 1 CONTRACT AT MARKET
ENDIF
// Exit when pressure flips negative
IF LongOnMarket AND pressure CROSSES UNDER 0 THEN
SELL AT MARKET
ENDIFMedelvärdet över 100 barer håller entries på trendens sida, och Repulses nollkorsning tidsätter entryn till det ögonblick då köptrycket återtar kontrollen.
Exempel 3, Trycksamstämmighet över flera perioder (ProScreener)
shortP = Repulse[1](close)
midP = Repulse[5](close)
longP = Repulse[15](close)
aligned = shortP > 0 AND midP > 0 AND longP > 0
SCREENER[aligned](midP AS "Repulse 5")Returnerar instrument där Repulse-värdena för 1, 5 och 15 barer alla är positiva, samstämmighetsvillkoret som ofta används som bullish bekräftelse.
Tolkning
| Avläsning | Betydelse |
|---|---|
| Repulse > 0 | Netto bullish tryck över fönstret. |
| Repulse < 0 | Netto bearish tryck över fönstret. |
| Stiger genom 0 | Köparna tar kontrollen, momentum skiftar uppåt. |
| Faller genom 0 | Säljarna tar kontrollen, momentum skiftar nedåt. |
| Divergens mot pris | Nytt prisextremvärde utan nytt extremvärde i oscillatorn, trycket bakom rörelsen avtar. |
Repulse-värden är relativa, inte avgränsade, så extremvärden skiljer sig mellan instrument och mellan n. Den läses normalt för tecken, lutning och divergens snarare än absolut nivå, och bekräftas med volym eller stöd- och motståndssammanhang.
Vanliga fel och fallgropar
- Utjämningen skalar med perioden. Den interna exponentiella utjämningen använder en multipel av
n, så att en fördubblingnmer än dubblerar fördröjningen. EnRepulse[15]linjen reagerar mycket senare än vad intuitionen utifrån en 15-bars lookback antyder. - Inga fasta gränser. Till skillnad från RSI eller Stochastic finns inga universella nivåer för överköpt eller översålt. Tröskelvärden som
> 20måste kalibreras per instrument och tidsram. - Whipsaw vid nollkorsning med litet n.
Repulse[1]byter tecken ofta i lugna marknader. Att handla rena nollgenomgångar utan ett trendfilter ger en ström av förlustaffärer. - Ohanterat likhetsfall. I grenlogik som i exempel 1 matchar ett värde på exakt noll varken
> 0inte heller< 0, så flaggvariabler behåller tyst föregående bars värde. Lägg till enELSEgren när ett definierat tillstånd krävs på varje bar.
Relaterade instruktioner
RepulseMM, variant med glidande medelvärde som tar kort, lång och utjämning som parametrar.SmoothedRepulse, förutjämnad version av samma koncept.RSI, begränsad momentum-oscillator med fast skala från 0 till 100.Stochastic, begränsad oscillator som placerar close inom sitt senaste intervall.CCI, oscillator baserad på avvikelse från medelvärdet med jämförbart nollcentrerat värde.Momentum, rå prisskillnad över N barer.ROC, prisets procentuella förändringstakt.ExponentialAverage, utjämningsmetoden som används inuti Repulse.