Om Relative Strength Index (RSI) te reproduceren heb je de veranderingen én beide afgevlakte toestanden nodig. Alleen het label RSI 14 of de laatste zichtbare waarde is onvoldoende. Hier blijven bronprijzen, initialisatie, recursie en weergave afzonderlijk controleerbaar. Geen van deze rekenvoorbeelden is een backtest of bewijs van winst.

Eerst de bouwstenen, dan de verhouding

Voor slotkoersen C is Δ = Cₜ − Cₜ₋₁, stijging U = max(Δ, 0) en dalingsgrootte D = max(−Δ, 0). Beide zijn niet-negatief; een onveranderde koers geeft twee nullen. Dit zijn prijsveranderingen, geen procentuele rendementen of deelnemersmotieven. De eerste n veranderingen leveren rekenkundige gemiddelden G en L. Bij n = 14 heb je dus vijftien slotkoersen nodig. Veertien slotkoersen bevatten maar dertien verschillen.

Na de start geldt Gₜ = [(n − 1)Gₜ₋₁ + Uₜ]/n en Lₜ = [(n − 1)Lₜ₋₁ + Dₜ]/n. Wanneer G + L positief is, is RSI = 100G/(G + L). Voor L > 0 kun je ook 100 − 100/(1 + G/L) gebruiken. De zichtbare chart kan minder geschiedenis tonen dan de draaiende berekening daadwerkelijk gebruikt.

Afronding kan het geheugen wissen

Gegeven n = 3, G = L = 0,0045 en een nieuwe stijging 0,001. Volledige opslag geeft G′ = (2 × 0,0045 + 0,001)/3 = 0,003333… en L′ = 0,003. RSI wordt 52,6316… . Beide vooraf werkelijk afronden tot twee decimalen maakt G = L = 0. Na dezelfde stijging is G′ positief, L′ nul en RSI 100 onder de genoemde positieve-totaalregel.

Volledige precisie tegenover verloren toestandGegeven RSI(3)-toestanden en één verandering; werkelijke opslagafronding wordt apart verondersteld.REKENVOORBEELDVolledig opgeslagenRSI 52,6316…Vooraf beide naar nulRSI 100
Volledige precisie tegenover verloren toestand. Gegeven RSI(3)-toestanden en één verandering; werkelijke opslagafronding wordt apart verondersteld.

Een kort label hoeft niets te veranderen; werkelijk afronden van G/L kan dezelfde update naar een totaal andere RSI sturen.

Volledig opgeslagen
RSI 52,6316… – G′ 0,003333… en L′ 0,003.
Vooraf beide naar nul
RSI 100 – Nieuwe positieve G′, L′ nul; positieve-totaalregel.

Een spreadsheet die 0,00 toont maar 0,0045 bewaart, heeft het geheugen niet gewist. De fout ontstaat pas als de verkorte tekst of werkelijk afgeronde waarde als volgende toestand wordt gebruikt. Het diagram vergelijkt opslagmethoden en beschuldigt geen platform van deze fout.

Wilder is geen gewone EMA14

De nieuwe-waarnemingsfactor is 1/n: bij 14 ongeveer 0,07143. Een conventionele EMA14 gebruikt 2/15, ongeveer 0,13333. Dit zijn andere recursies. Een steeds opnieuw berekend rekenkundig laatste-n-gemiddelde is nog een derde methode. De afwijking is data-afhankelijk; er volgt geen vast aantal punten vertraging of garantie van extremere waarden uit. Bij G = L > 0 is RSI 50, zonder bewijs van een prijsrange.

Zeven prijzen, vier exacte uitkomsten

Neem uitsluitend slotkoersen 100, 102, 101, 104, 103, 103, 105. Er is geen oudere toestand, ontbrekende prijs of extra instabiliteitsperiode. Gebruik n = 3 om alle stappen te kunnen zien, niet als advies voor een instelling.

Schuif op een klein scherm door de tabel om alle kolommen te lezen.

Rekenkundige start en daarna Wilder-recursie
Tijd / CloseΔ; U; DG; LRSI
t0 / 100StartGeenGeen
t1 / 102+2; 2; 0VerzamelenGeen
t2 / 101−1; 0; 1VerzamelenGeen
t3 / 104+3; 3; 05/3; 1/383,3333
t4 / 103−1; 0; 110/9; 5/966,6667
t5 / 1030; 0; 020/27; 10/2766,6667
t6 / 105+2; 2; 094/81; 20/8182,4561

De start deelt zowel de stijgingssom 5 als dalingssom 1 door drie, inclusief nulcomponenten. Op t4: G = (2 × 5/3)/3 = 10/9; L = (2 × 1/3 + 1)/3 = 5/9. Een los venster met veranderingen −1, +3, −1 zou daar G = 1 en L = 2/3 geven: RSI 60. Dat verschil met 66,6667 komt uit de methode, niet uit weergaveafronding.

Op t5 worden beide positieve toestanden met 2/3 vermenigvuldigd. Hun verhouding blijft gelijk: een vlakke candle reset RSI niet naar 50. Op t6 geven exacte breuken 100 × 94/114 ≈ 82,4561. Gebruik de volledige breuken of opgeslagen precisie voor de volgende stap.

Nul vraagt een versiegebonden afspraak

Bij positieve G en L = 0 geeft de positieve-totaalformule 100; bij G = 0 en positieve L geeft ze 0. Beide nul leveren 0/0 en vereisen code. De vastgelegde C-release TA-Lib 0.6.4 gebruikt een nultolerantietest en retourneert 0 bij nul of voldoende kleine totale grootte. De nu geraadpleegde main-code test exact positief totaal en gebruikt anders 50. Een veranderlijke main-link definieert dus geen permanent identieke implementatie.

Vier prijzen 100, 101, 102, 103 geven voor RSI(3) G = 1, L = 0 en 100. De omgekeerde reeks 103, 102, 101, 100 geeft G = 0, L = 1 en 0. Viermaal 100 geeft twee nullen: release 0.6.4 retourneert 0, de geraadpleegde main 50. Het officiële MQL4-codevoorbeeld waarnaar het bronartikel verwijst gebruikt eveneens de 50-conventie voor exact twee nullen; dat is geen verklaring over iedere ingebouwde MetaTrader-versie.

Bewaar bronversie en bestandshash naast resultaten. Ontbrekende prijzen, exact nul en kleine positieve toestanden zijn verschillende situaties. Vul een ontbrekende prijs niet met nul aan: daarmee maak je zelf een kunstmatige koersval.

Dezelfde 50 kan anders reageren

Begin apart met n = 3 en G = L = 1. Na k vlakke veranderingen zijn beide g = (2/3)k, terwijl RSI 50 blijft. Een volgende stijging van precies één prijseenheid geeft G′ = (2g + 1)/3 en L′ = 2g/3, dus RSI′ = 100(2g + 1)/(4g + 1). Zonder vlakke voorgeschiedenis wordt dat 60. Na zes vlakke veranderingen is g = 64/729 en wordt dezelfde stijging ongeveer 87,0051. De zichtbare verhouding bewaart de absolute toestandschaal niet.

Eigen EUR-model. Neem een andere fictieve EUR-prijsreeks met n = 3, G = L = €0,60 en een volgende stijging €0,30. Direct wordt RSI 55,5556. Na drie vlakke veranderingen zijn beide toestanden €0,177777… en wordt dezelfde €0,30 gevolgd door RSI 64,8352. De vooraf zichtbare 50 was gelijk. Dit rekent alleen toestanden door; een latere order kan nog steeds verliezen. Een afzonderlijk aangenomen koop van twintig eenheden op €50, verkoopfill €49,70 en €2 kosten verliest €8, ongeacht welk van die RSI’s vooraf werd getoond.

Interpretatie blijft een afzonderlijke keuze

70/30 en alternatieve Brown/Cardwell-zoneconventies veranderen de onderliggende berekening niet. Reguliere bullish divergentie is lager prijsdal/hoger RSI-dal; reguliere bearish is hogere prijstop/lagere RSI-top. Verborgen bullish is hoger prijsdal/lager RSI-dal, verborgen bearish lagere prijstop/hogere RSI-top. De gebruikelijke associaties ommekeer respectievelijk voortzetting zijn hypothesen, geen bewezen rangorde van winstgevendheid. Verklaar puntselectie en herkenningstijd voordat je ze test.

Zoek de eerste afwijkende stap

  • Vergelijk provider, symbool, prijsbron, candlegrenzen en gesloten status, daarna U/D en G/L.
  • Controleer laatste-n-venster tegenover recursie, echte opslagafronding tegenover schermopmaak en versiegebonden nulregels.
  • Gebruik de definitieve Close alleen nadat de candle gesloten en ontvangen is; een intrabarwaarde is andere informatie.

Berekening, weergave en handelsproef

Bij gelijke latere veranderingen krimpt een verschil tussen twee G-startwaarden per stap met (n − 1)/n; hetzelfde geldt voor L. Het verschil tussen uiteindelijke RSI-verhoudingen hoeft niet met precies die factor te krimpen. Er is daarom geen universeel aantal opwarmcandles. Eerst reproduceer je de toestanden, daarna hun beschikbaarheidstijd en pas daarna een volledige handelsregel met kosten.

Een controleprotocol voor je eigen vergelijking

  1. Bewaar algoritme, periode, prijsbron, initialisatie, bronhash en nulconventie.
  2. Reproduceer de zeven prijzen en exacte breuken voordat je drempels optimaliseert.
  3. Houd ongebruikte evaluatiedata en mislukte/niet-uitgevoerde gevallen apart; vijf patronen of één maand bewijst geen voordeel.
  4. Vraag voor een bestaande RSI(14) ook eerdere geschiedenis of de eerdere G/L-toestand op. Een gemiddelde van alleen veertien nieuwe veranderingen is een andere start.

RSI lezen: schaal, kruisingen en gesloten candles behandelt de observatieregels; MACD-mechanica: initialisatie, afronding en tegenvoorbeelden vergelijkt andere recursies en Divergentie op RSI en MACD: component, eenheid en herkenning de keuze en timing van punten. Dat zijn afzonderlijke lessen, geen bewijs dat de handelsregel hier winstgevend is.