La estrategia permite realizar operaciones de corto plazo en bitcoin mediante el cálculo del índice de verdadera fuerza de bitcoin (TSI) para identificar tendencias en el mercado y, en combinación con el filtro del indicador RSI, hacer más oportunidades de corto plazo. La estrategia es adecuada para los inversores que realizan operaciones programadas en el mercado de bitcoin según las circunstancias.
La estrategia se basa principalmente en el indicador de fortalezas y debilidades reales (TSI). El indicador TSI mide el tamaño y la dirección de los valores absolutos de los cambios en los precios a través de la tasa de cambio de precios de doble deslizamiento, para identificar la fuerza absoluta de las subidas y bajadas de los precios.
La estrategia también combina el indicador RSI para filtrar la señal de transacción TSI, generando una señal de bloqueo solo cuando el RSI es mayor que 50 y una señal de bloqueo solo cuando el RSI es menor que 50, para filtrar parte de la señal falsa.
La estrategia tiene las siguientes ventajas:
La estrategia también tiene los siguientes riesgos:
Se puede reducir el efecto de las ondas de choque y el problema del retraso mediante la relajación adecuada de las condiciones de filtración del RSI, la reducción de los ciclos de EMA, etc. Al mismo tiempo, se optimiza la estrategia de stop loss y se controla estrictamente el riesgo de una sola operación.
La estrategia puede ser optimizada en los siguientes aspectos:
Optimiza los parámetros del TSI y el RSI para encontrar la combinación óptima de parámetros. Puede ajustar los períodos de EMA más largos, los parámetros del RSI, etc.
Se pueden agregar otros indicadores para formar modelos multifactoriales. Por ejemplo, se pueden agregar indicadores como MA, KD, etc., para aprovechar al máximo las ventajas de cada indicador.
Optimización de las condiciones de entrada, evitar el impacto de la bolsa de divisas en el aire, el impacto de la bolsa de divisas en el aire. Se puede juzgar la dirección de acuerdo con la tendencia del gran ciclo.
Optimización de las estrategias de parada de pérdidas, como la parada de movimiento, la parada de tiempo, la parada de ruptura, etc.
Optimización de las condiciones de salida, para evitar que los jugadores se retiren demasiado pronto o demasiado tarde. Se puede combinar con el índice de fluctuación para determinar cuándo salir del campo.
Optimización de la variedad y el momento de la operación, con concentración en la variedad y el momento de la operación más efectivos.
La estrategia identifica las tendencias a corto plazo de bitcoin a través de indicadores de fortaleza real y debilidad, y se puede filtrar con señales de filtración de indicadores RSI para realizar operaciones programadas de bitcoin de manera efectiva. La estrategia tiene la ventaja de identificar tendencias sensibles, eliminar el ruido, pero también existe un cierto problema de retraso y riesgo de negociación.
/*backtest
start: 2022-09-30 00:00:00
end: 2023-10-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// strategy("True Strength Indicator BTCUSD 15p", shorttitle="TSI BTCUSD 15p",initial_capital=1000, commission_value=0.15, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity)
//BASED ON True Strength Indicator MTF
resCustom = input(title="Timeframe", defval="15" )
long = input(title="Long Length", defval=25)
short = input(title="Short Length", defval=13)
signal = input(title="Signal Length", defval=13)
price = request.security(syminfo.tickerid,resCustom,close)
double_smooth(src, long, short) =>
fist_smooth = ta.ema(src, long)
ta.ema(fist_smooth, short)
pc = ta.change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(math.abs(pc), long, short)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi2=ta.ema(tsi_value, signal)
plot(tsi_value, color=color.lime,linewidth=2)
plot(tsi2, color=color.red,linewidth=2)
rsiserie = ta.rsi(price,7)
cciserie = ta.cci(price,14)
stochserie = ta.stoch(price,14,3,3)
plot(rsiserie,color=color.purple)
hline(30, title="Zero")
hline(50, title="Zero",linestyle=hline.style_solid, linewidth=2)
hline(70, title="Zero")
buy = ta.crossover(tsi_value, tsi2) //and rsiserie[1]<25 //and cciserie<-100 and stochserie<20
sell = ta.crossunder(tsi_value, tsi2) //and rsiserie[1]>85 //and cciserie>100 and stochserie>80
alertcondition(buy, title='TSI system', message='Buy signal at!' )
alertcondition(sell, title='TSI system', message='Sell signal at!' )
strategy.entry("BUY", strategy.long, 1, when = buy)
strategy.entry("SELL", strategy.short, 1, when = sell )
greentsi =tsi_value
redtsi = tsi2
bgcolor( greentsi>redtsi and rsiserie > 50 ? color.lime : na, transp=90)
bgcolor( greentsi<redtsi and rsiserie < 50 ? color.red : na, transp=90)
yellow1= redtsi > greentsi and rsiserie > 50
yellow2 = redtsi < greentsi and rsiserie < 50
bgcolor( yellow1 ? yellow : na, transp=80)
bgcolor( yellow2 ? yellow : na, transp=50)
bgcolor( yellow1 and yellow1[1] ? yellow : na, transp=70)
bgcolor( yellow2 and yellow2[2] ? yellow : na, transp=70)
bgcolor( rsiserie > 70 ? color.lime : na, transp=60)
bgcolor( rsiserie < 30 ? color.red : na, transp=60)