[TOC] ¿Qué quieres decir?
¿Cuál es la mayor dificultad para los principiantes en el aprendizaje de transacciones cuantitativas o programadas?
Con el avance de la tecnología de la IA, se pueden encontrar soluciones a estos problemas hasta cierto punto.Hablar con GPTCon una nueva actualización de la plataforma FMZ para el editor de estrategias, además de la incorporación de Chat GPT, se ha mejorado significativamente la productividad de la cuantificación.Nuevas funciones en el editor de estrategias FMZ!
En la actualidad, aunque el Chat GPT ya es muy potente y tiene una gran comprensión de las preguntas humanas, sus respuestas siguen siendo muy difíciles de encontrar.La integridad de la descripción del problema、La exactitud de la descripciónLos factores son muy sensibles, y si el escenario descrito, el contenido del problema, etc. no es exacto, Chat GPT no puede dar respuestas perfectas.
A continuación, resolvemos un problema de diseño de código con la función de Chat GPT del editor de políticas de la plataforma FMZ, accediendo a la plataforma FMZ y editando una página de políticas.
Utilice el menú de teclado derecho en el espacio, seleccione la opción ChatGPT y haga clic para llamarChat GPT
¿Qué es esto?Llama a ChatGPT con el botón K。
Si ahora fuera un principiante en transacciones cuantificadas, tendría una necesidad: usar K-lines para sintetizar K-lines de datos de ciclo arbitrario. Como principiante, soy un programador débil y no escribiría este tipo de algoritmos, antes solo podía buscar información, pedir ayuda a Dios, ahora tengo Chat GPT para preguntarle directamente si quiere una respuesta.La pieza de datos de la pieza de datos de la pieza de datos de la pieza de datos de la pieza de datos de la pieza de datos de la pieza de datos de la pieza de datos."Es probable que GPT no te dé una respuesta 100% disponible y que necesites describir el problema lo mejor posible". En este ejemplo de necesidad, el editor me ha estado ajustando constantemente y ha preguntado muchas veces para obtener la respuesta disponible y deseada.
在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 invocar ChatGPT, puedes ingresar el contenido de la pregunta optimizado anteriormente.
El Chat GPT está funcionando.
Esperen hasta que termine de escribir.
Algunas vecesChat GPT
En el código se envuelve el símbolo ```, que indica en el marcado que el contenido envuelto es el código. Así que eliminamos la primera y última línea.$.PlotRecords(KLineData, "name")
Para dibujar gráficos, la política es consultar la biblioteca de líneas de dibujo para dibujar gráficos, y los gráficos son para verificar si los datos de K-línea de la síntesis de código proporcionada por Chat GPT son correctos.
En cuanto a lo que es una biblioteca de clases de plantillas, ya no se trata de una descripción exhaustiva, se puede consultar la documentación de la API de FMZ, que incluye una descripción completa de la biblioteca de clases de plantillas.Dirección de la biblioteca de líneas gráficas
Chat GPT
El código dado es directamente retrotraible, y he configurado el ciclo de línea K predeterminado del sistema de retrotracción en 5 minutos para comparar el gráfico de línea K dibujado con los datos de línea K calculados por el algoritmo de Chat GPT.
En primer lugar, parece que el algoritmo de ChatGPT es correcto para la síntesis de 5 líneas K de 1 minuto.
/*
合成任意分钟的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");
}
El ChatGPT integrado en FMZ no solo te ayuda a escribir el código, sino que también te ayuda a interpretarlo.composeKLineData
En el menú pop-up de las funciones, haga clic con el botón derecho:
Incluso ChatGPT puede dar sugerencias de optimización, código optimizado.
Esta actualización del editor FMZ, además de agregar la gran función de ChatGPT, es más optimizada, mejora la experiencia de uso de la escritura de programas en línea y agrega muchas funciones útiles.
En el espacio en blanco o al seleccionar el código, haga clic con el botón derecho y aparecerá un menú.
En la página web de Google se muestra una combinación de teclas de acceso rápido con varias funciones.
Rename Symbol, para cambiar el nombre de la variable local.
Sólo cambia el gráfico.main
Nombres de variables en las funcionesrecords
。
Cambiar todas las ocurrencias, seleccionar un nombre de variable, una palabra, y editar todo el mismo contenido en el texto.
Format Selection, formato del código seleccionado.
Format Document, todo el código está formateado.
Ir a la definición, saltar a la definición. Ir a Referencias, saltar a las referencias. Go to Symbol..., salta al nombre de la variable, al nombre de la función, etc.
Peek Definition, Definition Preview. Ver la definición del código seleccionado sin salir de la línea de código actual. Peek References, una vista previa de referencias, permite 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 puede saltar rápidamente para comprender mejor la lógica y la estructura del código.
¿Qué quieres decir? 666
- ¿ Por qué?Comentarios después, 6.
El banco de datos de la entidadEste número es 666.
17732164739Eso está muy bien, los sueños son muy difíciles.
Los inventores cuantifican - sueños pequeñosGracias por apoyar a los inventores de la cuantificación.