3.4 Inicio rápido de la programación visual

El autor:La bondad, Creado: 2019-06-25 12:10:36, Actualizado: 2023-11-11 17:02:59

img

Programación visual de inicio rápido

Resumen de las actividades

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.

Estrategia completa

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:

img

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 array, que es una de las estructuras de datos importantes para todos los lenguajes de programación.

//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 arr. Si queremos obtener el último valor de esta matriz (datos de la línea K actual) podemos escribirlo así (ver líneas 4 y 5 ):

//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, arr.length significa obtener la longitud de la matriz, y luego restar 1, que es el último K datos de la línea.

Puede encontrar que estos datos en {} con nombre en inglés se corresponden respectivamente con el significado: el tiempo, el precio de apertura, el precio más alto, el precio más bajo, el precio de cierre, el volumen de operaciones. Si desea obtener el precio de cierre de la línea K anterior, agregue . y luego siga por el valor requerido. Consulte las líneas 8 ~ 10 en el código a continuación.

//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

¿Por qué usar un lenguaje de programación visual?

Con estos conceptos arriba, vamos a escribir un programa de salida hello, world con el lenguaje de programación Java, para sentir la programación tradicional, como se muestra a continuación:

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.

¿Qué es la programación visual?

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.

img

Como se muestra anteriormente, el mismo programa, la programación visual requiere sólo una línea de code.

¿Cuáles son las características de los lenguajes de programación visual?

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 Blockly fue publicada por Google.

img

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.

Cómo usar

img img

Escribe un saludo, programa mundial

img img

Corre, imprime "hola, mundo"

img img

En resumen

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.

Notificación de la siguiente sección

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.

Ejercicios extraescolares

  1. En la plataforma cuántica FMZ de programación visual de la interfaz, utilizar la API y entender lo que significan.

  2. Obtener el precio de apertura más reciente por el lenguaje de programación visual y la salida al registro.


Relacionados

Más.