Auteur:
dm34@mail.ru
De UltraCCI indicator is gebaseerd op de CCI (Commodity Channel Index) en analyseert de trendrichting via meerdere signaallijnen. De berekening van de signaallijnen gebeurt als volgt. We hebben de volgende invoerparameters voor de indicator:
- StartLength - minimale initiële waarde van de eerste signaallijn;
- Step - stap voor de periodeverandering;
- StepsTotal - aantal periodeveranderingen.
Elke periode waarde uit de reeks van signaallijnen wordt berekend met behulp van een rekenkundige voortgang:
SignalPeriod(Number) = StartLength + Number * Step
waarbij de waarde van de Number variabele varieert van nul tot StepsTotal. De verkregen waarden van de periodes worden toegevoegd aan een variabelenarray en worden gebruikt bij elke tick van de indicator om de array van gladde RSI-waarden te berekenen. De richtingen van de huidige trend voor elk van de gladde waarden worden berekend, evenals het aantal positieve en negatieve trends voor de gehele array van CCI gladde waarden. Het uiteindelijke aantal positieve en negatieve trends wordt op zijn beurt weer gladgestreken en gebruikt als de indicatorlijnen die een kleurwolk vormen, weergegeven met behulp van de DRAW_FILLING stijl.
De trendrichting in deze indicator wordt bepaald door de kleur van de wolk, terwijl de kracht ervan wordt bepaald door de breedte van de wolk. Je kunt gebruikmaken van de overgekochte (UpLevel) en oververkochte (DnLevel) niveaus die zijn ingesteld als procentuele waarde van de maximale amplitude van de indicator.
Daarnaast biedt de indicator de mogelijkheid om de snelheid van de verandering in de kracht van een trend te bepalen, weergegeven als kleurpunten. Als de kracht van een trend toeneemt, komt de kleur van deze punten overeen met de kleur van de wolk; anders zijn de punten gekleurd in de tegenovergestelde kleur.
Je kunt kiezen uit tien verschillende gladmakingsalgoritmen:
- SMA - eenvoudige voortschrijdende gemiddelde;
- EMA - exponentieel voortschrijdend gemiddelde;
- SMMA - glad voortschrijdend gemiddelde;
- LWMA - lineair gewogen voortschrijdend gemiddelde;
- JJMA - JMA adaptief gemiddelde;
- JurX - ultralineaire gladmaking;
- ParMA - parabool gladmaking;
- T3 - Tillson's meervoudige exponentiële gladmaking;
- VIDYA - gladmaking met het algoritme van Tushar Chande;
- AMA - gladmaking met het algoritme van Perry Kaufman.
Het is belangrijk op te merken dat de faseparameters voor verschillende gladmakingsalgoritmen een totaal andere betekenis hebben. Voor JMA is het een externe fasevariabele die varieert van -100 tot +100. Voor T3 is het een gladmakingsverhouding vermenigvuldigd met 100 voor betere visualisatie, voor VIDYA is het een CMO oscillator-periode en voor AMA is het een langzame EMA-periode. Bij andere algoritmen hebben deze parameters geen invloed op de gladmaking. Voor AMA is de snelle EMA-periode een vaste waarde en is deze standaard gelijk aan 2. Ook is de verhouding van de opbouw gelijk aan 2 voor AMA.
De indicator maakt gebruik van de klassen uit de SmoothAlgorithms.mqh bibliotheek (deze moeten worden gekopieerd naar de terminal_data_folder\MQL5\Include). Het gebruik van deze klassen wordt uitgebreid beschreven in het artikel "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".
Invoerparameters van de indicator:
//+----------------------------------------------+ //| Invoerparameters van de indicator | //+----------------------------------------------+ input int CCI_Period=13; // CCI indicator periode input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Toegepaste prijs //---- input Smooth_Method W_Method=MODE_JJMA; // Gladmakingsmethode input int StartLength=3; // Initiële gladmakingsperiode input int WPhase=100; // Gladmakingsparameter //---- input uint Step=5; // Periode wijzigingsstap input uint StepsTotal=10; // Aantal periodeveranderingen //---- input Smooth_Method SmoothMethod=MODE_JJMA; // Gladmakingsmethode input int SmoothLength=3; // Gladmakingsdiepte input int SmoothPhase=100; // Gladmakingsparameter //---- input uint UpLevel=80; // Overbought niveau, %% input uint DnLevel=20; // Oversold niveau, %% input color UpLevelsColor=DarkViolet; // Overbought niveau kleur input color DnLevelsColor=DarkViolet; // Oversold niveau kleur input STYLE Levelstyle=DASHDOTDOT_; // Stijl van de niveaus input WIDTH LevelsWidth=Width_1; // Breedte van de niveaus //+----------------------------------------------+

Gerelateerde berichten
- PCA Synthetics: Automatische Coëfficiëntselectie voor MetaTrader 5
- iExposure Indicator: Beheer je Handelsposities Efficiënt met MetaTrader 5
- Efficiënt Grafische Objecten Kopiëren in MetaTrader 5 met ChartObjectsCopyPaste
- Efficiëntie Ratio (ER) Berekenen met de CEROnRingBuffer voor MetaTrader 5
- Correlatiecoëfficiënt: Een Onmisbare Indicator voor MetaTrader 5