Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 73

 
Mihail Marchukajtes:

¿Qué?

Aunque hay verdad en estas palabras. ....

Simplemente debería leer lo que significa la clasificación. Cualquier sitio bueno sobre el aprendizaje automático lo tiene en pocas palabras.
 
Alexey Burnakov:

Datos de validación:https://drive.google.com/file/d/0B_Au3ANgcG7COGpJb24wbkxoaTg/view?usp=sharing

Hay 5,5 años para 5 pares. Las fechas son estrictamente posteriores al conjunto de entrenamiento. En la columna de la derecha se encuentra la tselevka: incremento de precio en 181 minutos (lo que fue codificado por las categorías en el tren).

Intenta conseguir una MO en la validación mayor de 0,0001. Obtuve alrededor de 0,00013, lo que corresponde al diferencial medio. Es decir, cero.

Al mismo tiempo, no comercio con todas las observaciones, sino sólo allí donde la señal de la máquina es fuerte (alrededor del 5-10% de las observaciones).

Gracias,

Alexey

Y esta es una imagen útil para hacer una muestra de prueba (validación cruzada). Tenemos que dividir el conjunto en 5 partes iguales y la cola de cada 5ª parte son datos futuros.

 
Lo he descargado, todo está bien, pero aún no he conseguido insertarlo en MQL, y por alguna razón los resultados de optimización en el archivo guardado son diferentes a los que muestra el propio predictor. El predictor en sí tiene un nivel de generalización de los datos del 90%, mientras que el modelo extraído sólo tiene un 47% - no entiendo.... Bueno, todavía no he podido ejecutarlo en MQL....
 
Mihail Marchukajtes:
Lo he descargado, todo está bien, pero no he conseguido ponerlo en MQL... Tampoco he podido ejecutarlo en MQL todavía....

Porque el archivo java tiene la función Math.signum(), mientras que el archivo mql no.

Mihail Marchukajtes:
No sé por qué el archivo guardado muestra resultados de optimización diferentes a los mostrados por el predictor. El propio predictor tiene un nivel de generalización de los datos del 90%, mientras que el modelo de salida sólo tiene un 47%. No claro....

Es una propiedad de los comités en los algoritmos de aprendizaje automático que los modelos combinados en un comité darán mejores resultados que los modelos tomados por separado. Si no, ¿qué sentido tienen los comités? Por eso, en jPrediction los clasificadores binarios individuales tienen peor generalización que los clasificadores ternarios.

Aquí también hay que tener en cuenta el parámetro del sesgo. Es deseable que sea inferior al 50%. Es incluso mejor tenerlo a cero. Cuanto menor sea su valor, más adecuado es el clasificador ternario.

 
Mihail Marchukajtes:
Lo he descargado, todo está bien, pero aún no he conseguido insertarlo en MQL. Bueno, no pude ejecutarlo en MQL todavía....

También puedes hacer esto. En el MetaEditor presione Ctrl+H, luego haga el cambio automático:


A continuación, añada la función signum() al código:

double signum(double x) {
   if (x == 0.0) return(0.0);
   if (x > 0.0) return(1.0);
   return(-1.0);
}
 
Yury Reshetov:

También puedes hacer esto. En el MetaEditor presione Ctrl+H, luego haga el cambio automático:


A continuación, añada la función signum() al código:

Bueno, lo probaré pronto, ya que estoy harto de la construcción en casa. Estoy negociando desde cero... No encuentro tiempo para optimizarlo, en cuanto lo haga lo reportaré en once....
 
Yury Reshetov:

También puedes hacer esto. En el MetaEditor presione Ctrl+H, luego haga el cambio automático:


A continuación, añada la función signum() al código:

No entiendo qué es la variable 1d y de dónde viene.
 
Mihail Marchukajtes:
No entiendo, está jurando a la variable 1d, ¿qué tipo de variable es y de dónde salió?
Lo descubrí, lo cambié a d1 y todo funcionó. No me he metido en el código, pero tengo entendido que es una comisión y que funciona en 5+++. Gracias, Yuri, por tu trabajo. "Ahora haremos el doble de heno para nuestra vaca" (de Matroskin.....)
 
Ahora un poco acerca de los comités, de vuelta en 2007 oí por primera vez este término, y construimos un comité de tres redes, Así que el comité voot elimina la señal y el nivel de la balanza sólo cuando 2 de los tres modelos funcionan correctamente, si el comité 2 de 3 dar una señal falsa, entonces el comité falla. así que algo como esto ....
 
Yury Reshetov:

También puedes hacer esto. En el MetaEditor presione Ctrl+H, luego haga el cambio automático:


A continuación, añada la función signum() al código:

Yuri, he decidido arriesgarme con el santo de los santos y hacer un grial, pero tengo una inscripción que dice que los valores pronosticados no pueden ser superiores a 10. ¿Es una restricción deliberada o un límite del algoritmo ???? Porque más de 10 es muy relevante así que ....