Diese Strategie berechnet das höchste und niedrigste Transaktionsvolumen über einen bestimmten letzten Zeitraum, um einen anpassungsfähigen Schwankungsbereich zu bilden. Wenn das Transaktionsvolumen des aktuellen Zyklus diesen Bereich durchbricht, werden Handelssignale generiert. Die Signalrichtung wird durch den Yin Yang-Candlestick bestimmt, eine einfache und effektive Strategie, um plötzliche große einzelne Transaktionen auf dem Markt zu verfolgen.
Die Kernlogik besteht darin, die höchsten und niedrigsten Werte der positiven und negativen Transaktionsvolumina in den jüngsten N-Zyklen zu berechnen, um einen anpassungsfähigen Schwankungsbereich zu bilden.
Der spezifische Berechnungsverfahren ist:
Die wichtigsten Vorteile dieser Strategie sind:
Die Strategie birgt auch einige Risiken:
Die Anpassung der Zyklusparameter und die Einbeziehung anderer Indikatoren für die Filterung können optimiert werden.
Die Strategie kann auf verschiedene Weise optimiert werden:
Die Strategie ist im Großen und Ganzen einfach und praktisch. Durch die Kombination von adaptiver Reichweite und Volumenpreisanalyse kann sie einseitige explosive Märkte effektiv erfassen. Es besteht jedoch auch ein gewisses Risiko für falsche Signale, die eine angemessene Parameteränderung und ergänzende Werkzeuge erfordern, bevor sie maximale Wirkung erzielen kann.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © EvoCrypto //@version=4 strategy("Ranged Volume Strategy - evo", shorttitle="Ranged Volume", format=format.volume) // INPUTS { Range_Length = input(5, title="Range Length", minval=1) Heikin_Ashi = input(true, title="Heikin Ashi Colors") Display_Bars = input(true, title="Show Bar Colors") Display_Break = input(true, title="Show Break-Out") Display_Range = input(true, title="Show Range") // } // SETTINGS { Close = Heikin_Ashi ? security(heikinashi(syminfo.tickerid), timeframe.period, close) : close Open = Heikin_Ashi ? security(heikinashi(syminfo.tickerid), timeframe.period, open) : open Positive = volume Negative = -volume Highest = highest(volume, Range_Length) Lowest = lowest(-volume, Range_Length) Up = Highest > Highest[1] and Close > Open Dn = Highest > Highest[1] and Close < Open Volume_Color = Display_Break and Up ? color.new(#ffeb3b, 0) : Display_Break and Dn ? color.new(#f44336, 0) : Close > Open ? color.new(#00c0ff, 60) : Close < Open ? color.new(#000000, 60) : na // } //PLOTS { plot(Positive, title="Positive Volume", color=Volume_Color, style=plot.style_histogram, linewidth=4) plot(Negative, title="Negative Volume", color=Volume_Color, style=plot.style_histogram, linewidth=4) plot(Display_Range ? Highest : na, title="Highest", color=color.new(#000000, 0), style=plot.style_line, linewidth=2) plot(Display_Range ? Lowest : na, title="Lowest", color=color.new(#000000, 0), style=plot.style_line, linewidth=2) barcolor(Display_Bars ? Volume_Color : na) // } if (Up) strategy.entry("Long Entry", strategy.long) if (Dn) strategy.entry("Short Entry", strategy.short)