Esta estrategia juzga las tendencias del mercado calculando el cruce entre un indicador de impulso y un índice de miedo, y emite señales de venta cuando los dos indicadores se cruzan específicamente para atrapar recortes bruscos.
Calcule el indicador de impulso de 50 períodos. Representa el cambio de precio en relación con 50 períodos atrás.
Calcula el índice de miedo corregido por 22 períodos. Representa el pánico del mercado a través de la relación de los precios más altos y más bajos.
Cuando el indicador de impulso cruza por debajo del índice de miedo, indica presión a la baja en el mercado.
Si el impulso continúa cayendo en la zona de peligro (entre -5 y 5), se emite una fuerte señal de venta.
El uso del índice de miedo, un indicador del sentimiento del mercado, puede determinar eficazmente los cambios estructurales en el mercado.
El indicador de impulso puede juzgar la velocidad y la magnitud de los cambios de precios y ayudar a determinar los cambios de tendencia.
La combinación de dos tipos diferentes de indicadores puede mejorar la precisión de la identificación de eventos repentinos.
El ajuste de los parámetros permite una adaptación flexible a los diferentes entornos del mercado.
Los cruces entre el índice de miedo y el impulso no garantizan una disminución de todos los niveles, sino que se deben considerar otros indicadores para tomar la decisión final.
No hay un stop loss después de la venta no puede controlar las pérdidas de manera efectiva.
La estrategia sólo es adecuada para capturar choques repentinos.
Establecer un stop loss después de vender para controlar las pérdidas.
Añadir otros indicadores para juzgar y mejorar la fiabilidad de la señal, por ejemplo, volumen, bandas de Bollinger.
Añadir señales de reingreso para permitir que la estrategia ejecute ciclos a largo plazo.
Optimice los parámetros para encontrar las mejores combinaciones de parámetros.
La estrategia emite alertas de declive del mercado a través de cruces del indicador de impulso y el índice de miedo. Puede capturar efectivamente los choques repentinos del mercado. Pero la estrategia solo se adapta al uso a corto plazo sin mecanismos de salida y control de riesgos. Se necesitan mejoras adicionales para que sea una estrategia sostenible a largo plazo.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 2h 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/ // © gary_trades //THIS SCRIPT HAS BEEN BUIL TO BE USED AS A S&P500 SPY CRASH INDICATOR (should not be used as a strategy). //THIS SCRIPT HAS BEEN BUILT AS A STRATEGY FOR VISUALIZATION PURPOSES ONLY AND HAS NOT BEEN OPTIMISED FOR PROFIT. //The script has been built to show as a lower indicator and also gives visual SELL signal on top when conditions are met. BARE IN MIND NO STOP LOSS, NOR ADVANCED EXIT STRATEGY HAS BEEN BUILT. //As well as the chart SELL signal an alert has also been built into this script. //The script utilizes a VIX indicator (marron line) and 50 period Momentum (blue line) and Danger/No trade zone(pink shading). //When the Momentum line crosses down across the VIX this is a sell off but in order to only signal major sell offs the SELL signal only triggers if the momentum continues down through the danger zone. //To use this indicator to identify ideal buying then you should only buy when Momentum line is crossed above the VIX and the Momentum line is above the Danger Zone. //This is best used as a daily time frame indicator //@version=4 strategy(title="S&P Bear Warning", shorttitle="Bear Warning" ) //Momentum len = input(50, minval=1, title="Length") src = input(close, title="Source") bandUpper = input( 5) bandLower = input(-5) // ————— Control plotting of each signal. You could use the same technique to be able to turn acc/dist on/off. showVixFix = input(true) showMomentum = input(true) mom = src - src[len] myAtr = atr(14) plot(showMomentum ? mom : na, color=color.blue, title="MOM") plot(showMomentum ? 0 : na, color=color.silver, title="MOM Zero line", style=plot.style_circles, transp=100) plot(showMomentum ? myAtr : na, color=color.orange, title="ATR", transp=90) //VIX VIXFixLength = input(22,title="VIX Fix Length") VIXFix = (highest(close,VIXFixLength)-low)/(highest(close,VIXFixLength))*100 plot(showVixFix ? VIXFix : na, "VIXFix", color=color.maroon) band1 = plot(showVixFix ? bandUpper : na, "Upper Band", color.red, 1, plot.style_line, transp=90) band0 = plot(showVixFix ? bandLower : na, "Lower Band", color.red, 1, plot.style_line, transp=90) fill(band1, band0, color=color.red, transp=85, title="Background") //Identify Triggers //Back Test Range start = timestamp("America/New_York", 2000, 1, 1, 9,30) end = timestamp("America/New_York", 2020, 7, 1, 0, 0) //Momentum Long1 = mom > bandUpper Short1 = mom < bandLower //VIX Long2 = crossover(mom, VIXFix) Short2 = crossunder(mom, VIXFix) //Warning Alert SellAlert = Short1 alertcondition(SellAlert, title="Sell SPY", message="Warning Selling off {{ticker}}, price= {{close}}") //Entry and Exit if true strategy.entry("SELL", false, when = Short1) strategy.close("SELL", when = Long2)