Die Strategie des Commodity Selection Index (CSI) ist eine kurzfristige Handelsstrategie, die die Marktdynamik verfolgt. Sie identifiziert Rohstoffe mit starker Dynamik durch Berechnung des Trends und der Volatilität von Rohstoffen für den Handel.
Der Kernindikator dieser Strategie ist der CSI-Index, der die Entwicklung und Volatilität der Rohstoffe berücksichtigt.
CSI = K × ATR × ((ADX + gleitender N-Tage-Durchschnitt von ADX) / 2)
Bei K handelt es sich um einen Skalierungsfaktor, bei dem ATR die durchschnittliche Wahre Bandbreite darstellt, die die Marktvolatilität misst. ADX stellt den durchschnittlichen Richtungsindex dar, der den Markttrend widerspiegelt.
Durch die Berechnung des CSI-Indexwerts jeder Ware und den Vergleich mit ihrem einfachen gleitenden Durchschnitt für n Tage wird ein Kaufsignal erzeugt, wenn der CSI höher als sein gleitender Durchschnitt ist, und ein Verkaufssignal erzeugt, wenn der CSI niedriger als sein gleitender Durchschnitt ist.
Die Strategie wählt für den Handel Rohstoffe mit relativ hohen CSI-Indizes aus, da diese Rohstoffe sehr starke Trends und Schwankungen aufweisen, die kurzfristig ein größeres Gewinnpotenzial generieren können.
Diese Strategie hat folgende Vorteile:
Die Strategie birgt auch einige Risiken:
Um Risiken zu kontrollieren, sollten Stop-Loss-Positionen angemessen festgelegt, die Größe einzelner Positionen kontrolliert und die Parameter entsprechend an die unterschiedlichen Marktumgebungen angepasst werden.
Die Strategie kann in folgenden Aspekten optimiert werden:
Die Commodity Momentum Index Strategie realisiert einfachen und schnellen kurzfristigen Handel, indem sie Rohstoffe mit starken Trends und hoher Volatilität auf dem Markt erfasst. Dieser spezialisierte Ansatz zur Verfolgung von Momentum macht seine Signale klar und leicht algorithmisch umzusetzen. Natürlich ist es auch notwendig, auf die Risikokontrolle zu achten und sich ständig zu verbessern und zu aktualisieren, um sich an Veränderungen der Marktbedingungen anzupassen.
/*backtest start: 2023-10-28 00:00:00 end: 2023-11-27 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 20/03/2019 // The Commodity Selection Index ("CSI") is a momentum indicator. It was // developed by Welles Wilder and is presented in his book New Concepts in // Technical Trading Systems. The name of the index reflects its primary purpose. // That is, to help select commodities suitable for short-term trading. // A high CSI rating indicates that the commodity has strong trending and volatility // characteristics. The trending characteristics are brought out by the Directional // Movement factor in the calculation--the volatility characteristic by the Average // True Range factor. // Wilder's approach is to trade commodities with high CSI values (relative to other // commodities). Because these commodities are highly volatile, they have the potential // to make the "most money in the shortest period of time." High CSI values imply // trending characteristics which make it easier to trade the security. // The Commodity Selection Index is designed for short-term traders who can handle // the risks associated with highly volatile markets. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// fADX(Len) => up = change(high) down = -change(low) trur = rma(tr, Len) plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur) minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur) sum = plus + minus 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len) strategy(title="Commodity Selection Index Backtest", shorttitle="CSI Backtest") PointValue = input(50) Margin = input(3000) Commission = input(10) Length = input(14) reverse = input(false, title="Trade reverse") K = 100 * ((PointValue / sqrt(Margin) / (150 + Commission))) xATR = atr(Length) xADX = fADX(Length) nADXR = (xADX + xADX[Length]) * 0.5 xCSI = K * xATR * nADXR xMACSI = sma(xCSI, Length) pos = 0.0 pos := iff(xCSI < xMACSI, 1, iff(xCSI > xMACSI, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xCSI, color=green, title="CSI") plot(xMACSI, color=red, title="CSI SMA")