Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 693
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
set.seed(1234)
¿Qué es y dónde lo pongo?
eso es más de la mitad de la batalla... así es....
90%, y los modelos son una cuestión de tecnología, caret está lleno de estas cosas con el atado adecuado.
Aquí hay un ejemplo con vtreat también,
Generalmente se trata de un preprocesamiento de datos, pero puede utilizarse como una estimación de cada predictor en relación con el objetivo. No me gusta que el paquete no tenga en cuenta las interacciones de los predictores, sólo se puede utilizar el código si se tiene suficiente para estimar los predictores de uno en uno en relación con el objetivo.
¿Qué es y dónde lo pongo?
set.seed establece la semilla inicial del generador de números aleatorios. Si se establece el mismo estado (como 1234) antes de la ejecución del código, entonces el siguiente código se ejecutará de la misma manera en todos los casos.
read.csv2(... etc.
set.seed(1234)
Boruta(ObjetivoProf... etc.)
Pero quizás el algoritmo necesita más iteraciones (maxRuns = 1000000 por ejemplo), no cabe en un número tan pequeño como por defecto y se detiene a mitad de camino.
He estado pensando en la regresión....
La regresión en los mercados financieros no es una función suave, sino una función escalonada con incrementos de 1 punto. (tanto para el profesor como para la previsión). Si, por ejemplo, limitamos el movimiento a +/- 100 puntos, existe una analogía con la clasificación en 200 clases. Así que en la salida predecimos la clase más probable - por ejemplo +22 pt.
¿No significa que para obtener buenos resultados la estructura/complejidad del modelo (número de neuronas) para la regresión debería ser 200 veces mayor? Bueno, si aumentamos el paso a 5 pt, entonces 40 veces sería un poco más económico a costa de menos precisión.
Ahora recupera el boxplot, haz algo con las entradas y ejecútalo de nuevo.
El parámetro set.seed es el mismo en ambos casos.
¿Qué quieres que haga con las entradas?
Sí..... Reconozco que esperaba algo mejor de mis aportaciones. De todos modos, pensaba que habría más importantes, desde luego no cuatro de 100. Con tantas entradas, los modelos resultan demasiado pequeños, aunque en la práctica he comprobado que cuanto más sencillo es el modelo, mejor funciona. Y viendo el modelo y haciendo mis propias pruebas entiendo que esta mierdita es bastante buena..... Es demasiado pronto para sacar conclusiones, se necesitan más pruebas. Sigue cavando....
forexFeatures <- read.csv2("Qwe.txt")
realmente tienes que hacerlo.
Lo siento, me equivoqué en el formato de su archivo. Corregiré los mensajes antiguos. Vuelva a ejecutar el código, los resultados deberían ser mejores, de lo contrario todos los números con fracciones decimales se procesaron mal.
¿Qué hacer con las entradas?
Por ejemplo, jPrediction escala los datos al intervalo [-1;1] y aprende sobre estos números. También se puede escalar al mismo intervalo en R antes de evaluar las entradas.
Los métodos de estimación basados en árboles probablemente no cambiarán el resultado, a los bosques no les importa realmente en qué intervalo vinieron los datos, pero es mejor comprobarlo. vtreat tampoco es exigente con el intervalo.
Pero, en general, se refiere a la transformación no lineal de las entradas incluso antes de alimentar la neurona. La neurónica es muy sensible a las entradas, y si se procesan los datos de entrada de alguna manera especial, sus resultados pueden mejorar. Por ejemplo, he oído un truco de este tipo: convertir las entradas a través de la sigmoidea.