Cómo crear sistemas de autooptimización en ProRealTime - Parte 1

Comienzo de la concepción de los sistemas de autooptimización de la IA

Introducción

Todo esto comenzó al ver el Indicador Robotrader producido por Autotrading.it y preguntarse cómo lo hizo y luego pasar por investigación de la optimización de los sistemas y añadir precisión a los sistemas

En este post/vídeo construyo el Indicador de Concepto AI hasta un punto en el que el sistema es capaz de realizar cinco simulaciones de operaciones, medir su rendimiento y luego elegir las variables óptimas para el período de revisión.

Construí los sistemas mientras realizaba el vídeo, por lo que hay algunos puntos que se alargan más de lo que podrían haberlo hecho de otro modo, pero sugiero que se vea el vídeo en su totalidad, se haga una pausa y se asegure de que se entiende lo que estoy tratando de transmitir. Como siempre, por favor, utilice los comentarios a continuación, ya que esto es en mi mente la pieza más importante de la investigación que he completado hasta la fecha

Esta es la primera parte, y en futuros posts se añadirán más variables de optimización, se introducirá el concepto de uso de bucles y se complicarán las cosas, por lo que es muy importante que tengamos las bases sobre las que construir.

Construir un sistema de autooptimización

El vídeo que aparece a continuación se ha subido en 2K para mostrar el mayor detalle posible

Concepto global:

1 Convierte las entradas y salidas del sistema en una señal

2 Medir la variación del precio entre la entrada y la salida para determinar el beneficio

3 Vuelve a probar utilizando diferentes variables para las entradas y salidas

4 Definir un periodo de revisión

5 Elegir las mejores variables dentro del período de observación para las entradas y salidas en el sistema en vivo

6 Deja que el sistema se ejecute realizando las simulaciones en cada barra, eligiendo las mejores variables y auto optimizando

En el ejemplo siguiente se muestra el sistema original en la parte superior con el sistema AI Concepting debajo (con 5 simulaciones), debajo se puede ver que el valor del take profit varía automáticamente a través del back test

Sistemas:

MOMENTUM.STRATEGY.DAX.10M V2 - Sistema original

Mod. de optmización - Sistema con dos simulaciones de Take Profit

Optmisation Mod 5 Vars - Sistema con cinco simulaciones de Take Profit

Optmisation Mod 5 Vars V2 - Se ha añadido la instrucción de las barras de precarga para permitir las pruebas de demostración

Resultados:

Se puede ver en este ejemplo al menos que el Concepto AI con cinco simulaciones de la toma de beneficios es alrededor de 10% más rentable que el sistema base que considero un éxito

Un factor que encontré al hacer las pruebas fue que cuando realicé la misma prueba con un rango más amplio de valores para las simulaciones esto fue perjudicial, para la prueba anterior el valor fue de 5% del valor original de la prueba beck como máximo. En las pruebas iniciales utilizando +/- 10% como rango se obtuvo un mal resultado

Puede ser que esto sea exclusivo del sistema, pero mi sensación en este momento es que en este ejemplo en el que tenemos un sistema impreciso (el stop loss y el take profit son valores de puntos codificados sin ninguna razón para ellos que no sea una prueba retrospectiva) que las ganancias se pueden hacer dentro de un rango alrededor del ideal general de la prueba retrospectiva utilizando tantos datos como sea posible, creando un mejor promedio dinámico

Los próximos pasos serán añadir más optimizaciones, tanto en términos de número de simulaciones como de variables optimizadas. Al igual que con la investigación anterior, será muy interesante ver cómo funciona el sistema de autooptimización dentro de un par de meses en comparación con el sistema base.

También será vital comenzar a utilizar bucles y algunas técnicas más avanzadas para manejar las simulaciones, ya que para probar cinco valores de toma de ganancias y cinco valores de pérdida de parada se necesitarían veinticinco simulaciones, lo que rápidamente se convertiría en algo engorroso, tanto en términos de codificación, como de velocidad de las pruebas retrospectivas y, potencialmente, de tiempo de espera del código al pasar a las pruebas de demostración.

Dicho esto, este es un paso importante en el camino

En el siguiente vídeo hablo de los resultados y de los próximos pasos a dar en el desarrollo de sistemas de auto-optimización/AI para ProRealTime

 

' Foros ' Cómo crear sistemas de autooptimización en ProRealTime - Parte 1

Etiquetado: 

  • Este debate tiene 0 respuestas, 1 mensaje y ha sido actualizado por última vez el hace 2 meses, 2 semanas por Ruark Baker.
Viendo 1 entrada (de un total de 1)
Viendo 1 entrada (de un total de 1)
  • Debes estar registrado para responder a este debate.