Skip to content

SMA Based Method (SBM)

Marius edited this page Aug 27, 2026 · 2 revisions

SMA-Based Method (SBM)

Overzicht

De SBM-strategiefamilie detecteert oversold/overbought-condities met behulp van een combinatie van SMA-uitlijning (Simple Moving Average), Parabolic SAR-positionering, MACD-histogramherstel en diverse BB/price-action-triggers. SBM wordt omschreven als "a special kind of STOBB" — het legt extra moving-average- en trendstructuurfilters bovenop BB-gebaseerde signalen voor kwalitatief betere entries.

Drie substrategieen bestaan met verschillende triggermechanismen:

  • SBM1 — vereist een recent STOBB-event (prijs was onder/boven BB + Stoch-extreem) in het terugkijkvenster.
  • SBM2 — vereist dat de prijs recent in het onderste/bovenste deel van de Bollinger Bands heeft gezeten.
  • SBM3 — vereist dat de Bollinger Bands-breedte aanzienlijk is toegenomen (volatiliteitsexpansie).

Alle drie delen dezelfde basischecks (MA-uitlijning, PSar, MACD-herstel, MA-percentageafstanden, MA-crossings).

Hoe het werkt

Gedeelde basisvoorwaarden (alle SBM-varianten)

Elk SBM-signaal vereist dat deze voorwaarden slagen:

  1. BB-breedtefilter: BBMinPercentage <= BB% <= BBMaxPercentage
  2. SMA-uitlijning (SBM-voorwaarden):
    • Long (oversold): SMA(200) > SMA(50) > SMA(20) — de MA's staan gestapeld in bearish volgorde, wat een downtrend aangeeft waar een omkering zou kunnen plaatsvinden.
    • Short (overbought): SMA(200) < SMA(50) < SMA(20) — de MA's staan gestapeld in bullish volgorde.
  3. Parabolic SAR-positionering:
    • Long: PSar ligt onder SMA(20) EN boven de candle close (bearish SAR, maar begint om te keren).
    • Short: PSar ligt boven SMA(20) EN onder de candle close (bullish SAR, maar begint om te keren).
  4. MACD-histogramherstel (AdditionalChecks):
    • Long: het MACD-histogram is gestegen gedurende CandlesForMacdRecovery opeenvolgende bars.
    • Short: het MACD-histogram is gedaald gedurende CandlesForMacdRecovery opeenvolgende bars.
  5. MA-percentageafstanden (AdditionalChecks, instelbaar):
    • De percentageafstand tussen SMA(200)/SMA(50), SMA(50)/SMA(20) en SMA(200)/SMA(20) moet instelbare minimumwaarden overschrijden. Dit zorgt ervoor dat de MA's voldoende uit elkaar liggen (echte trend, geen vlakke markt).
  6. MA-crossings (AdditionalChecks, instelbaar):
    • Recente crossings tussen MA-paren moeten hebben plaatsgevonden binnen instelbare terugkijkvensters. Dit bevestigt dat de trendstructuur zich recent heeft ontwikkeld.

SBM1: STOBB-terugkijktrigger

Naast de gedeelde basisvoorwaarden vereist SBM1 dat een STOBB-achtig event (prijs onder/boven BB + Stochastic oversold/overbought) heeft plaatsgevonden in de laatste Sbm1CandlesLookbackCount candles. Dit betekent dat SBM1 afgaat nadat een STOBB-conditie is opgetreden, zodra de MACD- en MA-structuur ook bevestigen.

SBM2: BB-positietrigger

SBM2 vereist dat de prijs in het onderste/bovenste deel van de Bollinger Bands heeft gezeten binnen de laatste Sbm2CandlesLookbackCount candles. "Onderste/bovenste deel" betekent dat de prijs binnen Sbm2BbPercentage% van de bandrand lag.

SBM3: BB-expansietrigger

SBM3 vereist dat de BB-breedte aanzienlijk is toegenomen over de laatste Sbm3CandlesLookbackCount candles. Concreet moet de huidige BB-breedte gedeeld door de minimale BB-breedte in het terugkijkvenster groter zijn dan Sbm3CandlesBbRecoveryPercentage%. Dit detecteert een volatiliteitsexpansie na een squeeze — vergelijkbaar met de BbSqueeze-strategie maar met alle SBM MA-structuur erbij.

Opgaveconditie

Het signaal wordt opgegeven wanneer de prijs of LastPrice voorbij de tegenovergestelde Bollinger Band beweegt (close of LastPrice boven de bovenste BB voor long, onder de onderste BB voor short).

Signaalvoorwaarden

Alle varianten — gedeelde voorwaarden

# Voorwaarde Beschrijving
1 BB-breedte binnen bereik BBMinPercentage <= BB% <= BBMaxPercentage
2 SMA-uitlijning SMA(200) > SMA(50) > SMA(20) voor long, omgekeerd voor short
3 PSar-positie PSar onder SMA(20) en boven close voor long, omgekeerd voor short
4 MACD-herstel Histogram stijgend (long) of dalend (short) gedurende N bars
5 MA-percentageafstanden Instelbare minimale spreiding tussen MA-paren
6 MA-crossings Recente crossings tussen MA-paren binnen terugkijkvensters

Trigger per variant

Variant Trigger Beschrijving
SBM1 Recent STOBB-event Onder/boven BB + Stoch-extreem in laatste N candles
SBM2 BB-positie Prijs in onderste/bovenste deel van BB in laatste N candles
SBM3 BB-expansie BB-breedte toegenomen met >= N% over terugkijkvenster

Instellingen

Parameter Standaard Beschrijving
Algemeen
BBMinPercentage 1.50 Minimale BB-breedte in procenten
BBMaxPercentage 100.0 Maximale BB-breedte in procenten
CandlesForMacdRecovery 2 Vereist aantal bars MACD-histogramherstel
MA-percentages
CheckMa200AndMa50Percentage true SMA(200) vs SMA(50) afstandscheck inschakelen
Ma200AndMa50Percentage 0.25 Minimale afstand (%) tussen SMA(200) en SMA(50)
CheckMa50AndMa20Percentage true SMA(50) vs SMA(20) afstandscheck inschakelen
Ma50AndMa20Percentage 0.25 Minimale afstand (%) tussen SMA(50) en SMA(20)
CheckMa200AndMa20Percentage true SMA(200) vs SMA(20) afstandscheck inschakelen
Ma200AndMa20Percentage 0.50 Minimale afstand (%) tussen SMA(200) en SMA(20)
MA-crossings
Ma200AndMa50Crossing true SMA(200)/SMA(50)-crossing vereisen in terugkijkvenster
Ma200AndMa50Lookback 30 Terugkijkcandles voor SMA(200)/SMA(50)-crossing
Ma50AndMa20Crossing true SMA(50)/SMA(20)-crossing vereisen in terugkijkvenster
Ma50AndMa20Lookback 10 Terugkijkcandles voor SMA(50)/SMA(20)-crossing
Ma200AndMa20Crossing true SMA(200)/SMA(20)-crossing vereisen in terugkijkvenster
Ma200AndMa20Lookback 15 Terugkijkcandles voor SMA(200)/SMA(20)-crossing
SBM1
Sbm1CandlesLookbackCount 5 Candles om terug te kijken voor een STOBB-event
UseLowHigh false Low/High gebruiken in plaats van Open/Close voor STOBB-check
SBM2
Sbm2CandlesLookbackCount 3 Candles om terug te kijken voor BB-positie
Sbm2BbPercentage 2.5 Percentagedrempel voor "onderste/bovenste deel" van BB
Sbm2UseLowHigh false Low/High gebruiken in plaats van Open/Close
SBM3
Sbm3CandlesLookbackCount 8 Candles om terug te kijken voor BB-expansie
Sbm3CandlesBbRecoveryPercentage 225 Vereiste BB-breedtetoename (%) over het terugkijkvenster

Gebruikte indicatoren

Indicator Doel
SMA(20), SMA(50), SMA(200) Trendstructuur / MA-uitlijning
Bollinger Bands (SMA 20, 2 sigma) Breedtefilter, BB-positiecheck (SBM2), BB-expansie (SBM3)
Parabolic SAR Trendomkeerbevestiging
MACD-histogram Momentumherstelbevestiging
Stochastic (%K, %D) Gebruikt door SBM1 via STOBB-terugkijk

Strategietype

  • Mean-reversion met trendstructuurbevestiging
  • Selectiever dan STOBB — vereist uitlijning van meerdere trend- en momentumindicatoren.
  • SBM1 is de populairste variant; SBM3 lijkt qua opzet op BbSqueeze maar met volledige SBM-filters.

Bestandsstructuur

CryptoScanner.Analyzers/Sbm/
├── SbmPlugin.cs                          # Plugin registration (sbm1, sbm2, sbm3)
├── SbmSettings.cs                        # Strategy-specific settings
├── Sbm.md                                # This document
├── Config/
│   ├── SbmConfigView.cs                  # Settings UI bridge
│   ├── StrategySbmTabView.axaml          # Settings tab UI
│   ├── StrategySbmTabViewModel.cs        # Settings viewmodel
│   ├── StrategySbmSettingsView.axaml     # Detailed settings sub-view
│   ├── StrategySbmSettingsViewModel.cs
│   ├── StrategySbmSettingsMethodsView.axaml
│   └── StrategySbmSettingsMethodsViewModel.cs
└── Signal/
    ├── SignalSbmBase.cs                  # Shared: indicator checks, MACD recovery, MA checks, GiveUp
    ├── SignalSbm1Long.cs                 # SBM1 long: MA alignment + PSar + recent STOBB + MACD recovery
    ├── SignalSbm1Short.cs                # SBM1 short
    ├── SignalSbm2Long.cs                 # SBM2 long: MA alignment + PSar + BB position + MACD recovery
    ├── SignalSbm2Short.cs                # SBM2 short
    ├── SignalSbm3Long.cs                 # SBM3 long: MA alignment + PSar + BB expansion + MACD recovery
    └── SignalSbm3Short.cs                # SBM3 short

Enum-waarden: CryptoSignalStrategy.Sbm1 = 1, CryptoSignalStrategy.Sbm2 = 2, CryptoSignalStrategy.Sbm3 = 3

Registratie

Geregistreerd als productiestrategie in AnalyzerRegistration.cs. Strategienamen in de UI: sbm1, sbm2, sbm3.

Clone this wiki locally