avatar of 发明者量化-小小梦 发明者量化-小小梦
Seguir Mensajes Privados
4
Seguir
1271
Seguidores

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Creado el: 2023-04-01 13:07:53, Actualizado el: 2024-11-29 18:56:44
comments   5
hits   3080

[TOC]

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Explora las nuevas funciones del editor de estrategias de FMZ

¿Cuál es la mayor dificultad para los principiantes en el trading cuantitativo y el trading programático? En términos generales, hay varios.

  • Falta de conocimientos básicos: incluyendo conceptos básicos, reglas del mercado, conocimientos comerciales, ideas estratégicas, etc.
  • Fundamentos de programación débiles: incluye expresión lógica, diseño y escritura de programas, y depuración y resolución de problemas de programas.
  • Pensamiento lógico débil: El proceso de pensamiento conduce fácilmente a la confusión, y cuanto más piensas, más confundido estás.
  • Dificultad para estudiar por cuenta propia: Cuando surgen problemas, no sabes por dónde empezar a resolverlos, y puede que ni siquiera sepas dónde buscar el problema.

Con el desarrollo de la tecnología de IA, se pueden encontrar soluciones a los problemas mencionados hasta cierto punto. Recientemente popularChat GPTSe puede utilizar como herramienta para aprender, investigar y crear operaciones cuantitativas. Con la nueva actualización del editor de estrategias en la plataforma FMZ, también se ha conectado Chat GPT, lo que ha mejorado enormemente la productividad cuantitativa. Vamos a explorarlo juntos.Nuevas funciones del editor de estrategias FMZ

Utilice Chat GPT para ayudar con el diseño del código

Aunque las funciones de Chat GPT ya son muy potentes y su nivel de comprensión de las preguntas planteadas por los humanos ya es muy alto. Pero la respuesta que da sigue siendoCompletitud de la descripción del problemaPrecisión de la descripciónFactores como la entrada y salida del usuario son muy sensibles. Si el escenario descrito o el contenido de la pregunta son inexactos, Chat GPT no podrá dar una respuesta perfecta. Por lo tanto, al usarlo para resolver algunos problemas, es necesario intentar expresarlo de forma correcta y completa.

A continuación, utilizaremos la función Chat GPT del editor de estrategias de la plataforma FMZ para resolver un problema de diseño de código. Inicie sesión en la plataforma FMZ y vaya a una página de edición de estrategias.

1. Cómo llamar a ChatGPT

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Utilice el menú de clic derecho en un espacio en blanco, seleccione la opción ChatGPT y haga clic para abrirla.Chat GPT,oUtilice ⌘K para invocar ChatGPT

2. Sobre la forma de hacer preguntas

Si ahora soy un principiante en el trading cuantitativo, tengo un requisito: “Utilizar la línea K de un minuto para sintetizar los datos de la línea K de cualquier período”. Como soy principiante, mis habilidades de programación son débiles y realmente no puedo escribir un algoritmo de este tipo. En el pasado, solo podía buscar información y pedir ayuda a los expertos. Ahora, con Chat GPT, puedo pedirle la respuesta directamente. Por supuesto, como se mencionó anteriormente, describa directamente este requisito:“Utilice la línea K de un minuto para sintetizar datos de la línea K de cualquier período”. Es muy probable que GPT no le brinde una respuesta 100% utilizable y deberá describir el problema lo más completamente posible. Tomando este requisito como ejemplo, seguí ajustando mis preguntas y pregunté muchas veces antes de obtener la respuesta utilizable que quería. A continuación, describamos este requisito un poco más completamente:

在FMZ平台上调用exchange.GetRecords(60)函数可以获取一分钟K线数据,数据结构是:
[{
    Time    : 毫秒时间戳,   // 周期的起始时间  
    Open    : 1000,              
    High    : 1500,              
    Low     : 900,               
    Close   : 1200,              
    Volume  : 1000000            
}, ...]
请设计一个算法,使用一分钟K线数据合成任意分钟的K线数据,对于可以整除60分钟的周期,需要从整点的0分开始统计,使用Javascript语言实现,
这个算法单独写成一个函数,测试在function main()函数中测试,使用$.PlotRecords(KLineData, "name")画图。

Después de llamar a ChatGPT, puede completar el contenido de la pregunta optimizada anterior.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

ChatGPT comienza a funcionar.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Espera hasta que esté terminado.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

a vecesChat GPTEnvuelva el código”Símbolo que indica en Markdown que el contenido incluido es código. Así que simplemente borramos la primera y la última línea. Porque la pregunta que le hice la uso$.PlotRecords(KLineData, “name”)`Dibujo, por lo que la estrategia debe hacer referencia a la biblioteca de dibujo de líneas para dibujar. El dibujo consiste en verificar si los datos de la línea K sintetizados por el código proporcionado por Chat GPT son correctos. En cuanto a qué es la biblioteca de plantillas, no entraré en detalles aquí. Puedes consultar la documentación de la API de FMZ.Dirección de la biblioteca de dibujo lineal

Chat GPTEl código proporcionado se puede probar directamente. Establecí el período de línea K predeterminado del sistema de prueba retrospectiva en 5 minutos para comparar el gráfico de línea K dibujado por los datos de línea K calculados por el algoritmo proporcionado por Chat GPT.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

3. Realizar una prueba retrospectiva del código proporcionado por Chat GPT

Dibujo del sistema de pruebas retrospectivas Dibujo del algoritmo ChatGPT

A primera vista, el algoritmo proporcionado por ChatGPT para utilizar la línea K de 1 minuto para sintetizar la línea K de 5 minutos es correcto.

4. Código completo escrito por ChatGPT

/*
合成任意分钟的K线数据
@param {Array} records - 一分钟K线数据
@param {Number} period - 合成的周期,单位为分钟
@return {Array} - 合成后的K线数据
*/
function composeKLineData(records, period) {
  var result = [];
  var index = 0;
  var open = records[0].Open;
  var high = records[0].High;
  var low = records[0].Low;
  var close = records[0].Close;
  var volume = records[0].Volume;
  var time = records[0].Time - records[0].Time % (period * 60 * 1000);
  for (var i = 1; i < records.length; i++) {
    var record = records[i];
    if (record.Time < time + period * 60 * 1000) {
      high = Math.max(high, record.High);
      low = Math.min(low, record.Low);
      close = record.Close;
      volume += record.Volume;
    } else {
      result[index] = {
        Time: time,
        Open: open,
        High: high,
        Low: low,
        Close: close,
        Volume: volume
      };
      index++;
      open = record.Open;
      high = record.High;
      low = record.Low;
      close = record.Close;
      volume = record.Volume;
      time = record.Time - record.Time % (period * 60 * 1000);
    }
  }
  result[index] = {
    Time: time,
    Open: open,
    High: high,
    Low: low,
    Close: close,
    Volume: volume
  };
  return result;
}

function main() {
  var records = exchange.GetRecords(60);
  var kLineData = composeKLineData(records, 5); // 合成5分钟K线数据
  $.PlotRecords(kLineData, "KLineData");
}

Explicar el código mediante Chat GPT

ChatGPT integrado en FMZ no solo te ayudará a escribir código, sino que también te ayudará a explicar el código. Seleccione el código que ChatGPT acaba de escribir.composeKLineDataFunción, haga clic derecho para que aparezca el menú:

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Utilice Chat GPT para dar sugerencias y optimizar el código

ChatGPT incluso puede ofrecer sugerencias de optimización y código optimizado.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa


Otras nuevas funciones añadidas al editor

Esta actualización del editor FMZ agrega la función ChatGPT. Optimiza y mejora aún más la experiencia del usuario en la escritura de programas en línea y agrega muchas funciones convenientes.

Ver combinaciones de teclas de acceso directo

Haga clic derecho en un espacio en blanco o cuando se seleccione el código para que aparezca un menú.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Muestra combinaciones de teclas de acceso directo para varias funciones.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa


Modificar el nombre de la variable

Cambiar el nombre del símbolo, modificar el nombre de la variable local.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Solo se modificará la imagen de arriba.mainNombres de variables en funcionesrecords


Modificar todo el contenido idéntico

Cambiar todas las ocurrencias, seleccionar un nombre de variable o palabra y editar todo el mismo contenido en el texto al mismo tiempo.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa


Formato (embellecimiento de código, formato de alineación automática)

Selección de formato, formatea el código seleccionado.

Formatear documento, formatear todos los códigos.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa


Saltar a la definición, referencia

Ir a Definición, saltar a la definición. Vaya a Referencias, salte a referencias. Ir a Símbolo…, saltar al nombre de la variable, nombre de la función, etc.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa


Vista previa de la definición, vista previa de la referencia

Definición de Peek, vista previa de la definición. Ver la definición del código seleccionado sin salir de la línea de código actual. Referencias Peek, vista previa de referencias, ver las referencias a la línea de código actual en otras líneas de código sin salir de la línea de código actual y saltar rápidamente para comprender mejor la lógica y la estructura del código.

Explora las nuevas funciones de FMZ Strategy Editor: Cómo ChatGPT puede mejorar significativamente tu productividad cuantitativa