0
Seguir
72
Seguidores

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla

Creado el: 2019-06-25 15:48:58, Actualizado el: 2023-10-31 21:01:08
comments   2
hits   11496

rrada

BPK compró en posiciones cerradas y compró en posiciones abiertas (de la mano de la contra) Ejemplo: CLOSE>MA ((CLOSE,5), BPK; // precio de cierre es mayor que la media de 5 períodos, borrar la posición vacía, y luego comprar la posición.

SPK vende sus posiciones cerradas y sus posiciones abiertas. Ejemplo: CLOSE

CLOSEOUT: para eliminar todas las posiciones, se recomienda usarlo en el modelo de pérdidas y ganancias. Ejemplo: CLOSEOUT; para eliminar posiciones en todas las direcciones.

Las API de lenguaje JavaScript más usadas

Antes de hablar de las API del lenguaje JavaScript, veamos cómo es la estructura de código comúnmente utilizada y qué funciones contiene, lo que le ayudará a comprender mejor las API, vea el siguiente ejemplo: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 2-10 Ejemplos de código JavaScript

El código es el siguiente: Las variables creadas en el lenguaje JavaScript se suelen denominar variables de declaración de la etiqueta Etiqueta:

En el lenguaje JavaScript, se asigna un valor a una variable de la izquierda con un símbolo equivalente, es decir, el valor de la derecha de = . La barra de código azul de exchange es el objeto de la bolsa, aquí la bolsa se refiere a la compañía de futuros que usted ha configurado, es un formato fijo, es decir, debe especificar el objeto de la bolsa cuando se llama a la API del lenguaje JavaScript.

El código verde es la API del lenguaje JavaScript, y cuando lo llamamos, en realidad es una función en un objeto de la bolsa. Tenga en cuenta que el punto detrás del código azul también es un formato fijo.

A continuación, mostramos algunas API de lenguaje JavaScript que se utilizarán en el futuro, a través de ejemplos, para entender la estructura básica del código. SetContractType (Tipo de contrato de la variedad de la variedad de la variedad de la variedad de la variedad de la variedad de la variedad) Ejemplo: exchange.SetContractType ((“rb1905”); // el tipo de transacción establecido es el aluminio de acero en espiral 1905

GetTicker obtiene datos de ticks Ejemplo: exchange.GetTicker ((); // Obtener los datos de las tiquetas

GetRecords para obtener datos de línea K Ejemplo: exchange.GetRecords ((); // Obtenga datos de línea K

Comprar y vender Ejemplo: exchange.Buy ((5000, 1); // Comprar una mano por el precio de 5000 yuanes

Vender y comprar Ejemplo: exchange.Sell ((5000, 1); // Vender una mano por el precio de 5000 yuanes

La barra GetAccount para obtener información de la cuenta Ejemplo: exchange.GetAccount ((); // Obtener información de la cuenta

La barra GetPosition tiene acceso a la información sobre las posiciones. Ejemplo: exchange.GetPosition(); // Obtener información sobre las posiciones

Configuración de la barra de SetDirection para hacer más tipos de órdenes de descuento Ejemplo: exchange.SetDirection ((“buy”); // configura el tipo de orden para comprar y abrir más posiciones exchange.SetDirection ((“closebuy”); // establece el tipo de orden siguiente para vender una posición cerrada exchange.SetDirection ((“sell”); // configura el tipo de orden siguiente para vender una posición abierta exchange.SetDirection ((“closesell”); // establece el tipo de orden para comprar posiciones en blanco

El botón Log escribe un mensaje en el registro Ejemplo:Log ((hello, worle); // Exportahello world en el registro

La barra de Sleep hace que el programa se detenga por un tiempo. Ejemplo:Sleep(1000); // hacer que el programa se detenga 1 segundo

Tal vez algunos pequeños socios se preguntarán, ¿cómo recordar tantas APIs? En realidad, no es necesario memorizarlas, ya que el inventor de la cuantificación tiene un conjunto completo de documentación de la API. Al igual que el diccionario de búsqueda, cuando lo use, lo que necesita es una búsqueda directa.

Resumen

Estas son las APIs más usadas en la transacción cuantitativa, que básicamente incluyen: obtención de datos, cálculo de datos, compra y venta de pedidos, lo suficiente para hacer frente a una simple estrategia de transacción cuantitativa, por supuesto, si desea escribir una estrategia más compleja, debe ir al sitio web oficial de la herramienta cuantitativa del inventor para obtenerla.

Trabajos extraescolares

  1. Intente escribir una oración de Mac con una línea media de 5 periodos y una línea media de 10 periodos.
  2. Intente obtener la información de su cuenta en el lenguaje GetAccount en JavaScript y imprima el registro con Log.

Sección de adelanto

La programación es como montar un LEGO, la API es como montar las piezas de un LEGO, y el proceso de programación consiste en juntar las piezas de un LEGO en un juguete entero. En el siguiente capítulo, voy a enseñarles a montar una estrategia de comercio cuantitativo entera con una API de Mac.

2.4 Cómo escribir estrategias en el sistema de inventores cuantitativos

Resumen

Después de haber aprendido los pasos anteriores, ahora puede escribir una estrategia de comercio cuantitativa. Este será el paso más importante para pasar de la negociación manual a la negociación cuantitativa. En realidad, no es tan misterioso, la estrategia de escritura es simplemente transformar su idea en código.

Estoy listo.

En primer lugar, abra el sitio web oficial de la herramienta de cuantificación de desarrolladores expertos, haga clic en la barra de la política de archivos y en la barra de la nueva política de creación, tenga en cuenta que antes de comenzar a escribir el código, debe seleccionar el idioma de Mac o el lenguaje JavaScript en el menú de descarga del lenguaje de programación. Por supuesto, la plataforma también admite Python, C ++ y lenguajes de visualización.

Ideas estratégicas

En el capítulo anterior, se ha presentado una estrategia para romper la línea media del precio. Es decir, si el precio es superior al precio promedio de los últimos 10 días, se compra, si el precio es inferior al precio promedio de los últimos 10 días, se vende.

En primer lugar, elegir una media periódica más grande para determinar la dirección de la tendencia, que al menos ha filtrado casi la mitad de las señales de ruptura falsa, aunque la media periódica más grande es lenta, pero será más estable. Luego, para aumentar nuevamente la tasa de éxito de la entrada, agregue una condición, la media periódica más grande es al menos hacia arriba.

La lógica estratégica

Con estas ideas y estrategias, podemos intentar construir una lógica para la estrategia. La lógica aquí no es para calcular las leyes de funcionamiento de los cuerpos celestes, no es tan compleja.

La apertura de una posición de más de una persona: Si no hay posición en ese momento y el precio de cierre es mayor que el promedio a corto plazo y el precio de cierre es mayor que el promedio a largo plazo y el promedio a corto plazo es mayor que el promedio a largo plazo y el promedio a largo plazo es al alza.

Posiciones en blanco: Si no hay posición en el momento y el precio de cierre es menor que el promedio a corto plazo y el precio de cierre es menor que el promedio a largo plazo y el promedio a corto plazo es menor que el promedio a largo plazo y el promedio a largo plazo es bajista.

Posiciones cerradas: Si tiene más de una opción en el momento y el precio de cierre es menor que el promedio a largo plazo, o el promedio a corto plazo es menor que el promedio a largo plazo, o el promedio a largo plazo está bajando.

Posicionamiento en blanco: Si actualmente tiene boletos en blanco y el precio de cierre es mayor que el promedio a largo plazo, o el promedio a corto plazo es mayor que el promedio a largo plazo, o el promedio a largo plazo está en alza.

Esta es la parte lógica de toda la estrategia de trading cuantitativo, y si convertimos la lógica de la estrategia en texto a código, incluirá: la obtención de tendencias, el cálculo de indicadores, el pedido de compra y venta, los tres pasos.

Estrategias para el lenguaje Mac

En la estrategia de comercio cuantitativo, lo único que necesitamos es el precio de cierre. En el lenguaje Mac, la API para obtener el precio de cierre es: CLOSE, es decir, solo tienes que usar el código y escribir CLOSE para obtener el precio de cierre de la última línea K.

Y luego tenemos el cálculo de los indicadores, y en esta estrategia de comercio cuantitativo, en total usamos dos técnicas, es decir, la media a corto plazo y la media a largo plazo, y supongamos que la media a corto plazo es la media a 10 ciclos, y la media a largo plazo es la media a 50 ciclos, entonces ¿cómo podemos codificar la media a 10 ciclos y la media a 50 ciclos? El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 2-11 Código de política de lenguaje de Mac

En el comercio manual, podemos ver de un vistazo si la media de 50 ciclos sube o baja, pero ¿cómo lo expresamos en código? Piense detenidamente, para juzgar la media de 50 ciclos sube, no es que el promedio de 50 ciclos de la línea K actual sea mayor que el promedio de 50 ciclos de la línea K superior, y que el promedio de 50 ciclos de la línea K superior sea mayor que el promedio de 50 ciclos de la línea K superior. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 2-12 Código de línea media para el juicio de lenguaje Mac

Observe las líneas 8 y 9 del gráfico, con el código de color rojo amarillo AND , que en el lenguaje de Mac significa y . Por ejemplo: la línea 9 se traduce al chino como: si el promedio de 50 ciclos de la línea K actual es mayor que el promedio de 50 ciclos de la línea K de la raíz superior, y el promedio de 50 ciclos de la línea K de la raíz superior es mayor que el promedio de 50 ciclos de la línea K de la raíz superior, entonces calcule como ; de lo contrario, calcule como y asigne el resultado a MA50_ISUP .

El último paso es el pedido de compra y venta, sólo se necesita en la parte posterior del código de lógica de compra y venta, llamando a la API de pedido de herramientas de cuantificación del inventor para poder ejecutar la operación de compra y venta. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 2-13 Código de comercio de la lengua Mac

En las líneas 13 y 14 del gráfico, el código de color rojo es OR, que en el idioma chino significa o . Por ejemplo, la línea 13 se traduce al chino como: si el valor de cierre de la línea K actual es menor que el promedio de 50 ciclos de la línea K actual, o si el promedio de 10 ciclos de la línea K actual es menor que el promedio de 50 ciclos de la línea K actual, calcule el valor como o , y ordene inmediatamente; de lo contrario, calcule como o , y no haga nada.

Tenga en cuenta que el operador AND y el operador OR son operadores lógicos en el lenguaje Mac: Cuando todas las condiciones son válidas, la condición final es válida. Si la condición de que el átomo es un átomo o un átomo es un átomo, entonces la condición final es que el átomo es un átomo.

Resumen

Esto es todo el proceso de escribir estrategias de negociación en lenguaje Mac en la herramienta de cuantificación del inventor. En total, hay tres pasos: desde una idea de estrategia, hasta la concepción de la estrategia y la descripción de la lógica en palabras, hasta la implementación completa de la estrategia de negociación en el código. A pesar de que se trata de una estrategia simple, el proceso de implementación específico es muy diferente al de las estrategias complejas, solo que los algoritmos de la estrategia y la estructura de datos son diferentes.

Trabajos extraescolares

  1. Trate de implementar las estrategias de esta sección.
  2. Añadir la función Stop Stop Loss basado en la estrategia de esta sección.

Sección de adelanto

En el desarrollo de estrategias de comercio cuantitativo, los lenguajes de programación son como armas, y un buen lenguaje de programación puede hacer que todo cambie. Por ejemplo, los más comunes en el comercio cuantitativo son Python, C ++, Java, C #, EasyLanguage, Mac y más.

Capítulo 3: Estrategias de negociación en lenguaje de programación simple

3.1 Evaluación lateral del lenguaje de programación de transacciones cuantitativas

Resumen

En los capítulos 1 y 2, aprendimos los fundamentos de la transacción cuantitativa y el uso de las herramientas de la inventora. En este capítulo, vamos a concretar las estrategias de negociación.

¿Qué es un lenguaje de programación?

Antes de aprender un lenguaje de programación, primero hay que entender el concepto de lenguaje de programación. Un lenguaje de programación es un lenguaje que las personas y las computadoras pueden entender, es un código de comunicación estandarizado, el propósito de un lenguaje de programación es usar el lenguaje humano para controlar a la computadora y decirle a la computadora lo que debemos hacer.

Al igual que los padres nos enseñan a hablar cuando somos niños, también nos enseñan a entender lo que dicen los demás. Después de mucho tiempo de adoctrinamiento y autoaprendizaje, aprendemos a hablar sin darnos cuenta y a entender lo que dicen los demás niños. En chino: Hola mundo Inglés: Hola mundo En francés: Bonjour tout le monde (Buenos días a todos)

En un lenguaje de programación, el mensaje de “Hola mundo” en una pantalla de computadora se ve así: En el lenguaje C: puts (“Hola mundo”); En Java: System.out.println (“Hola mundo”); Lenguaje de Python:print (“Hola a todo el mundo”) Se puede ver que los lenguajes de computación tienen sus propias reglas específicas, y hay muchas más, y estas reglas de lenguaje son las categorías de lenguajes de programación que necesitamos explicarles hoy, en cada una de las categorías solo necesitamos recordar las reglas más básicas y comunes, para poder usar estas lenguas de programación y las computadoras para comunicarse y hacer que las computadoras funcionen de acuerdo con nuestras instrucciones.

Clasificación de las lenguas de programación

Para facilitar la comparación y seleccionar el lenguaje de programación de transacciones cuantitativas adecuado para usted, hemos clasificado los seis lenguajes de programación más comunes como Python, Matlab / R, C ++, Java / C #, EasyLanguage y lenguaje de visualización (como se muestra a continuación). El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-1 Valoración de las lenguas de programación

Los puntuaciones de 1 a 5, por ejemplo, en el rango de funcionalidad, significan una gran cantidad de funciones, y un punto significa menos funciones. Como se muestra en la imagen de arriba, los lenguajes de visualización y EasyLanguage son fáciles de aprender y son muy adecuados para los principiantes; Python tiene una gran capacidad de expansión y es adecuado para desarrollar estrategias de negociación más complejas; C ++ es más rápido y es más adecuado para los comerciantes de alta frecuencia.

Pero para cada lenguaje de programación, la evaluación es principalmente para aplicaciones en el campo de la transacción cuantitativa, y con un componente subjetivo personal. También es bienvenido a aplaudir en las secciones de comentarios posteriores, o a presentar sus puntos de vista para la discusión. A continuación, comenzamos a presentarlos uno por uno.

Lenguaje de visualización

La programación visual no es una novedad, ya que se ha desarrollado desde hace mucho tiempo. Esta idea de programación objetiva, con una variedad de módulos de control, se puede construir la lógica del código y completar el diseño de la estrategia de negociación simplemente arrastrando. El proceso es muy similar a la construcción de bloques. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-2 Interfaz de lenguaje de programación visual

El mismo programa, como se muestra en la imagen de arriba, solo requiere unas pocas líneas de código en la programación visual de la plataforma de comercio cuantitativo del inventor. Esto reduce enormemente el umbral de programación, especialmente para los comerciantes que no saben nada de programación, lo que es una gran experiencia operativa.

Dado que la base de la estrategia de implementación de este lenguaje de visualización se trasladó a C ++, no tuvo un gran impacto en la velocidad de ejecución del programa. Sin embargo, la funcionalidad y la extensibilidad son débiles y no se pueden desarrollar estrategias de transacción demasiado complejas y demasiado refinadas.

Las lenguas EasyLanguage

Los llamados lenguajes EasyLanguage son lenguajes de programación exclusivos de algunos software de comercio de comercio cuantitativo. Aunque estos lenguajes también tienen algunas características orientadas a objetos, en la aplicación se usan principalmente en forma de script. En la gramática, también está muy cerca de nuestro lenguaje natural, y para los principiantes de comercio cuantitativo, usar EasyLanguage como una buena opción para comenzar.

Este lenguaje de scripting no tiene problemas para hacer retroalimentación de estrategias y en vivo en su software específico, pero a menudo es limitado en términos de extensión, por ejemplo, los desarrolladores de estrategias no pueden invocar APIs externas. Además, en términos de velocidad de ejecución, este lenguaje de scripting se ejecuta en su propia máquina virtual, y la optimización de rendimiento no es tan buena como Java / C #, y es más lenta.

Python

En Stackoverflow, el acceso a los lenguajes de programación principales no ha cambiado mucho en los últimos años, solo Python es una tendencia ascendente. Python puede usarse para desarrollo de sitios web, aprendizaje automático, aprendizaje profundo, análisis de datos, etc. Python se ha convertido en la lengua más común debido a su flexibilidad y apertura.

La lista de estructuras de datos básicas y el diccionario de Python son muy potentes y basicamente pueden satisfacer las necesidades de representación de datos. Si se necesita una estructura de datos más rápida y funcional, se recomienda aplicar NumPy y SciPy, que son básicamente las librerías estándar de la computación científica de Python.

Para la ingeniería financiera, una biblioteca más específica es Pandas, con dos estructuras de datos, Series y DataFrame, muy adecuada para el procesamiento de secuencias temporales.

En cuanto a la velocidad, Python está en la posición intermediaria, un poco más lento que C++ y un poco más rápido que el lenguaje EasyLanguage, principalmente porque Python es un lenguaje dinámico, su velocidad es generalmente la misma cuando se ejecuta en lenguaje Python puro. Sin embargo, se puede usar Cython para optimizar algunas funciones de forma estática y se puede acercar a la velocidad de C++.

Como lenguaje de agua, Python es el primero en términos de rendimiento de extensión, además de ser ampliamente compatible con otros lenguajes, y el diseño de la API de extensión es muy fácil de usar. En términos de dificultad de aprendizaje, la gramática de Python es simple, el código es legible y fácil de usar.

Matlab/R

Luego están los lenguajes Matlab y R, que se basan principalmente en el análisis de datos. Los autores del lenguaje han diseñado mucho para el cálculo científico gramaticalmente, y se caracterizan por su soporte innato para el cálculo de transacciones cuantitativas. Sin embargo, su alcance de aplicación es más limitado y generalmente se utiliza para el análisis de datos y la retroalimentación de estrategias. Su facilidad de uso y estabilidad son menores para el desarrollo de sistemas de transacciones y algoritmos de estrategias.

Además, su velocidad de ejecución y capacidad de extensión también son relativamente bajas, ya que los lenguajes Matlab y R se ejecutan en máquinas virtuales de lenguaje exclusivas. En términos de rendimiento, sus máquinas virtuales son mucho peores que las de Java y C #.

C++

C++ es un lenguaje de programación universal que admite múltiples modelos de programación, como el programación procesal, la abstracción de datos, el programación orientada a objetos, el programación de tipo general y los modelos de diseño. C++ permite realizar todas las funciones que desee, pero su mayor desventaja es que es muy difícil de aprender, como las plantillas, los punteros, las pérdidas de memoria, etc.

En la actualidad, C++ sigue siendo el lenguaje de programación preferido para transacciones de gran capacidad y alta frecuencia, por una sencilla razón: las características del lenguaje C++ son más cercanas a la base de la computadora y son las herramientas más efectivas para desarrollar sistemas de detección y ejecución de alto rendimiento que procesan grandes cantidades de datos.

Java/C

Java/C# son lenguajes estáticos que se ejecutan en máquinas virtuales. En comparación con C++, no hay un límite de aristas, no hay coredump, la localización precisa de la energía excepcional lanzada a la ubicación del código equivocado, el mecanismo de recuperación automática de la basura, no hay que preocuparse por la fuga de memoria, etc. Por lo tanto, en la dificultad de aprendizaje de la gramática, también son más fáciles que C++.

Pero en cuanto a la funcionalidad, no se puede optimizar la base del sistema de transacciones como en C++. En cuanto a la capacidad de extensión, es un poco más débil que C++, ya que sus extensiones requieren pasar por el puente de C, mientras que los dos lenguajes se ejecutan en la máquina virtual, por lo que se necesita atravesar una capa más de pared para implementar los módulos de función de extensión.

Resumen

Sin embargo, dicho de otra manera, no es importante el lenguaje de programación cuantitativo, lo importante son las ideas. Los inventores de lenguaje Mac cuantitativo y lenguaje de visualización como puerta de entrada cuantitativa no tienen ningún problema, la mejora después de la entrada es la necesidad de experimentar y explorar constantemente en combinación con diferentes condiciones del mercado, se puede decir que el pensamiento decide el camino, los ojos determinan los límites.

Diseña tu estrategia, negocia tus ideas. Desde este punto de vista, el corazón de la negociación cuantitativa sigue siendo la idea de negociación. Como un comerciante cuantitativo, no solo necesita dominar la gramática y las funciones básicas de la plataforma para escribir estrategias, sino también experimentar la idea de negociación en la vida real. La cuantificación es solo una herramienta y un vehículo para expresar diferentes ideas de negociación.

Trabajos extraescolares

  1. ¿Cuáles son las ventajas de Python como lenguaje de transacción cuantitativa?
  2. ¿Cuántas APIs comunes se han intentado escribir en el lenguaje Mac del inventor?

Sección de adelanto

Con la introducción de los lenguajes de programación que hemos mencionado anteriormente, seguro que ya sabes cómo elegir, así que en los próximos capítulos, vamos a desarrollar estrategias de comercio cuantitativo de aprendizaje específicas de acuerdo con la clasificación de los lenguajes de programación.

3.2 Acceso rápido a la lengua ma

Resumen

¿Qué es el lenguaje de Mac? El llamado lenguaje de Mac es un conjunto de librerías de funciones programadas que se extienden desde los primeros indicadores de tecnología de acciones. Se encierra el algoritmo en una sola función, y el usuario solo necesita llamar a una función de una sola línea como si se tratara de un bloque de construcción de bloques, para implementar la lógica de la política.

Utiliza un modelo de construcción de “gramática pequeña, funciones grandes”, lo que mejora considerablemente la eficiencia de la redacción. La estrategia de más de 100 frases en otros idiomas, generalmente 10 frases en el lenguaje Mac, puede redactarse. La base de datos de estadísticas financieras y la estructura de datos que se combina con las herramientas de cuantificación de los inventores también pueden soportar una lógica de transacción parcialmente compleja.

La estrategia completa

Para ayudar a entender rápidamente los conocimientos clave de esta sección, antes de introducir a los inventores de la lengua de Mac Cuantificador rápido, primero tenga una comprensión preliminar de los conceptos de los nombres de esta sección. También utilizamos la media de 50 días a largo plazo y la media de 10 días a corto plazo como casos básicos, para repasar el caso de la estrategia completa mencionada en el capítulo anterior:

La apertura de una posición de más de una persona: Si no hay posición en ese momento y el precio de cierre es mayor que el promedio a corto plazo y el precio de cierre es mayor que el promedio a largo plazo y el promedio a corto plazo es mayor que el promedio a largo plazo y el promedio a largo plazo es al alza.

Posiciones en blanco: Si no hay posición en el momento y el precio de cierre es menor que el promedio a corto plazo y el precio de cierre es menor que el promedio a largo plazo y el promedio a corto plazo es menor que el promedio a largo plazo y el promedio a largo plazo es bajista.

Posiciones cerradas: Si tiene más de una opción en el momento y el precio de cierre es menor que el promedio a largo plazo, o el promedio a corto plazo es menor que el promedio a largo plazo, o el promedio a largo plazo está bajando.

Posicionamiento en blanco: Si actualmente tiene boletos en blanco y el precio de cierre es mayor que el promedio a largo plazo, o el promedio a corto plazo es mayor que el promedio a largo plazo, o el promedio a largo plazo está en alza.

Si se escribe en código Mac, es así: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-3 Ejemplo completo de la lengua Mac

Para escribir una estrategia de comercio cuantitativa completa, generalmente se requieren varios pasos: obtención de datos, cálculo de datos, cálculo lógico, compra y venta de órdenes por debajo. Como se muestra en la figura anterior, en todo el código, solo se usa una API para obtener los datos básicos, es decir, la barra CLOSE de la primera y segunda fila; luego, las líneas 1 a 9 son la parte de cálculo de datos; y las líneas 11 a 14 son la parte de cálculo lógico y la segunda fila.

Tenga en cuenta que el código de color púrpura es una variable; en las líneas de la primera a la novena, el código verde es = es un valor asignado a la variable de la izquierda del valor asignado después de que los datos de la derecha del valor hayan sido calculados; el código de color naranja es API, por ejemplo, en la primera línea, la llamada MA ((línea media) requiere la transmisión de dos argumentos, los que se pueden entender como configuración, es decir, cuando se llama a MA, se requiere el tipo de configuración de MA; el color naranja es la barra AND, la barra OR es un operador lógico, que se utiliza principalmente para conectar múltiples cálculos lógicos, etc.

Datos básicos

Los datos básicos (precio de apertura, precio máximo, precio mínimo, precio de cierre, volumen de transacción) son una parte esencial de la transacción cuantitativa. Para obtener los datos básicos más recientes en la estrategia, solo es necesario llamar a la API de la herramienta de cuantificación del inventor. Si desea obtener datos básicos históricos, puede usar la columna REF, como: REF ((CLOSE, 1) para obtener el precio de cierre de ayer.

Las variables

Las variables son números variables, los nombres de las variables pueden entenderse como códigos, sus nombres soportan el formato chino de letras, números, y líneas, pero la longitud debe ser de 31 caracteres. Los nombres de las variables no pueden repetirse entre sí, no pueden repetirse con los nombres de los parámetros, no pueden repetirse con los nombres de las funciones (API), y cada frase debe terminar con un signo de puntuación. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-4 Tipos de datos en lenguaje Mac

Valoración de las variables

La asignación de valor a una variable consiste en asignar el valor de la derecha de la asignatura a la variable de la izquierda. En total, hay 4 tipos de asignaturas que pueden controlar si el valor se muestra en el gráfico y definir la posición en la que se muestra. Los caracteres verdes de la siguiente imagen son las asignaturas, respectivamente: : , : = , ^ , .. , la sección de comentarios del código de la imagen explica su significado en detalle. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-5 Valoración de las variables en el lenguaje Mac

Tipo de datos

En el lenguaje Mac, hay varios tipos de datos, de los cuales los más usados son el tipo numérico, el tipo de cadena y el tipo de Boolean. El tipo numérico es el número, incluidos los números enteros, decimales, positivos y negativos, como: 1, 2, 3, 1.1234, 2.23456 …; el tipo de cadena puede entenderse como letra, y los números en chino e inglés pueden ser cadenas, como: ‘cuantificación del inventor’, ‘CLOSEPRICE’ y ‘6000’, el tipo de cadena debe estar empaquetado con un número en inglés; el tipo Boolean es el más simple, solo tiene 2 valores, es decir, 1 es válido y 0 es falso.

Operador relacional

Los operadores de relación, como su nombre lo indica, son los operadores de relación entre dos valores. Se definen como igual, mayor, menor, mayor, igual, menor, igual y no igual, respectivamente, como se muestra a continuación: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-6 Operador de lenguaje de Mac

Operador lógico

Las operaciones lógicas pueden conectar las sentencias de tipo Boolean individuales en un conjunto, las más usadas son AND ((y) y OR ((o)) . Si hay dos valores de tipo Boolean, respectivamente, closing price is greater than opening price y closing price is greater than average line , podemos formarlos en un valor de Boolean, por ejemplo: closing price is greater than opening price y AND closing price is greater than line average, closing price is greater than opening price o OR closing price is greater than average line . El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-7 Computación lógica en lenguaje Mac

El mensaje es: Cuando todas las condiciones son válidas, la condición final es válida. Si la condición de que el átomo es un átomo o un átomo es un átomo, entonces la condición final es que el átomo es un átomo. AND puede ser escrito como &&, OR puede ser escrito como Radik Radik.

Operador de aritmética

El operador de cálculo más común en el lenguaje Mac es: ((+,-,*En el caso de las matemáticas, la diferencia entre el aprendizaje de las palabras en inglés (, /) y el aprendizaje de las matemáticas en la escuela primaria no se ve, como se muestra a continuación: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-8 Aritmética en lenguaje Mac

Las prioridades

Si hay 100*(10-1) / ((10+5)), ¿cuál es el primer paso de cálculo? Las matemáticas de la escuela secundaria nos dicen: 1 Si se trata de operaciones del mismo nivel, generalmente se calcula de izquierda a derecha. 2 Si hay suma y resta, primero multiplica y divide, luego suma y resta. 3 Si hay paréntesis, primero calcula lo que está dentro de las paréntesis. 4 Si cumple con las leyes de cálculo, se puede simplificar utilizando las leyes de cálculo. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-9 Prioridad de funcionamiento de la aritmética en el lenguaje Mac

Modo de ejecución

En el lenguaje Mac de la herramienta de cuantificación de los inventores, la estrategia del programa ejecuta un total de 2 modos, a saber: el modo de precio de cierre y el modo de precio en tiempo real. El modo de precio de cierre se refiere a la señal de línea K actual establecida, y se ejecuta la operación de pedido inmediatamente cuando comienza la línea K subyacente.

Estrategias para el día

Si es una estrategia intradiaria, cuando la cola necesita una posición cerrada, se necesita usar la función de tiempo de la cola TIME. La función se muestra en forma de cuatro dígitos, es decir, HHMM ((1450 14:50 minutos) por encima del ciclo de segundos y por debajo del ciclo de días. Nota: el uso de la función TIME como condición para cerrar la cola, se recomienda que las condiciones de apertura de la posición también hagan una restricción de tiempo correspondiente. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-10 Función de tiempo en lenguaje Mac

Clasificación del modelo

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-11 Clasificación del modelo de lenguaje de Mac

El modelo de filtro no permite la aparición de una serie de señales de apertura o de baja posición, es decir, cuando aparece la señal de apertura, las señales de apertura posteriores se filtran hasta que aparece la señal de baja posición, la secuencia de señales de salida del modelo no filtrado es: abrir-apagar-apagar-apagar-apagar …

Resumen

Esto es una introducción rápida al lenguaje de Mac, y después de aprenderlo, puede programar estrategias de comercio cuantitativo. Si necesita escribir estrategias más complejas, puede consultar la documentación de la herramienta de comercio cuantitativo del inventor en el lenguaje de Mac, o consultar directamente las estrategias de comercio cuantitativo para clientes oficiales.

Sección de adelanto

El day trading también es una modalidad de trading que no se mantiene durante la noche, por lo que el riesgo de fluctuación del mercado es menor, y se puede ajustar a tiempo en caso de que surjan situaciones adversas. Aprendiendo el lenguaje de Mac en esta sección, en la siguiente sección vamos a llevar a todos a escribir una estrategia de trading cuantitativa viable durante el día.

Trabajos extraescolares

  1. Intentar escribir una API para obtener datos básicos en lenguaje Mac con las herramientas de cuantificación de los inventores.
  2. ¿Cómo se muestran las asignaciones de variables en el gráfico?

3.3 Cómo implementar estrategias en lenguaje Mac

Resumen

En el artículo anterior, explicamos las premisas para implementar una estrategia de negociación desde la descripción del lenguaje Mac, la gramática básica, la ejecución del modelo, la clasificación del modelo, etc. En este artículo, continuaremos con lo anterior, a partir de módulos de estrategia comunes, indicadores técnicos, paso a paso para ayudar a implementar una viable estrategia de negociación cuantitativa en un día.

Módulo de estrategia

Piense en esto, ¿cómo se puede construir un robot con fragmentos de LEGO? No se puede construir de arriba a abajo o de abajo a arriba, pieza por pieza. Cualquier persona un poco más consciente sabe que se debe juntar la cabeza, los brazos, las piernas, las alas, etc., y luego ensamblar un robot completo.

Un aumento por etapas

La subida por etapas es el porcentaje de la diferencia entre el precio de cierre de la raíz K actual y el precio de cierre de los últimos N períodos. Por ejemplo, para calcular cuál es la subida por etapas de las últimas 10 líneas de K, se puede escribir en código: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-12 Aumento en la etapa de las lenguas macas

Nuevo nivel de innovación

La novedad más alta es calcular si la raíz de la línea K es mayor que el máximo desde N ciclos. Por ejemplo, calcular si la raíz de la línea K es mayor que el máximo de las 10 líneas K más recientes, se puede escribir en código como: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-13 Nuevas innovaciones en el lenguaje Mac

Se intensifica el ataque.

El aumento de volumen puede entenderse como un aumento de precios y un aumento de volumen de transacciones. Por ejemplo: si el precio de cierre de la línea K de la raíz actual es 1,5 veces el precio de cierre de la línea K anterior de 10, se ha ganado un 50% en 10 días; el volumen de transacciones es más de 5 veces el promedio de las últimas 10 líneas de K. Se puede escribir en código: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-14 El aumento de la cantidad de lenguas de Mac

Arreglo de las imágenes

El ordenamiento de la franja estrecha se refiere a que el precio se mantiene dentro de un cierto margen durante un período cercano. Por ejemplo: si el valor de la diferencia entre el precio más alto en 10 períodos y el precio más bajo en 10 períodos, dividido por el precio de cierre de la raíz K, es menor que aproximadamente 0.05. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-15 Compilación de las lenguas de Mac

Arreglo de líneas medias

La línea media se divide en una línea de múltiples cabezas y una línea de cabezas vacías, la línea K en una línea media de 5 10 20 30 60 la línea de soporte se ordena hacia arriba en una línea de múltiples cabezas, la línea de múltiples cabezas es que la tendencia del mercado es una fuerte tendencia alcista. Se puede escribir en código como: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-16 Arreglo multicomponente en el lenguaje Mac

Puntos altos anteriores y su ubicación

Para obtener el punto más alto anterior, y la ubicación de este punto más alto, se puede acceder directamente a través de la API de la herramienta de cuantificación del inventor. El código puede escribirse así: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-17 Los primeros picos de la lengua Mac

Salto en el vacío

Un vacío de salto es un caso en el que dos líneas K se encuentran en el punto más bajo de las dos líneas K, y el vacío de salto es el punto de referencia de los puntos de soporte y presión futuros. Cuando aparece un vacío de salto, se puede suponer que una aceleración de la tendencia a lo largo de la dirección de salto original ya ha comenzado. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-18 El hueco en el lenguaje de Mac

Indicadores técnicos de uso común

Las medias móviles

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-19: el gráfico de la media móvil

Desde el punto de vista de la estadística, la línea media es el promedio aritmético de los precios diarios, es una trayectoria de precios con tendencias. El sistema de línea media es una herramienta técnica utilizada por la mayoría de los analistas, desde el punto de vista técnico es un factor de decisión que afecta el precio psicológico del analista técnico, el factor de compra y venta de pensamiento, es una buena herramienta de referencia para el analista técnico, el inventor de herramientas de cuantificación admite varios tipos diferentes de líneas medias, como se muestra a continuación: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-20 Calculación de los indicadores de las lenguas macas

El canal BOLL

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-21 Mapa de las vías de BOLL

El BOLL, también conocido como el indicador de la banda de Brin, también utiliza el principio estadístico, primero calcula el desvío medio en función de la media móvil de N días, y luego calcula el desvío ascendente y descendente en función de la diferencia estándar. Cuando el canal BOLL se estrecha por la anchura, indica que el precio regresa gradualmente al valor promedio.

De todos los indicadores técnicos, el método de cálculo de BOLL es uno de los más complejos, que introduce el concepto de diferencia estándar en la estadística, que involucra el cálculo de la línea media ((MB), la línea superior ((UP) y la línea inferior ((DN)). Su método de cálculo es el siguiente: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-22 Computación de la banda de Brin en el lenguaje Mac

Indicadores del MACD

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Indicadores del MACD

El indicador MACD es un indicador de análisis técnico para la investigación de oportunidades de compra y venta de acciones, y la predicción de la caída y bajada de los precios de las acciones. El método de cálculo es el siguiente:

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-24 Indicadores MACD para el lenguaje Mac

Estos son los módulos de estrategia más usados en el desarrollo de estrategias de comercio cuantitativo, pero por supuesto, en realidad son mucho más que esto. A través de los ejemplos de módulos anteriores, también se pueden implementar varios de los módulos de comercio que más se usan en el comercio subjetivo.

La redacción de la estrategia

En el mercado de divisas en efectivo, una estrategia de negociación de ruptura que se ha difundido ampliamente es la estrategia HANS123, que utiliza como criterio de evaluación la ruptura de los puntos altos y bajos de la línea K de la raíz N después de la apertura sencilla como señal de negociación. También es un modelo de negociación de entrada temprana.

La lógica estratégica

La entrada se hará a los 30 minutos de la apertura. En la pista = el punto más alto 30 minutos después de la apertura; Baja = baja de 30 minutos después de la apertura; Cuando el precio se rompe, compra y abre una posición. Cuando el precio cae por debajo de la línea, se vende y se abre posición. La estrategia de negociación durante el día, las posiciones cerradas antes del cierre;

Código estratégico

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-25 Código de política para el lenguaje Mac

Resumen

Lo anterior nos enseñó el concepto del módulo de estrategia, y a través de varios ejemplos de módulos de estrategia de uso común, familiarizarse con la programación de herramientas de cuantificación de los inventores, se puede decir que aprender a escribir un módulo de estrategia, mejorar la programación de la lógica de pensamiento, es un paso clave para el progreso de la cuantificación de la negociación. Por último, se realiza con herramientas de cuantificación de los inventores, estrategias de negociación de uso común en el comercio de divisas en efectivo.

Sección de adelanto

Tal vez algunos de los compañeros estén confundidos y no puedan entender el código. No se apresuren, ya lo hemos pensado para ustedes, en las herramientas de inventores cuantitativos, también hay un lenguaje de programación más adecuado para el uso de usuarios pequeños y medianos, es la programación visual, lo que se ve es lo que se obtiene, ¡esperen!

Trabajos extraescolares

  1. Intenta implementar algunos de los módulos de negociación que más utilizas en tu negocio subjetivo.
  2. Intentar implementar el algoritmo de indicadores KDJ en el lenguaje Mac de la herramienta de cuantificación del inventor.

3.4 Acceso rápido a la programación visual

Resumen

Muchos comerciantes subjetivos están interesados en el comercio cuantitativo, están empezando a sentirse confiados, y después de aprender la gramática básica, el cálculo de datos, la estructura de datos, el control lógico, etc. de los lenguajes de programación tradicionales, a menudo se dan cuenta de que el código es largo y complejo, y luego se retiran, o se detienen, cuando los lenguajes de programación visuales pueden ser más adecuados para llevarte a la puerta.

La estrategia completa

Para ayudar a entender rápidamente los conocimientos clave de esta sección, antes de introducir a los inventores de la lengua de programación de visualización cuantitativa, primero veamos qué tipo de estrategias se escriben en lenguaje visual y un conocimiento preliminar del concepto de terminología de esta sección. Hacemos más con el precio de cierre más grande que el promedio de 50 ciclos más simple, y por el contrario, el precio de cierre es menor que el promedio de 50 ciclos.

La apertura de una posición de más de una persona: Si no hay posiciones en el momento y el precio de cierre es mayor que la media periódica de 50. Posiciones en blanco: Si no hay posiciones en el momento y el precio de cierre es inferior a la media periódica de 50. Posiciones cerradas: Si tiene más de una opción en el momento y el precio de cierre es inferior a la media periódica de 50 Posicionamiento en blanco: Si actualmente tiene un boleto en blanco y el precio de cierre es mayor que la media periódica de 50.

Si la estrategia de arriba se escribe en un lenguaje visual, esto es lo que ocurre (como se muestra a continuación): El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3 a 26 Interfaz de lenguaje visual

Como se muestra en la figura anterior, el proceso de diseño de toda la estrategia es: configurar la variedad de tendencia, obtener la matriz K, obtener el promedio de 50 ciclos de la raíz superior de la línea K, obtener el precio de cierre de la raíz superior de la línea K, obtener la matriz de tenencia, determinar el estado de la tenencia, determinar si el precio de cierre es mayor o menor que la media, ejecutar la posición abierta o cerrada.

Aquí hay que tener en cuenta el concepto de la matriz de la matriz de la matriz, que es una de las estructuras de datos importantes para cada lenguaje de programación. La matriz es como un recipiente, en el que se puede almacenar una serie de valores. Por ejemplo: la llamada de la API para obtener la matriz de la línea K, que devuelve el resultado siguiente: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Arreglos de líneas K

El código de la gráfica es un conjunto de K-líneas, que tiene tres datos, los datos de la raíz superior de K, los datos de la raíz superior de K y los datos de la raíz inferior de K. Si asignamos este conjunto a una de las variables arr, si queremos obtener este conjunto, el último dato (los datos de la raíz superior de K) se puede escribir así (como en las líneas 4 y 5 de la siguiente gráfica): El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-28 Referencias de la matriz

Se escribe directamente en la segunda línea, porque en la realidad hay cientos de raíces de datos en la línea K, y las nuevas líneas de K aumentan constantemente. Por lo tanto, primero se obtiene la longitud de la matriz, arr.length significa obtener la longitud de la matriz y luego restar 1, es decir, los datos de la línea K más reciente. Si desea obtener los datos de la línea K de la raíz superior, restar 2.

Si eres cuidadoso, puedes encontrar que estos datos están incluidos en el cuadro de la raíz, y el nombre en inglés es más o menos lo mismo: tiempo, precio de apertura, precio más alto, precio más bajo, precio de cierre y volumen. Si quieres obtener el precio de cierre de la raíz de la línea K, agrega el cuadro de la raíz directamente detrás. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Gráfico 3-29 Referencias de la matriz

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

Con estos conceptos en mente, vamos a escribir un programa en Java que emite hello, world, hello, para tener una idea de la programación tradicional, como se muestra a continuación: El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3-30.

Sólo es suficiente con la salida de un hello world! y la secuencia de caracteres, y se escriben 5 líneas de código. Creo que la mayoría de los principiantes, sólo conocen las palabras en inglés en paréntesis hello, world, y el resto es más que nada. Por lo tanto, es una mejor opción que el principiante, con la programación visual como una introducción.

¿Qué es la programación visual?

La programación visual no es una novedad, ya que se ha desarrollado desde hace mucho tiempo. Esta idea de programación objetiva, con una variedad de módulos de control, se puede construir la lógica del código y completar el diseño de la estrategia de negociación simplemente arrastrando. El proceso es muy similar a la construcción de bloques. El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3 al 31

El mismo programa, como se muestra en la imagen de arriba, solo requiere una línea de código en la programación de visualización de blockly. Esto reduce enormemente el umbral de programación, especialmente para los comerciantes que no saben nada de programación, lo que es una gran experiencia operativa.

¿Cuáles son las características de un lenguaje de programación visual?

blockly no es un juguete de programación, es un editor sincero, no el tipo de sistema operativo que se disfraza de un editor, que soporta muchos elementos básicos de programación, como: variables, funciones, arrays, y bloques personalizados fáciles de ampliar, con los que puede realizar tareas de programación complejas.

La programación de visualización cuantificada de los inventores también se realizó gracias a la herramienta de visualización blockly publicada por Google. Es similar en diseño a Scratch lanzado por la Universidad de Massachusetts, con un verdadero umbral cero (como se muestra a continuación). El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3 al 32

En la interfaz de programación visual cuantificada del inventor, se incorporan cientos de módulos de negociación de uso común, y posteriormente se agregarán más módulos de negociación para apoyar las nuevas ideas y nuevas aplicaciones de los comerciantes, que serán desarrolladas y mantenidas conjuntamente por los desarrolladores.

Aunque la gramática es simple, no pierde su rendimiento. Casi puede satisfacer la mayoría de los desarrollos de estrategias de transacciones cuantitativas simples. No es inferior a los lenguajes de programación convencionales como Python y JavaScript, ya sea en función o velocidad. En el futuro, apoyará aplicaciones financieras de complejidad lógica.

Cómo se usa

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3 al 33

Escribe un programa de hello, world

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3 y 4

En ese momento, el teléfono se puso en marcha y se imprimió el logotipo de Hello, World.

El inventor introdujo el comercio cuantitativo - desde las bases hasta la batalla Figura 3 al 35

Resumen

A continuación, comenzamos con una estrategia de visualización completa, una descripción de la lengua de visualización y sus características, y terminamos con una descripción de cómo usar la lengua de visualización en la herramienta de cuantificación de inventores, y un ejemplo de cómo escribir una frase de hello world. Sin embargo, es necesario recordar que la programación de visualización es una buena puerta de entrada a la transacción cuantitativa, pero actualmente solo hay una interfaz API limitada abierta en la herramienta de cuantificación de inventores, y para la transacción cuantitativa, es mejor cons