Diese Strategie verwendet umfassend technische Indikatoren wie Ichimoku Kinko Hyo, Macd, Chaikin Money Flow und Tsi Oscillator, um die Richtung der Marktentwicklung für den kurzfristigen Handel genau zu beurteilen.
Die Strategie verwendet die Tenkan-sen-Linie, Kijun-sen-Linie, Senkou Span A und Senkou Span B-Linien in Ichimoku, um den Intraday-Preistrend zu beurteilen. Gleichzeitig kombiniert sie die Kreuzsignale der schnellen und langsamen gleitenden Durchschnittslinien von Macd und den Geldflussindikator und den Schwingungsindikator, um den Geldzu- und Ausfluss zu bestimmen. Nach dem umfassenden Urteil mehrerer Indikatoren werden die Kauf- und Verkaufsentscheidungen getroffen.
Wenn die Tenkan-sen-Linie über die Kijun-sen-Linie kreuzt, ist der Chikou-Span über der 0-Achse und der Schlusskurs über der Ichimoku-Wolke, ein bullisches Signal. Im Gegenteil, wenn die Tenkan-sen-Linie unter der Kijun-sen-Linie kreuzt, ist der Chikou-Span unter der 0-Achse und der Schlusskurs unter der Wolke, ein bärisches Signal. Gleichzeitig erkennt die Strategie, ob das MACD-Histogramm positiv ist und ob der Chaikin-Geldflussindikator und der TSI-Oszillator in die gleiche Richtung positiv sind. Wenn die Indikatoren in die gleiche Richtung bullisch sind, wird eine Long-Position durch Einkaufen eröffnet, und wenn die Indikatoren in die gleiche Richtung bärisch sind, wird eine Short-Position durch Ausverkaufen eröffnet.
Wenn der Indikator ein Signal ausgibt, das dem vorherigen gegenübersteht, wird ein Umkehrhandel durchgeführt, um die vorherige Position zu ebnen.
Die Verwendung einer Kombination mehrerer Indikatoren verbessert die Richtigkeit des Urteils.
Kurzfristige Operationen verfolgen die Marktschwankungen in Echtzeit.
Kein manueller Eingriff, vollautomatisierter algorithmischer Handel.
Die Kombination von mehreren Indikatoren, die gleichzeitig bullisch oder bärisch sind, birgt das Risiko einer Fehleinschätzung.
Der kurzfristige Handel mit hoher Frequenz hat relativ hohe Provisionsgebühren und es ist schwierig, Trends zu erfassen.
Eine Einstellung des Stop-Loss kann zu größeren Verlusten führen. Angemessene Stop-Loss-Punkte oder bewegliche Stop-Loss-Punkte können basierend auf der ATR festgelegt werden.
Optimierung der Parameterkombinationen, Anpassung der gleitenden Durchschnittsparameter an unterschiedliche Zyklen und Varianten.
Steigern Sie den Stop-Loss-Mechanismus und setzen Sie dynamische Stop-Loss-Linien in Kombination mit dem ATR-Indikator ein.
Erhöhen Sie die Positionsverwaltung, passen Sie dynamisch die Handelsvolumenproportionen an.
Kombination von maschinellem Lernen zur Optimierung von Indikatoren und Signalen.
Diese Strategie nutzt umfassend mehrere technische Indikatoren, um Trendschwankungen in Echtzeit für den Hochfrequenz-Kurzzeithandel zu bestimmen. Obwohl es einige Risiken gibt, kann sie durch Optimierung verbessert werden.
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-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/ // © exlux99 //@version=4 strategy("Ichimoku with MACD/ CMF/ TSI", overlay=true, margin_long=0, margin_short=0) //Inputs ts_bars = input(10, minval=1, title="Tenkan-Sen Bars") ks_bars = input(30, minval=1, title="Kijun-Sen Bars") ssb_bars = input(52, minval=1, title="Senkou-Span B Bars") cs_offset = input(26, minval=1, title="Chikou-Span Offset") ss_offset = input(26, minval=1, title="Senkou-Span Offset") long_entry = input(true, title="Long Entry") short_entry = input(true, title="Short Entry") middle(len) => avg(lowest(len), highest(len)) // Ichimoku Components tenkan = middle(ts_bars) kijun = middle(ks_bars) senkouA = avg(tenkan, kijun) senkouB = middle(ssb_bars) ss_high = max(senkouA[ss_offset-1], senkouB[ss_offset-1]) ss_low = min(senkouA[ss_offset-1], senkouB[ss_offset-1]) // Entry/Exit Signals fast_length = input(title="Fast Length", type=input.integer, defval=17) slow_length = input(title="Slow Length", type=input.integer, defval=28) src = input(title="Source", type=input.source, defval=close) signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 5) sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=true) sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=true) // Calculating fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length) slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length) macd = fast_ma - slow_ma signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length) hist = macd - signal tk_cross_bull = tenkan > kijun tk_cross_bear = tenkan < kijun cs_cross_bull = mom(close, cs_offset-1) > 0 cs_cross_bear = mom(close, cs_offset-1) < 0 price_above_kumo = close > ss_high price_below_kumo = close < ss_low //CMF lengthA = input(8, minval=1, title="CMF Length") ad = close==high and close==low or high==low ? 0 : ((2*close-low-high)/(high-low))*volume mf = sum(ad, lengthA) / sum(volume, lengthA) //TSI long = input(title="Long Length", type=input.integer, defval=8) short = input(title="Short Length", type=input.integer, defval=8) price = close double_smooth(src, long, short) => fist_smooth = ema(src, long) ema(fist_smooth, short) pc = change(price) double_smoothed_pc = double_smooth(pc, long, short) double_smoothed_abs_pc = double_smooth(abs(pc), long, short) tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc) bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and hist > 0 and mf > 0.1 and tsi_value > 0 bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and hist < 0 and mf < -0.1 and tsi_value < 0 strategy.entry("Long", strategy.long, when=bullish and long_entry) strategy.entry("Short", strategy.short, when=bearish and short_entry) strategy.close("Long", when=bearish and not short_entry) strategy.close("Short", when=bullish and not long_entry)