Muchos operadores subjetivos están interesados en el comercio cuantitativo, al principio, comienzan con plena confianza. Después de aprender la gramática básica, las operaciones de datos, la estructura de datos, el control lógico de los lenguajes de programación tradicionales y el código largo y complicado, comienzan a confundirse.
Para ayudarle a comprender rápidamente los puntos clave de esta sección, antes de introducir la programación visual FMZ Quant, vamos a averiguar cuál es la lógica de la estrategia? y tener una comprensión preliminar del concepto de sustantivo en esta sección.
apertura de una posición larga: si actualmente no existe una posición y el precio de cierre es superior a la media móvil de 50 períodos.
Posición corta de apertura: si actualmente no existe una posición y el precio de cierre es inferior a la media móvil de 50 períodos.
Posiciones largas de cierre: si se mantiene actualmente una posición larga y el precio de cierre es inferior a la media móvil de 50 períodos.
Posición corta de cierre: si se mantiene actualmente una posición corta y el precio de cierre es mayor que el promedio móvil de 50 períodos.
Si escribe la lógica de la estrategia anterior en la programación visual, como se muestra a continuación:
Como se muestra anteriormente, todo el proceso de diseño es: establecer variedades de mercado, adquirir una matriz de K-line, adquirir el precio medio de 50 períodos de la línea K permeable, obtener el precio de cierre de la línea K permeable, obtener una matriz de posiciones de tenencia, determinar el estado de la posición de tenencia, juzgar si el precio de cierre es mayor o menor que el promedio móvil y, finalmente, realizar una posición de apertura o cierre.
Aquí hay que prestar atención al concepto de
//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.
arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040},
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]
El código anterior es una matriz de K-línea de un total de tres datos, Hay 3 datos en él: los datos de la anterior línea K permeable, los datos de la línea K permeable, los datos de la línea K actual, y asignó estos valores a la variable
//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.
arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040},
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]
k0_1 = arr[2]; // get the data of current k line, this is the first method
k0_2 = arr[arr.length - 1]; // get the data of current k line, this is the second method
k1 = arr[arr.length - 2]; // get the data of pervious k line
Debemos usar el segundo método (quinta línea), porque hay cientos de datos de K-línea en la realidad, y la nueva K-línea está aumentando continuamente. Así que usted debe obtener la longitud de la matriz primero,
Puede encontrar que estos datos en
//This is a K-line array. There are 3 data in it: the data of the one before pervious K line, the data of the pervious K line, the data of the current K line, and assigned these values to the "arr" variable.
arr = [{"Time":1540137600000,"Open":4013,"High":4116,"Low":4013,"Close":4085,"Volume":4124040},
{"Time":1540224000000,"Open":4087,"High":4106,"Low":4068,"Close":4076,"Volume":3252216},
{Time":1540310400000,"Open":4064,"High":4123,"Low":4050,"Close":4120,"Volume":3642856}]
k0_1 = arr[2]; // get the data of current k line, this is the first method
k0_2 = arr[arr.length - 1]; // get the data of current k line, this is the second method
k1 = arr[arr.length - 2]; // get the data of pervious k line
k1.Close; // get the pervious k line closing price
k2.Time; // get the pervious k line time
k1.Volume; // get the pervious k line trading volume
Con estos conceptos arriba, vamos a escribir un programa de salida
public class HelloWorld {
public static void main(string[] ages) {
system.out.println("hello world!");
}
}
Salida sólo un programa de cadena, necesita cinco líneas de código. Creo que la mayoría de los principiantes sólo saben la palabra en inglés " hola, mundo! " entre paréntesis, y otros están simplemente confundidos como el infierno. Por lo tanto, es mejor utilizar la programación visual como punto de partida.
Este tipo de idea de programación, equipada con una variedad de módulos de control, simplemente arrastrando y soltando, se puede construir la lógica del código, completar el diseño de la estrategia comercial, el proceso es como bloques de construcción.
Como se muestra anteriormente, el mismo programa, la programación visual requiere sólo una línea de
Blockly ((el nombre de esta herramienta de programación visual) no es un juguete de programación, es como una especie de editor, no el tipo de editor disfrazado del sistema operativo, admite muchos elementos básicos de programación, como: variables, funciones, matrices y bloques personalizados fáciles de extender, puede usarlo para completar tareas de programación complejas.
La herramienta de programación visual FMZ Quant
En la interfaz de programación visual de FMZ Quant, hay cientos de módulos comerciales comunes integrados, y más módulos comerciales se agregarán más tarde para apoyar las nuevas ideas y nuevas aplicaciones del comerciante, que serán desarrolladas y mantenidas conjuntamente por los desarrolladores.
Aunque la sintaxis es simple y no pierde rendimiento, puede satisfacer casi todos los desarrollos de estrategias comerciales cuantitativas simples. No importa la función o la velocidad, es tan bueno como los lenguajes de programación regulares como Python y JavaScript. en el futuro, admitirá aplicaciones financieras lógicamente complejas.
Escribe un saludo, programa mundial
Corre, imprime "hola, mundo"
Desde el comienzo de una estrategia completa de programación visual, hasta la introducción y las características del lenguaje de programación visual, le mostramos cómo usar esta herramienta en la plataforma FMZ Quant, y escribimos un ejemplo de " hola mundo ". Sin embargo, necesitamos recordar a todos que como una piedra angular para el comercio cuantitativo, actualmente solo tiene una interfaz API limitada en la plataforma FMZ Quant. Para el comercio cuantitativo, es mejor tratarlo como una herramienta, que para ayudarlo a ordenar la lógica de su estrategia.
La programación visual no es diferente de lo básico de los lenguajes de programación de alto nivel, e incluso algunos lugares son universales. Aprender programación visual es un paso adelante para aprender programación avanzada.
En la plataforma cuántica FMZ de programación visual de la interfaz, utilizar la API y entender lo que significan.
Obtener el precio de apertura más reciente por el lenguaje de programación visual y la salida al registro.