¿Desarrolla algoritmos comerciales después de volver a probar los datos históricos? ¿O debería buscar a través de datos históricos patrones utilizando un algoritmo?

Es poco probable que los algos desarrollados con minería de datos pura sigan siendo una ventaja para siempre. Funcionan muy bien por un tiempo, luego se detienen. Entonces, si sigue esa ruta, debe tener un monitoreo incorporado para apagar el sistema cuando deja de funcionar.

Aquí hay un ejemplo de algo que desarrolló un amigo (buen comerciante). Se basa en la idea de que los últimos minutos de negociación de futuros de ES tienen un sesgo alcista.

Comercio de la rampa de fin de día (EOD) por Market Sniper

Esta es una ventaja muy sólida basada en una cantidad de datos estadísticamente significativa. Sin embargo, es poco probable que continúe funcionando si cambia el clima del mercado. Lo que quiero decir es que el mercado alcista de los últimos 7 años ha sido benigno para los operadores bursátiles, y lo que viene después probablemente no será tan fácil. No hay una razón real para esta anomalía, es solo “una de esas cosas” que desaparecerá a su debido tiempo.

Si basa su sistema en alguna propiedad conocida de los mercados, las probabilidades son más altas de que sea robusto.

Déjame darte un ejemplo rudimentario de reversión a la media que probablemente funcionaría.

Sabemos que la reversión a la media es bastante fuerte en acciones individuales (a diferencia de FX o futuros). También sabemos que la reversión a la media funciona mejor en la dirección de la tendencia predominante (es decir, ir mucho en un mercado alcista). También sabemos que la reversión a la media es un efecto real pero muy pequeño, por lo que debe apuntar a una ganancia muy pequeña. Por lo general, el primer cierre, o un cierre por encima de un promedio móvil muy cercano, como un EMA 8

Hipótesis: las acciones que bajan en un mercado alcista exhibirán un efecto de reversión medio.

Bajas de existencias: 3 cierres consecutivos más bajos

En un mercado alcista: SP500 está por encima de sus 200 SMA. El stock está por encima de 200 SMA

Compra: al cierre en el tercer cierre inferior consecutivo

Venta: al cierre por encima de EMA (8)

Es muy probable que este simple conjunto de reglas sea un sistema válido.

Obviamente, podría mejorar esto fácilmente, eligiendo un mejor método para describir qué es un mercado alcista (por encima de 200 SMA es algo infantil y simple) y podría mejorar la eficiencia de salida a través de la experimentación y la optimización. También puede elegir una mejor técnica de entrada, pero aún está detrás de una acción que está subiendo, que ha bajado demasiado en un corto período de tiempo.

Estos dos enfoques son muy diferentes. Si elige el segundo método, las probabilidades son mucho mejores de que tenga un sistema real y no solo una anomalía ajustada a la curva.

Entonces para mí el flujo de trabajo es

  1. Desarrollar hipótesis de mercado
  2. Prueba de hipótesis utilizando diagrama de dispersión
  3. Backtests rudimentarios
  4. Optimización e iteración
  5. Pruebas de avance para tamaño pequeño
  6. Comercio de producción

Comencé observando literalmente los diversos mercados de comercio mientras aplicaba las teorías de inversión que había aprendido en la escuela de negocios, y finalmente escribí el modelo estadístico inicial basado en un estudio de Econometría.

A partir de ahí, el algo evolucionó hacia el enfoque que usamos hoy.

More Interesting

¿Cuál es la mejor manera de extrapolar una señal dispersa que proviene de un filtro de Kalman?

¿Cómo podemos demostrar que el reconocimiento de objetos basado en la visión es un problema np completo?

¿Qué es un programa simple de C ++ para insertar un nodo en una lista vinculada?

¿Cuál es el significado del peor tiempo de ejecución de un algoritmo?

¿Qué algoritmos se utilizan para construir árboles filogenéticos?

¿Cuál es la complejidad del tiempo para una solución iterativa de la serie Fibonacci?

¿Qué es un algoritmo eficiente para encontrar una isla de 1s conectados en una matriz de 0s y 1s?

¿Cuál es la mejor manera de reorganizar los datos en la lista para que dos elementos similares no estén uno al lado del otro?

Cómo desarrollar un algoritmo para detectar rangos de negociación horizontales / patrones de consolidación

¿Hay alguna estructura de datos que pueda realizar las funciones de inserción, búsqueda y eliminación en O (log n)?

¿Usar un tipo de inserción de 50 elementos tendrá el mismo tiempo de ejecución que usar un tipo de inserción de 10 elementos 5 veces?

Cómo hacer un sistema de filtrado colaborativo con Django como back-end

¿Por qué hay una necesidad de matrices dinámicas si tenemos matrices de longitud variable?

Cuando se utilizan códigos de corrección de errores (ECC), ¿cómo detecta el algoritmo si los bits de ECC están dañados?

¿Puede alguien ayudarme a preparar un plan para preparar estructuras de datos y algoritmos en un mes de tiempo desde el punto de vista de las entrevistas?