Wanneer MACD koppelt met BB in Elasticsearch, … PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

Wanneer MACD koppelt met BB in Elasticsearch, ...

Wai Tak Wong

Moving Average Convergence Divergence (MACD) is een trend- en momentumgebaseerde indicator, terwijl Bollinger Bands (BB) is een op volatiliteit gebaseerde indicator. Wanneer MACD met BB koppelt, noemen sommige professionals het MACD BB, en anderen noemen het BB MACD. In dit artikel wordt de naam MACD BB gebruikt. De combinatie van twee technische analyse-indicatoren erft de mogelijkheden van de twee indicatoren en biedt inzicht in markttrends. Uit mijn intensieve zoektocht op internet kan ik nergens zeggen wie deze indicator heeft uitgevonden. Als iemand het weet, deel dan de bron. Veel handelsplatforms en forums bieden deze indicator echter als een geavanceerde functie. Lezers wordt geadviseerd mijn twee voorgaande artikelen te lezen om snel een basiskennis te krijgen van deze twee indicatoren en hun implementatie met behulp van Elasticsearch.
Volgens de vergelijking beschreven in het artikel “Maak een MACD-histogram met Elasticsearch”, MACD omvat een exponentieel voortschrijdend gemiddelde voor de korte en de lange termijn (EWMA). Gangbare praktijken voor deze twee termen zijn 12 en 26.

Wanneer MACD koppelt met BB in Elasticsearch, … PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

In het artikel "Bereken de Bollinger-bandbreedte via Elasticsearch”, BB is gebaseerd op het eenvoudige voortschrijdende gemiddelde (SMA) en de standaardafwijking (SD) van de dagprijzen om de bovenste band (BBU) en de onderste band (BBL) te construeren. De middellijn van BB is de SMA. Volgens de terminologie van MACD BB wordt MACD gebruikt in plaats van prijs. De berekening van BBL en BBU wordt als volgt uitgelegd, waarbij het schuifvenster (venster) 20 of 26 is en de standaardafwijking (n) in de gebruikelijke praktijk 1 of 2 is.

Kortom, MACD, BBU en BBL worden op een kaart uitgezet en gebruikers kunnen de snijpunten van MACD en de twee banden observeren. Wanneer de MACD de BBU doorbreekt, vertoont deze een sterk opwaarts trendsignaal. Op dezelfde manier laat de MACD, wanneer de BBL doorbreekt, een sterk neerwaarts signaal zien. Het is veel gemakkelijker om een ​​diagram te gebruiken om de betekenis te beschrijven. In dit artikel proberen we MACD en BB toe te passen op commissievrije exchange-traded fondsen (ETF's) en concentreren we ons op Elasticsearch als analysetool. In het volgende voorbeeld wordt willekeurig “Fidelity International Multifactor ETF” geselecteerd. Het tickersymbool is FDEV. De gegevens zijn geselecteerd uit het tijdsbereik tussen 1 februari 2021 en 31 mei 2021, verstrekt door IEX, Investors Exchange. De meest gebruikte parameters van MACD zijn 12 voor de korte termijn en 26 voor de lange termijn. Volgens veel internetartikelen is bij het berekenen van BB de periode van SMA 10 en de standaardafwijking van BB 1.
In de onderstaande figuur zijn MACD en zijn BBL, BBU en SMA uitgezet. Als de MACD-waarde boven de BBU ligt en een verhoging is in vergelijking met de waarde in de komende tijdstempel, is het een aquablauwe stip. Als de MACD-waarde boven de BBU ligt en een decrement is, is dit een blauwe stip. Als de MACD-waarde onder de BBL ligt en een afname is, is dit een rode stip. Als de MACD-waarde onder de BBL ligt en een verhoging is, is dit een oranje stip. In andere gevallen is het een grijze stip. Lezers kunnen gemakkelijk zien dat de rood/oranje lijnen onder BBL liggen en de blauw/aquablauwe lijnen boven BBU. Bovendien, wanneer de MACD-waarde van onder nul stijgt en nul overschrijdt (denk aan een bullish signaal gegenereerd door MACD), wordt er in de meeste gevallen een overeenkomstige aquablauwe stip op de voet gevolgd. Op dezelfde manier zal, wanneer de MACD-waarde van boven nul daalt en nul overschrijdt (denk aan een bearish signaal gegenereerd door MACD), een overeenkomstige rode stip volgen. De helling van de lijn geeft het momentum van de trend aan.

Wanneer we echter het punt proberen uit te leggen waarop de MACD-waarde doorbreekt van BBU of BBL in combinatie met typische waarden, lijkt deze niet overeen te komen met de opwaartse of neerwaartse trend van de prijs, zoals weergegeven in de onderstaande figuur. Potentiële tekenen van toegenomen volatiliteit en mogelijke toekomstige handelsmogelijkheden zijn niet eenvoudig vast te stellen en soms is de richting omgekeerd.

Hoewel de meeste handelsplatforms een MACD BB-indicator bieden en dezelfde opmerking geven: “Het is niet geschikt voor beginnende handelaren”, vertoont de Elasticsearch-implementatie een naadloze integratie en is deze gemakkelijk te begrijpen. Stel dat er een Elasticsearch-index is die is gevuld met gegevens, en dat de gebruikte gegevenstoewijzing dezelfde is als beschreven in het vorige artikel. De volgende stappen demonstreren de code van de REST API-aanvraagtekst.

Verzamel alle relevante documenten via de zoekactie

Gebruik een ‘bool’-query met een ‘must’-clausule om documenten te verzamelen met het symbool FDEV en de datum tussen 1 februari 2021 en 31 mei 2021. Vanwege de berekening van het voortschrijdend gemiddelde over 26 handelsdagen worden aanvullende gegevens aangepast voor 1.5 maand (van 15 december 2021 tot 1 februari 2021)

Bereken de dagelijkse typische waarde van het fonds

Gebruik een “date_histogram”-aggregatie, genaamd MACD, met de parameter “field” als “date” en de parameter “interval” als “1d” om elke dag de koersen van het fonds te extraheren. Vervolgens gevolgd door een “scripted_metric” aggregatie, genaamd TP, om de typische prijs te berekenen, die gelijk is aan de gemiddelde prijs van de hoogste, de laagste en de slotkoers.

Extraheer de datum van de emmer

Vanwege de aanvullende gegevens moeten daaropvolgende bewerkingen later het gedeelte buiten bereik filteren. Een “min”-aggregatie met de naam “DateStr” is bedoeld om de datum van de bucket op te halen. Op de Elasticsearch-server wordt de datum opgeslagen in Epoch-tijd. De tijdseenheid is milliseconden en de tijdzone is UTC.

Selecteer de buckets met meer dan 1 document

Om de lege buckets (niet-handelsdagen) eruit te filteren, wordt een ‘bucket_selector’-aggregatie, genaamd STP, gebruikt om buckets te selecteren waarvan het aantal documenten groter is dan 0.

Bereken dagelijks de 12-handelsdag en 26-handelsdag EWMA van de typische waarde

Gebruik een “moving_fn”-aggregatie, genaamd EWMA12, met het parametervenster als 12 en de parameter “buckets_path” als TP.value om de EWMA over 12 handelsdagen van de typische waarde te berekenen. EWMA wordt berekend met behulp van de functie MovingFunctions.ewma met de parameter alpha als 2/(window+1). De EWMA26-aggregatie kan op dezelfde manier worden uitgevoerd.

Bereken MACD

Gebruik een “bucket_script”-aggregatie, genaamd macd, met de parameter “buckets_path” om de resultaten van EWMA12 en EWMA26 op te geven. Vervolgens wordt de MACD-indicator berekend volgens de vergelijking in het script.

Bereken het dagelijkse eenvoudige voortschrijdende gemiddelde over 10 dagen van de typische waarde

Gebruik een 'moving_fn'-aggregatie, genaamd SMA10, met het parametervenster als 10 en de parameter 'buckets_path' als MACD om de 10-daagse SMA van de MACD-waarde te berekenen. SMA wordt berekend met behulp van de ongewogen gemiddelde functie (MovingFunctions.unweightedAvg).

Bereken de dagelijkse standaardafwijking van 10 dagen van de typische waarde

Gebruik een 'moving_fn'-aggregatie, genaamd SD10, met het parametervenster als 10 en de parameter 'buckets_path' als MACD om de 10-daagse MACD-standaardafwijking te berekenen. SD wordt berekend met behulp van de standaardafwijkingsfunctie (MovingFunctions.stdDev).

Bereken MACD BB

Gebruik twee 'bucket_script'-aggregaties, genaamd BBU10 en BBL10, met de parameter 'buckets_path' om de resultaten van SMA10-aggregatie en SD10-aggregatie op te geven. Vervolgens worden de BBL10 en BBU10 berekend op basis van SMA10 met plus of min de waarde van SD10.

Identificeer het type MACD-waarde

a) Gebruik een “afgeleide” aggregatie met de naam MACD_Diff, met de parameter “buckets_path” om de waarde van MACD te specificeren om te bepalen of deze een verhoging of verlaging is van de MACD op de komende tijdstempel.

b) Gebruik een “bucket_script”-aggregatie, genaamd MACDType, met de parameter “buckets_path” om de resultaten van de BBL10-, BBU10-, macd- en MACD_Diff-aggregatie op te geven om het type MACD-waarde te classificeren.

➤ Type 1 als MACD_Diff een verlaging is en macd-waarde < BBL
➤ Type 2 als MACD_Diff een verhoging is en macd-waarde < BBL
➤ Type 3 als MACD_Diff een verhoging is en macd-waarde > BBU
➤ Typ 4 als MACD_Diff een verlaging is en macd-waarde > BBU
➤ Typ 0 voor andere gevallen

Filter de aanvullende documenten voor uitvoer

Gebruik een “bucket_selector”-aggregatie, genaamd SMACD_BB, met de parameter “buckets_path” als “DateStr” om de juiste buckets te selecteren die zijn opgegeven in de “script”-instructie. Het selectiecriterium zijn de buckets met de datum op of na 1 februari 2021 (de tijdperktijd 1612137600000 in milliseconden).

Nadat we de resultaten hebben verzameld, kunnen we de figuren tekenen zoals eerder weergegeven. De puntkleur voor Type 3 is aquablauw, type 4 is blauw, type 1 is rood, type 2 is oranje en de andere zijn grijs.

Lezers kunnen verder verwijzen naar het open-sourceproject op GitHub (MACD_BB)

Opmerkingen:

I. Dankzij IEX (Investors Exchange) die ETF-gegevens levert en ook GitHub die open-source projectopslag biedt.

II. Dit artikel is gebaseerd op een technische gedachte en vormt geen beleggingsadvies. Lezers moeten hun eigen verantwoordelijkheid nemen bij het gebruik ervan.

III. Er kunnen nog steeds fouten in het artikel staan ​​en ik verzoek de lezers dringend mij te corrigeren.

IV. Die lezers die belangstelling hebben, kunnen voor alle basisvaardigheden van Elasticsearch het boek raadplegen dat door de schrijver is geschreven. “Advanced Elasticsearch 7.0”, augustus 2019, Packt, ISBN: 9781789957754.

Source: https://wtwong316.medium.com/when-macd-couples-with-bb-in-elasticsearch-3cca987c0678?source=rss——-8—————–cryptocurrency

Tijdstempel:

Meer van Medium