Word nu lid
Indicatoren/probuilder · probacktest · proorder · proscreener

OBV

OBV in ProBuilder geeft On-Balance Volume, een cumulatief totaal dat volume optelt bij opgaande bars en aftrekt bij neergaande bars. Syntaxis, formule en voorbeelden.

Syntaxis

probuilder
OBV(price)

Parameters

NaamTypeStandaardBeschrijving
priceprijsbroncloseDe reeks waarvan de richting bepaalt of volume wordt opgeteld of afgetrokken. Bijna altijd close, maar elke prijsarray wordt geaccepteerd.

Formule

code
if price > price[1] then OBV = OBV[1] + volume
if price < price[1] then OBV = OBV[1] - volume
if price = price[1] then OBV = OBV[1]

Het resultaat is een cumulatieve som, dus het is onbegrensd en de absolute waarde hangt af van waar de geladen historie begint.

Hoe het werkt

On-Balance Volume behandelt het volume van elke bar als koop of verkoop, afhankelijk van de richting waarin de referentieprijs bewoog. Een opgaande bar telt zijn volledige volume bij het totaal op, een neergaande bar trekt het eraf, een onveranderde bar laat het totaal ongemoeid. In de loop van de tijd accumuleert de lijn de netto richting van de volumestroom.

Het idee is dat volume de prijs doorgaans voorloopt. Wanneer de OBV-lijn stijgt terwijl de prijs zijwaarts beweegt, is er mogelijk accumulatie aan de gang en wordt een breakout omhoog plausibeler. Wanneer OBV daalt terwijl de prijs zich houdt of stijgt, vindt er mogelijk distributie achter de schermen plaats. Bevestiging, waarbij OBV en prijs samen nieuwe highs of lows maken, ondersteunt voortzetting van de trend.

Omdat de lijn cumulatief is, draagt alleen de vorm informatie. Het getal zelf weerspiegelt niets meer dan de som van het volume met voorteken sinds de eerste geladen bar, dus twee grafieken van hetzelfde instrument met verschillende historielengtes tonen verschillende OBV-waarden met identieke vormen.

Voorbeelden

Voorbeeld 1, OBV-momentum over 10 bars (Indicator)

probuilder
// Compare current OBV with the OBV computed on prices shifted 10 bars back
i1 = OBV(close)
i2 = OBV(close[10])
test = i1 - i2
RETURN test

Berekent OBV op de slotkoers en op de close van 10 bars terug, en geeft dan het verschil. De spread geeft aan hoeveel netto volume met voorteken zich recent heeft opgebouwd.

Voorbeeld 2, Door volume bevestigde trendinstap (ProOrder)

probuilder
// Long only when both price and OBV are above their own averages
obvline = OBV(close)
obvavg = Average[20](obvline)
trend = Average[50](close)

IF NOT OnMarket AND close > trend AND obvline > obvavg THEN
  BUY 1 CONTRACT AT MARKET
ENDIF
IF LongOnMarket AND obvline < obvavg THEN
  SELL AT MARKET
ENDIF

Vereist dat de OBV-lijn boven zijn 20-bars gemiddelde handelt voordat een long-instap volgt, en stapt uit wanneer de volumestroom met voorteken terugzakt onder dat gemiddelde.

Voorbeeld 3, Screener voor stijgende OBV (ProScreener)

probuilder
// Instruments where signed volume has been building for 20 bars
obvline = OBV(close)
rising = obvline > obvline[20]
SCREENER[rising]((obvline - obvline[20]) AS "OBV change 20")

Toont instrumenten waarvan de OBV hoger is dan 20 bars terug en sorteert ze op de grootte van de stijging, een eenvoudige accumulatiescan.

Interpretatie

PatroonStand
OBV stijgt met de prijsVolume bevestigt de opwaartse trend.
OBV daalt met de prijsVolume bevestigt de neerwaartse trend.
Prijs nieuwe high, OBV lagere highBearish divergentie, de stijging heeft geen steun van het volume.
Prijs nieuwe low, OBV hogere lowBullish divergentie, de verkoopdruk droogt op.
OBV trendt terwijl de prijs vlak isMogelijke accumulatie of distributie vóór een uitbraak.

OBV geeft geen overbought- of oversold-niveaus. De analyse leunt op trendlijnen, voortschrijdende gemiddelden van de OBV-lijn zelf, en divergenties ten opzichte van de prijs.

Veelvoorkomende fouten en valkuilen

  • Absolute waarden zijn willekeurig. Het totaal begint te accumuleren bij de eerste geladen bar, dus het niveau hangt af van de grafiekhistorie en verschilt tussen platforms en historielengtes. Vergelijk ruwe OBV-waarden nooit tussen instrumenten en programmeer er geen vaste drempels tegen.
  • Volumedata vereist. Op instrumenten zonder echt beursvolume, zoals veel spot forex-feeds, wordt OBV opgebouwd uit tick- of geschat volume en betekent het misschien niet wat het leerboek veronderstelt.
  • Alles-of-niets-toewijzing van volume. Een bar die één tick hoger sluit draagt precies evenveel volume bij als een sterke bar met een volle body. Indicatoren zoals PVT of AccumDistr wegen volume in plaats daarvan naar de grootte of locatie van de beweging.
  • Onveranderde closes voegen niets toe. Wanneer price gelijk is aan de vorige waarde blijft het totaal onveranderd, dus op laaggeprijsde of dun verhandelde instrumenten met vaak gelijke closes kan de lijn de activiteit onderschatten.
  • Volume, het ruwe volume per bar dat wordt geaccumuleerd.
  • PVT, vergelijkbaar doorlopend totaal gewogen naar de procentuele prijsverandering.
  • AccumDistr, accumulatie- en distributielijn gewogen naar de positie van de close binnen de range.
  • ChaikinOsc, oscillator van de accumulation and distribution-lijn.
  • MoneyFlow, meter voor koop- en verkoopdruk, begrensd van -1 tot 1.
  • MoneyFlowIndex, naar volume gewogen RSI op een schaal van 0 tot 100.
  • ForceIndex, prijsverandering maal volume voor de sterkte van een enkele bar.
  • WilliamsAccumDistr, alternatieve formule voor accumulatie en distributie.