Skip to content

Change of Character (Choch)

Marius edited this page Sep 25, 2026 · 3 revisions

Change of Character (Choch)

Overzicht

De Choch (Change of Character)-strategie detecteert verschuivingen in de marktstructuur met behulp van ZigZag-gebaseerde trendanalyse. Een CHoCH-event markeert het moment waarop een heersende trend omkeert — de eerste higher-low in een downtrend (bullish CHoCH) of de eerste lower-high in een uptrend (bearish CHoCH). Er bestaan vier signaalvarianten, die twee ZigZag-trenddieptes combineren met optionele pullback-bevestiging.

Dit is een experimentele strategie (alleen in DEBUG).

Hoe het werkt

Trenddetectie

De marktstructuur wordt bepaald via ZigZag-analyse. Twee trenddieptes zijn beschikbaar:

  • Primary — grote marktswings (minder, grotere draaipunten).
  • Secondary — tussenliggende swings (frequentere draaipunten).

Een CHoCH-event wordt gedetecteerd wanneer de ZigZag-afgeleide trend van richting verandert (bijv. van Bearish naar Bullish).

Directe variant (choch.primary / choch.secondary)

Vuurt direct bij het CHoCH-event. De signaalprijs wordt gezet op de CHoCH-draaipuntprijs. Bevat een warm-start-beveiliging: bij de eerste evaluatie wordt het huidige event stilzwijgend geadopteerd zonder te vuren, om valse signalen bij het opstarten te voorkomen.

Pullback-variant (choch.primary.pullback / choch.secondary.pullback)

Wacht op een bevestigde pullback na de CHoCH:

  1. Er moet een ZigZag-draaipunt vormen in de verwachte richting (Low-draaipunt voor long, High-draaipunt voor short).
  2. De huidige candle moet voorbij de draaipuntwaarde sluiten (erboven voor long, eronder voor short).
  3. De candle moet de juiste richting hebben (bullish candle voor long, bearish voor short).
  4. Optioneel (RequireBosConfirmation = true): een Break of Structure (BOS)-event moet de CHoCH bevestigen voordat het pullback-signaal afgaat.

Give-up-voorwaarde

Het signaal wordt opgegeven wanneer de BOS-trend terugkeert naar de oorspronkelijke richting (Bearish voor long, Bullish voor short).

Signaalvoorwaarden

Long entry (direct)

# Voorwaarde Beschrijving
1 CHoCH-event gedetecteerd ZigZag-trend wisselt naar Bullish
2 Nog niet eerder afgegeven Eén signaal per CHoCH-event
3 Warm-start doorlopen Eerste evaluatie na opstarten wordt overgeslagen

Long entry (pullback)

# Voorwaarde Beschrijving
1 CHoCH-event gedetecteerd ZigZag-trend wisselt naar Bullish
2 ZigZag Low-draaipunt gevormd Pullback creëert een higher low
3 Close > draaipuntwaarde Candle sluit boven het pullback-draaipunt
4 Bullish candle Close > Open
5 BOS-bevestiging (optioneel) Break of Structure na CHoCH (wanneer RequireBosConfirmation is ingeschakeld)

Short entry (spiegelbeeld van long)

Dezelfde logica met omgekeerde voorwaarden — bearish CHoCH, ZigZag High-draaipunt, close onder draaipunt, bearish candle.

Instellingen

Parameter Standaard Beschrijving
RequireBosConfirmation false Pullback-varianten: vereist een BOS-event tussen CHoCH en signaal

Gebruikte indicatoren

Indicator Doel
ZigZag (Primary of Secondary) Trendstructuur en draaipuntdetectie
BOS (Break of Structure) Trendbevestiging en give-up-voorwaarde
SymbolTrend Berekening van de trendstatus

Strategietype

  • Trend-reversal / structureel
  • Vier varianten: 2 trenddieptes x 2 instapmodi (direct / pullback)
  • Experimenteel (alleen in DEBUG)

Bestandsstructuur

CryptoScanner.Analyzers/Choch/
├── ChochPlugin.cs                                # Plugin registration (4 variants)
├── ChochSettings.cs                              # Settings (RequireBosConfirmation)
├── Choch.md                                      # This document
└── Signal/
    ├── SignalChochLongBase.cs                     # Shared long logic (CHoCH + trend + pullback)
    ├── SignalChochShortBase.cs                    # Shared short logic
    ├── SignalChochPrimaryLong.cs                  # Primary trend, direct entry
    ├── SignalChochPrimaryShort.cs                 # Primary trend, direct entry
    ├── SignalChochPrimaryPullbackLong.cs          # Primary trend, pullback entry
    ├── SignalChochPrimaryPullbackShort.cs         # Primary trend, pullback entry
    ├── SignalChochSecondaryLong.cs                # Secondary trend, direct entry
    ├── SignalChochSecondaryShort.cs               # Secondary trend, direct entry
    ├── SignalChochSecondaryPullbackLong.cs        # Secondary trend, pullback entry
    └── SignalChochSecondaryPullbackShort.cs       # Secondary trend, pullback entry

Enum-waarden: CryptoSignalStrategy.ChochPrimary = 60, ChochPrimaryPullback = 61, ChochSecondary = 62, ChochSecondaryPullback = 63

Registratie

Geregistreerd als DEBUG-only-strategie in AnalyzerRegistration.cs. Strategienamen in de UI: choch.primary, choch.primary.pullback, choch.secondary, choch.secondary.pullback.

Clone this wiki locally