Backtesting de la estrategia del índice Smart Fund


Fecha de creación: 2023-09-21 21:14:02 Última modificación: 2023-09-21 21:14:02
Copiar: 0 Número de Visitas: 1107
1
Seguir
1617
Seguidores

Descripción general

Esta estrategia es una estrategia de negociación cuantitativa basada en el índice de capital inteligente (SMI). El índice refleja el funcionamiento de los fondos de las instituciones para juzgar las posibles tendencias futuras del mercado mediante la observación de los cambios en el indicador SMI.

Principio de estrategia

El indicador central de la estrategia es el Índice de Finanzas Inteligentes (SMI). Su fórmula de cálculo es:

SMI = SMA (precio de cierre de hoy - precio de apertura de hoy + precio de cierre de ayer - precio de apertura de ayer, N)

donde N es el número de periodos de los parámetros.

El SMI refleja el flujo de entrada y salida de fondos de la institución. Cuando el SMI aumenta, significa que el flujo de fondos neto es positivo para el capital inteligente; cuando el SMI disminuye, significa que el flujo de fondos neto es negativo para el capital inteligente.

La estrategia de negociación es cuando el SMI sube más y el SMI baja menos. De esta manera, se sigue la dirección de operación del dinero inteligente.

Ventajas estratégicas

  • Capturar el dinero de las instituciones basado en un índice de capital inteligente
  • El cálculo del SMI es simple y fácil de implementar
  • Reflejo de los sentimientos de los inversores y sensibilidad a los cambios en el mercado
  • Se puede usar en múltiples variedades y marcos temporales
  • Parámetros optimizados y adaptabilidad

Riesgo estratégico

  • El índice SMI en sí mismo podría estar rezagado
  • Basado en un solo indicador, es fácil de engañar
  • No se puede diferenciar el mercado de la plomería, se necesita un análisis técnico
  • No hay un control efectivo de los pérdidas y hay un gran retroceso
  • Optimización de parámetros para variedades y ciclos

Los siguientes pasos pueden ayudar a reducir el riesgo:

  • Optimización de los parámetros de ciclo del SMI
  • Confirmación en combinación con indicadores gráficos
  • Establezca reglas de alto riesgo para controlar el riesgo
  • Optimización de parámetros según las diferentes variedades y ciclos
  • Ajuste adecuado del sistema de gestión de posiciones

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Prueba para calcular el número óptimo de ciclos de SMI

  2. Filtrado de indicadores como MACD basado en señales SMI

  3. Añadir un stop móvil o un stop fijo

  4. Encuentra el parámetro óptimo 123 de acuerdo a las diferentes variedades

  5. Análisis de diferentes ciclos, como los fondos de cobertura, para encontrar el mejor ciclo

  6. El tamaño de las posiciones se ajusta según la volatilidad del mercado

Resumir

Esta estrategia refleja la emoción de los participantes en el mercado a través de un índice de capital inteligente, para realizar operaciones de seguimiento de tendencias. Esto puede capturar la dirección de operación de los fondos de las instituciones a tiempo. Sin embargo, el SMI en sí mismo puede estar rezagado y necesita ser optimizado; y depender solo de un indicador individual es fácil de ajustar, requiere la adición de indicadores de tecnología auxiliar para filtrar.

Código Fuente de la Estrategia
/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 01/08/2018
// Attention:
// If you would to use this indicator on the ES, you should have intraday data 60min in your account.
//
// Smart money index (SMI) or smart money flow index is a technical analysis indicator demonstrating investors sentiment. 
// The index was invented and popularized by money manager Don Hays.[1] The indicator is based on intra-day price patterns.
// The main idea is that the majority of traders (emotional, news-driven) overreact at the beginning of the trading day 
// because of the overnight news and economic data. There is also a lot of buying on market orders and short covering at the opening. 
// Smart, experienced investors start trading closer to the end of the day having the opportunity to evaluate market performance.
// Therefore, the basic strategy is to bet against the morning price trend and bet with the evening price trend. The SMI may be calculated 
// for many markets and market indices (S&P 500, DJIA, etc.)
//
// The SMI sends no clear signal whether the market is bullish or bearish. There are also no fixed absolute or relative readings signaling 
// about the trend. Traders need to look at the SMI dynamics relative to that of the market. If, for example, SMI rises sharply when the 
// market falls, this fact would mean that smart money is buying, and the market is to revert to an uptrend soon. The opposite situation 
// is also true. A rapidly falling SMI during a bullish market means that smart money is selling and that market is to revert to a downtrend 
// soon. The SMI is, therefore, a trend-based indicator.
// Some analysts use the smart money index to claim that precious metals such as gold will continually maintain value in the future.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Smart Money Index (SMI) Backtest", shorttitle="Smart Money Index")
Length = input(18, minval=1)
reverse = input(false, title="Trade reverse")
xcloseH1 = security(syminfo.tickerid, "60", close[1])
xopenH1 =  security(syminfo.tickerid, "60", open[1])
nRes = nz(nRes[1], 1) - (open - close) + (xopenH1 - xcloseH1)
xSmaRes = sma(nRes, Length)
pos = iff(xSmaRes > nRes, 1,
       iff(xSmaRes < nRes, -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(xSmaRes, color=red, title="SMASMI")
plot(nRes, color=green, title="SMI")