Documentación

Aplicaciones

Última actualización el 22. 4. 2020 by Mark Fric

Grupos aleatorios

¿Qué son los grupos aleatorios?

Los grupos aleatorios permiten especificar el grupo de bloques que debe utilizarse al generar una estrategia.

Comprender Grupos aleatorios requiere comprensión Plantillas de estrategia primero. Consulta este artículo si no sabes qué son las plantillas de estrategia.

Su elección de Building blocks en StrategyQuant es global - significa que se utiliza para todas las condiciones de entrada y salida.

¿Y si desea especificar con mayor exactitud la selección de bloques a elegir para cada RandomCondition ¿marcador de posición?

Aquí es donde Grupos aleatorios entran en juego. Al hacer clic en RandomCondition en la plantilla de estrategia en AlgoWizard se abrirá su configuración:

Elección aleatoria del grupo

Puede ver que por defecto no se elige ningún grupo aleatorio. Esto significa que StrategyQuant debe generar condiciones a partir de la selección global de bloques de construcción.

Es posible personalizarlo y puedes decirle a SQ X que genere condiciones sólo a partir de tu propio grupo predefinido. Antes de hacer eso tenemos que crear algunos grupos.

 

¿Cómo crear y gestionar grupos de bloques aleatorios?

Puede hacerlo en un Personalice pantalla en AlgoWizard. Haga clic en Personalice de la barra de herramientas superior:

Esto le llevará a un editor de grupos de bloques aleatorios donde podrá crear y modificar sus propios grupos aleatorios:

Por defecto StrategyQuant no tiene ningún grupo aleatorio definido, depende de usted crear algunos grupos si desea utilizarlos.

Es muy sencillo: haga clic en Añadir grupo y rellene el nombre y tipo de grupo.

El tipo determina qué tipo de bloques puede contener el grupo y dónde puede utilizarse:

  • Condiciones - se puede utilizar en el marcador de posición RandomCondition, para crear condiciones para las señales de negociación
  • Valores - El grupo se puede utilizar en el marcador de posición RandomValue para crear precios o valores numéricos, por ejemplo, para el precio de entrada Stop/Limit.
  • Acciones - se puede utilizar en el marcador de posición RandomAction para crear la orden de entrada y otras acciones.

Hemos creado un nuevo grupo Grupo 1pero actualmente está vacío:

Para poder utilizarlo debemos añadir algunos bloques a este grupo. Puede utilizar Añadir bloque o Copiar y pegar algunos bloques existentes del editor AlgoWizard. La elección de bloques funciona de la misma manera que en el editor:

Sólo tiene que buscar y elegir sus señales o combinar indicadores, valores de precios y comparaciones para crear su conjunto de condiciones.

Podemos crear un grupo así:

Nuestra Grupo 1 contiene sólo 4 condiciones posibles: dos para el indicador Aroon y dos para el indicador StdDev.

No olvide hacer clic en Guardar para salvar a este grupo.

 

Utilización de grupos aleatorios en la plantilla de estrategia

Ahora podemos volver a nuestra plantilla de estrategia. Añadiremos otra condición Aleatoria que utilizará el grupo recién creado. Haga clic en Agregar otra condición:

Y luego encontrar Condición aleatoria y configurarlo así:

 

Lo llamaremos AleatorioDeGrupo1 y elegiremos Grupo 1 para un grupo aleatorio.

Si lo has hecho bien debería verse como en la imagen de abajo:

No necesitamos crear un nuevo RandomCondition - podríamos haber editado el existente, pero esto es sólo un ejemplo. Con la configuración actual tenemos dos RandomCondition marcadores de posición que se generarán aleatoriamente en StrategyQuant:

  • RandomCondition(RandomConditionLong) - no tiene ningún grupo especificado, por lo que se generará a partir de los bloques configurados en Configuración completa -> Bloques de construcción. Además, puede utilizar operadores o ambos y puede contener más de una condición, dependiendo de su configuración en Configuración completa -> Qué construir -> # de Condiciones, Periodos
  • RandomCondition(AleatorioDeGrupo1) - utiliza el Grupo 1, por lo que se generará a partir de nuestro grupo recién definido. SQ elegirá aleatoriamente sólo de estos 4 bloques:
    • Aroon(14).Up cruza por encima de Aroon Down
    • Aroon(14).Down cruza por debajo de Aroon Up
    • StdDev(14) cambia de dirección hacia abajo
    • StdDev(14) cambia de dirección hacia arriba

No es necesario seleccionar estos bloques en Configuración completa -> Bloques de construcción, y sólo se generará una condición.

 

Queremos que la señal de entrada Short sea simétrica a la de entrada Long, por lo que deberíamos añadir también una NegatedCondition, de forma que la plantilla resultante tenga este aspecto:

Cuando utilicemos esta plantilla para la generación de estrategias en SQ X generará las condiciones para las señales de entrada

 

Generación de parámetros en grupos aleatorios

Si utiliza el grupo Aleatorio en su plantilla de estrategia, su contenido tendrá prioridad sobre su configuración en Bloques de construcción. Si el marcador de posición dado debe generarse utilizando el grupo aleatorio, entonces se generará utilizando los bloques de ese grupo - y estos bloques NO NECESITAN estar seleccionados en Configuración del constructor -> Bloques de construcción.

Además, los bloques se generarán de la forma especificada en el grupo aleatorio. Si utiliza valores de parámetros fijos en sus bloques, sólo se utilizarán estos valores fijos.

Un ejemplo de grupo aleatorio MiGrupo:

Ejemplo de grupo aleatorio

 

Este grupo contiene dos bloques:

  • CCI > 0
  • El RSI está subiendo

Usted puede ver que CCI se define con un período fijo 18, y RSI utiliza período definido al azar. Esto significa que cuando usted va a generar estrategias utilizando este grupo:

  • siempre que SQ decida utilizar CCI > 0 siempre utilizará el periodo fijo 18, por lo que la condición siempre será: CCI(18) > 0
  • siempre que SQ decida utilizar El RSI está subiendo generará el periodo RSI aleatoriamente usando su configuración, por lo que puede generar condiciones como: RSI(20) está subiendo, RSI(50) está subiendoetc.

Nota - establece siempre los parámetros de los bloques en los grupos Aleatorios en aleatorio si quieres que se generen aleatoriamente.

¿Le ha resultado útil este artículo? El artículo era útil El artículo no era útil

Suscríbase a
Notificar a
7 Comentarios
Más antiguo
Más reciente Más votados
Feedbacks de Inline
Ver todos los comentarios
劉以撒
3. 12. 2021 12:44 pm

Falta la última foto

tomas262
Admin
Responder a  劉以撒
3. 12. 2021 8:24 pm

Gracias, lo he arreglado

Emmanuel
13. 4. 2022 16:59

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Esto es exactamente lo que estaba buscando !!!!!!!!!!!!!!!!!!!
¡¡¡¡¡¡¡¡¡¡¡¡¡Esto es excelente !!!!!!!!!!!!!
Gracias a todos en SQX 🙂 .

Emmanuel
19. 4. 2022 7:57 pm

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Esto es realmente una idea impresionante !!!!!!!!!!!!!!!!!!

Emmanuel
19. 4. 2022 8:08 pm

en Custom Project, ¿tenemos una tarea para cargar un grupo de bloques de construcción?

Emmanuel
2. 5. 2022 9:26 am

¿Se puede precisar el formato de los bloques? ¿Qué tipo de bloque se acepta? Cuando lo utilizo, recibo un error. SQX no funciona con mis bloques. ¿Hay algún bloque que no sea compatible?

Emmanuel
Responder a  Emmanuel
3. 5. 2022 7:19 pm

el bloque Equals y no Equals está dando algún error