[TOC] ¿Qué quieres decir?
La estrategia de desarrollo de la plataforma de negociación cuantificada de los inventores debe estar relacionada con los parámetros de la estrategia de diseño y la interacción de la estrategia. La plataforma de negociación cuantificada de los inventores se compromete a proporcionar herramientas de negociación cuantificadas fáciles de usar, con funciones potentes y con un diseño de productos e funciones iterativos continuos. Aumentamos aún más la flexibilidad de diseño de los parámetros e interacciones en el diseño de la estrategia mediante la actualización de los "parámetros de la estrategia" y los "controles de interacción".
La variedad de parámetros estratégicos en la cuantificación de los inventores no ha aumentado, y siguen siendo los cinco tipos de parámetros con los que estamos familiarizados:
Entonces seguramente me preguntarán, ¿qué se ha actualizado, añadido u optimizado en la plataforma?
Esta actualización añade la "configuración de componentes" del control de vinculación de parámetros, simplificando las funciones de "grupos" y "dependencias de parámetros" para integrarlas en la "configuración de componentes". La opción de "completar por defecto" / "completar obligatoriamente" se añade para determinar si la política tiene condiciones de ejecución si el parámetro está configurado como "completar obligatoriamente" pero no se escribe un parámetro específico en el control de parámetros cuando se ejecuta la política, en cuyo caso la política no se puede ejecutar. Para que sepas más sobre este cambio de actualización, vamos a hacer una prueba detallada.
Antes de esto, hemos hablado simplemente de las funciones de "completar" / "completar obligatoriamente", pero no las describiremos aquí.
Configurar parámetros que corresponden a las diferentes propiedades, tipos y reglas de los controles con los que están ligados. Los parámetros de tipo numérico (número) son los parámetros de parámetros ligados por defecto a los cuadros de entrada, y se pueden configurar reglas de limitación de datos para los cuadros de entrada que se reciben utilizando los controles "mínimo" y "máximo" en el gráfico.
Además de los controles de caja de entrada por defecto, la plataforma ha añadido:
Los parámetros del tipo Boole son muy especiales, ya que sólo tienen un control correspondiente: el control de interruptor por defecto.
Debido a que los valores de Boole no son verdaderos o falsos, son opciones binarias. Por lo tanto, el control de interruptor es muy adecuado para corresponder a este tipo de parámetros.
En general, los parámetros de tipo de bur en las plataformas se utilizan para controlar si ciertas funciones de política están abiertas o no.
Además de los controles de caja de entrada por defecto, la plataforma ha añadido:
El texto En el "Tipo de componente" seleccione: Texto. El control de cuadro de entrada en la interfaz de política correspondiente al parámetro actual se convertirá en un cuadro de texto más grande. El control de texto se diferencia del control de cuadro de entrada ordinario: el texto que se ingresa en el cuadro de texto puede cambiar de línea, y el cuadro de texto puede ajustar el tamaño del control. El valor de las variables de los parámetros de la interfaz es: strings.
Seleccionador de tiempo En "Tipo de componente", seleccione el control de tiempo. El control de cuadro de entrada en la interfaz de política correspondiente al parámetro actual se convertirá en el control de fecha de tiempo. El "selector de tiempo para el tipo de componente del parámetro de tipo de cadena" es diferente del "selector de tiempo para el tipo de componente del parámetro de tipo de cadena". El tiempo para el parámetro de tipo de cadena tiene una opción de "formato de tiempo" que permite establecer el formato de selección del control: 1, fecha: Cuando el "Formato de tiempo" está configurado como el botón de fecha, el control es un control de selección de tiempo completo para seleccionar años, meses, días, horas, minutos y segundos, que admite un botón para seleccionar el tiempo actual. 2 ̊ Tiempo: Cuando el "Formato de tiempo" está configurado como un timestamp, el control es un control de selección de tiempo de tiempo, hora y segundo. 3 ̊ Mes de año: Cuando el "Formato de tiempo" está configurado para el año lunar de la luna, el control es un control para seleccionar el año, el mes y el tiempo. 4 años: Cuando el "Formato de tiempo" está configurado para el año de nacimiento, el control es un control de selección de tiempo para el año seleccionado. El valor de la variable para el parámetro de la interfaz es: strings (formateado como el tiempo correspondiente).
Seleccionador de colores En el "Tipo de componente" seleccione: Selector de color. El control del cuadro de entrada en la interfaz de política correspondiente al parámetro actual se convertirá en un control de selección de color. Por lo general, se usa para diseñar parámetros para configurar colores. El valor de la variable de los parámetros de la interfaz es: string ((el valor de color correspondiente al color seleccionado, por ejemplo: #7e1717)).
El control por defecto correspondiente a los parámetros de tipo de cuadro de despliegue es el cuadro de despliegue, aunque esta vez hay muchas mejoras a lo que antes era un simple cuadro de despliegue:
Además del control por defecto de la ventana, la plataforma incluye:
Los parámetros del tipo de cadena de cifrado también son especiales, ya que solo tiene un control correspondiente; es el control de caja de entrada de cifrado por defecto.
En la plataforma, los controles de tipo de cadena de cifrado se utilizan generalmente para configurar información sensible, como claves secretas, contraseñas, etc. Los valores de los parámetros que se ingresan se transmiten después del cifrado local.
El valor de las variables de los parámetros de la interfaz es: strings.
Para todos los tipos de parámetros de la interfaz de política anteriores, esta actualización integra las funciones anteriores de "grupos de parámetros" y "dependencias de parámetros" en "configuración de componentes"; todos los parámetros de la interfaz tienen configuración de componentes con "grupos" y "filtros".
过滤器格式: a>b , a==1 , a , !a , a>=1&&a<=10 , a>b
Aquí a, b representan las variables de los parámetros de la interfaz de la estrategia.Si la explicación anterior parece poco intuitiva, la mejor manera de entenderla es usarla en la práctica, probando las funciones de los parámetros:
Por ejemplo, la política de lenguaje JavaScript:
function main() {
Log("---------------------------开始测试数字类型参数---------------------------")
Log("变量pNum1:", pNum1, ", 变量值类型:", typeof(pNum1))
Log("变量pNum2:", pNum2, ", 变量值类型:", typeof(pNum2))
Log("变量pNum3:", pNum3, ", 变量值类型:", typeof(pNum3))
Log("变量pNum4:", pNum4, ", 变量值类型:", typeof(pNum4))
Log("---------------------------开始测试布尔类型参数---------------------------")
Log("变量pBool1:", pBool1, ", 变量值类型:", typeof(pBool1))
Log("变量pBool2:", pBool2, ", 变量值类型:", typeof(pBool2))
Log("---------------------------开始测试字符串类型参数---------------------------")
Log("变量pStr1:", pStr1, ", 变量值类型:", typeof(pStr1))
Log("变量pStr2:", pStr2, ", 变量值类型:", typeof(pStr2))
Log("变量pStr3:", pStr3, ", 变量值类型:", typeof(pStr3))
Log("变量pStr4:", pStr4, ", 变量值类型:", typeof(pStr4))
Log("---------------------------开始测试下拉框类型参数---------------------------")
Log("变量pCombox1:", pCombox1, ", 变量值类型:", typeof(pCombox1))
Log("变量pCombox2:", pCombox2, ", 变量值类型:", typeof(pCombox2))
Log("变量pCombox3:", pCombox3, ", 变量值类型:", typeof(pCombox3))
Log("---------------------------开始测试加密串类型参数---------------------------")
Log("变量pSecretStr1:", pSecretStr1, ", 变量值类型:", typeof(pSecretStr1))
}
La estrategia completa para probar los parámetros:https://www.fmz.com/strategy/455212
El diseño de dependencias de parámetros está oculto en los parámetros anteriores, y muchas políticas requieren que se inicie una serie de configuraciones basadas en un parámetro y se pueden implementar con dependencias similares.
Los inventores de las plataformas de comercio cuantitativo también tienen cinco controles de interacción estratégica, que también se han optimizado y mejorado.
El control interactivo es básicamente compatible con el "configuración de componentes" de los parámetros de la interfaz de la política, con el tipo de componente que se admite además del control de cuadro de entrada por defecto:
La forma de uso coincide con los diferentes tipos de componentes de los parámetros de la interfaz de la política, que no se describen aquí.
Los controles interactivos son básicamente idénticos a los "configuración de componentes" de los parámetros de la interfaz estratégica.
El tipo de componente que se admite además del control de cuadro de entrada por defecto es:
También se ha mejorado el menú de despliegue de los controles interactivos: "Suporte para múltiples opciones", "Default personalizado", opciones para vincular datos específicos, etc.
Además de los componentes de la ventana de bajada por defecto, se añade:
Los controles interactivos de tipo botón no tienen ninguna entrada, y los comandos interactivos enviados al desencadenar solo contienen el nombre del control del botón.
La mejor manera de entender esto es hacer una prueba manual, y aquí también hay una estrategia de prueba.
Hay que tener en cuenta que los controles interactivos no pueden ser probados en el sistema de retroevaluación, solo se pueden crear pruebas de disco real.
function main() {
var lastCmd = ""
while (true) {
var cmd = GetCommand() // 接收交互控件产生的消息
if (cmd) {
Log(cmd)
lastCmd = cmd
}
LogStatus(_D(), lastCmd)
Sleep(500)
}
}
Introduzca información al azar, establezca algunas opciones, y luego haga clic en el botón de control interactivo para generar un mensaje interactivo que la estrategia captura y imprime después del mensaje.
Las estrategias de prueba de controles interactivos completadas:https://www.fmz.com/strategy/455231
La plataforma actualiza los parámetros de la interfaz y el tipo de cuadrícula del control interactivo, el tipo de cuadro descendente, y añade soporte para dos nuevos controles:
2, Configurar pruebas de parámetros con controles de monedas, código de transacción y par de transacciones en los parámetros de la interfaz de la estrategia
function main() {
Log("参数test1使用币种控件选择后,test1的值为:", test1)
Log("参数test2使用交易代码控件选择后,test2的值为:", test2)
}
1, monedas
参数test1使用币种控件选择后,test1的值为: BTC
2, código de transacción (para transacciones)
参数test2使用交易代码控件选择后,test2的值为: ETH_USDT.next_quarter
3, Configurar una prueba de interacción con controles de monedas, códigos de transacción (pares de transacciones) en los controles de interacción de la estrategia:
function main() {
while (true) {
var cmd = GetCommand()
if (cmd) {
Log(cmd)
}
Sleep(2000)
}
}
1, monedas
test1:SOL
2, código de transacción (para transacciones)
test2:XRP_USDT.swap