¿Qué alimentar a la entrada de la red neuronal? Tus ideas... - página 54

 



Esta idea: Como usted sabe, SL y TP por lo general no se establecen durante el entrenamiento / optimización. Es difícil para el entrenamiento, y cuando se optimiza - los resultados en retroceso y avance suelen ser peores que sin ellos.


El precio trata de golpear los stops. Y la tarea es enseñar al NS a salir a tiempo tanto en beneficios como en pérdidas. Pero en la práctica, en back y forward sin stops, el NS a menudo va a sobre-sitting o se cierra en la parte inferior, porque no tiene habilidades en los nuevos datos - cuando salir.






¿Y qué pasa si introducimos drawdown por medio? Meteremos la nariz del NS en el resultado online de su trabajo, en el que verá un drawdown fuerte y reaccionará a él. Por ejemplo, se sabe que un número afecta al trabajo del NS cuanto más sea su valor. En un funcionamiento normal, el valor de la reducción de entrada será cero o casi cero, pero cuando la posición vaya mal, el valor aumentará y empezará a "pesadillear" la estructura entera de pesos, como resultado de lo cual el optimizador seleccionará los pesos de forma que reaccione a esta entrada.








Al final, o bien lo anulará para que no interfiera, en cuyo caso la característica no funcionará, o bien aprenderá de alguna manera a reaccionar a su trabajo. Se deslizan notas deentrenamiento con refuerzo, en el que todos los datos de la cuenta se lanzan también como estado: saldo, drawdown, etc. Pero no he hecho tal cosa con MLP. Si hay algo interesante, te escribiré.

 
Ivan Butko entrenamiento con refuerzo, en el que todos los datos de la cuenta se lanzan también como estado: saldo, drawdown, etc. Pero no he hecho tal cosa con MLP. Si hay algo interesante, te escribiré.
La idea es interesante. Lo intenté, introduje (entre otros) el drawdown en % del depo actual, normalizado al rango [0;1]. Luego me pareció que el tema era demasiado profundo para profundizarlo rápidamente, así que me dediqué a otras tareas.
 
Ivan Butko #:

¿Y si introducimos el drawdown por medios? .

será una martingala. la retroalimentación del drawdown la genera, y no importa cómo se realice mediante una fórmula rígida o con una capa de neuronas.

 
Maxim Kuznetsov #:

Martingala será martingala. la retroalimentación con drawdown la genera, y no importa cómo se implemente la conexión mediante una fórmula rígida o con una capa de neuronas.

En mis experimentos ocurría lo contrario, la red intentaba suprimir la actividad comercial a la mínima detracción, tenía que penalizar por falta de operaciones.
 
Ivan Butko #:
Para MLP, eso es con 3 neuronas.

¿Cuántos predictores? ¿Cuántos predictores influyen realmente en el resultado del modelo?

¿Obtiene resultados similares con otras herramientas?

¿Cómo detienes el entrenamiento - por qué criterio o búsqueda completa?

 
Aleksey Vyazmikin #:

¿Cuántos predictores hay? ¿Cuántos predictores afectan realmente al resultado en el modelo?

¿Obtiene resultados similares con otros instrumentos?

¿Cómo se detiene la formación: con qué criterio o con una búsqueda completa?




Cuando ZigZag, de 1 a 3 entradas. Cuando la posición del precio en el corredor, también de 1 a 3 entradas. He comprobado sólo en el euro, la libra y el franco.

En el euro y la libra todos son buenos, en el franco la posición del precio se comporta mejor, al parecer debido a la planitud del par. Formación, si a través de la propagación inversa del error, no me detengo, en NeuroPro se detiene después de varias apariciones de ZeroStep en lugar del número del error.
No sé qué criterio se establece allí. Y si se trata de un optimizador, lo ejecuto todo el tiempo hasta que se detenga. A veces lo ejecuto una segunda vez. Roman Poshtar lo ejecuta diez veces en sus artículos, no he llegado a tales eventos todavía.

 







He implementado dos características Todo se relaciona con el ajuste, así que nada sobrenatural El primero es elpeso dinámico, la movilidad de rango, ejecutando el número de entrada a través de unafunción artificial.





Es todo de la misma esencia. Me dibujé una idea en pinterest, variaciones de la idea


Es decir, dependiendo de lo que el valor de entrada es, se multiplica por un peso diferente. Una cosa así consume más valores en el optimizador MT por neurona, pero es más... flexible.






Y a veces libera el potencial de los datos de entrada, produciendo conjuntos que no aparecen en MLP estándar con el mismo número de pesos. La segunda característica es la amplificación/debilitamiento de la señal.



Se diferencia del shifter del chip anterior (cuando una sección separada en el rango de un número cambia de polaridad) en que voltea los números sólo en su polaridad. Por ejemplo, si un número llegó a la entrada 0,9 desde el rango [0..1], el sistema lo voltea a 0,1. Y viceversa.



Y viceversa. Si el rango es [-1..1] y el número es -0.3, será volteado y amplificado a la zona negativa a -0.7. Esta característica es necesaria si usted necesita para amplificar la señal, que en un MLP convencional constantemente sólo se debilita (debido a las características específicas de los pesos - son todos - menos de 0). Por supuesto, es posible establecer el rango de -2 a 2, o de -10 a 10 como pesos, especialmente relevante en la primera característica - pero, en primer lugar, es más caro para el Optimizador, que está limitado por parámetros, y donde es más fácil invertir el número con un solo booleano (verdadero-falso), que no es nada para el Optimizador, y multiplicar este nuevo número por el peso estándar por debajo de 0-l, haciendo así la corrección necesaria con la entrada. En segundo lugar, es imposible amplificar el número de entrada 0,01 e inferior con un rango de este tipo. Seguirá siendo poco influyente para el sistema. Pero, ¿y si es clave para la estrategia?

Aquí es donde se necesita amplificación.Opcionalmente, el optimizador también elige si aplica debilitamiento o amplificación a la entrada.




Todas estas características en la práctica, en mi opinión subjetiva, mejor y más rápido desbloquear el potencial de los datos de entrada en la forma limitada proporcionada por el optimizador.
Y también, introduce nuevos conjuntos, que en el esquema estándar de pesos (todos con todos y estáticos) - no permiten revelar los datos de entrada.

 

Característica


Sorprendentemente, he encontrado un fallo flagrante de MLP: no sólo ajusta las operaciones a la historia, sino que ajusta las posiciones específicamente a la historia





Basándome en estas consideraciones, añadí un módulo espejo - vuelvo a enviar los datos a la entrada, sólo que reflejados: cada valor se multiplica por -1. Pero lo hago sólo si no hay señal para una de las posiciones. Es decir, si después de la primera ejecución la salida del NS es mayor que el umbral de apertura - por favor, abra a gusto.

Y si es menor que el valor umbral - entonces lo reflejo para ver si corresponde al patrón invertido en el gráfico, que el NS no quiere operar. Y si el nuevo valor es mayor que el valor umbral - entonces reescribo OUT a este valor, pero con el signo contrario.


Como resultado, el NS no puede "esconderse" de un mismo tipo de posición y tiene que soportar el hecho de tener que abrir tanto COMPRA como VENTA dependiendo del gráfico.




Ahora "en la bajada" no se pierden las VENTAS, y no se pierden las COMPRAS en la subida En la práctica, hay menos conjuntos, se han ido los extremadamente "chulos" y se han quedado los "buenos" Subjetivamente, parece que en la bajada y en la subida, cuando se sobreoptimiza, la balanza es más propensa a revolotear que a irse al fondo.

Esto ya es bueno. Creo que esta característica debería ser un atributo obligatorio de NS.

 
Ivan Butko #:




En la práctica, hay menos conjuntos, desaparecen los extremadamente "guays" y quedan los "buenos". Subjetivamente, parece que en los retrocesos y los avances, cuando se sobreoptimiza, el equilibrio vuela más a menudo en lugar de irse al fondo.

Esto ya es bueno. Creo que esta característica debería ser un atributo obligatorio de NS.

Si entiendo bien la idea, en estas condiciones la red intenta buscar sólo patrones espejo, básicamente.

Probablemente, hay menos operaciones, ya que parece que no hay patrones de espejo real, hay diferentes patrones para vender y comprar - se puede ver bien con los ojos.

Puede intentar entrenar dos redes para dos direcciones, y el número de operaciones en ambas direcciones debería ser aproximadamente igual. En caso de una fuerte diferencia en el número de operaciones - aplicar sanciones o un coeficiente decreciente sobre el valor final de ff.

 
Andrey Dik #:

Si he entendido bien la idea, la red sólo intenta buscar patrones espejo en estas condiciones, esencialmente.

Probablemente, hay menos operaciones, porque parece que no hay patrones de espejo real, hay diferentes patrones para vender y comprar - se puede ver con los ojos.

Puede intentar entrenar dos redes para dos direcciones, y el número de operaciones en ambas direcciones debería ser aproximadamente igual. En caso de una fuerte diferencia en el número de operaciones - aplicar sanciones o un coeficiente decreciente sobre el valor final de ff.








Hemos llegado a los principales paradigmas del trading: 1) Los patrones son los mismos para comprar y vender, simplemente reflejados 2) Los patrones para comprar y vender son diferentes Sí, efectivamente, mientras no haya pruebas, se puede confiar en algunas creencias o hechos.



En este caso, como he dicho anteriormente, me baso en el hecho de que en todas las TSs conocidas las condiciones para COMPRAR y para VENDER son las mismas, tipo espejo. Esto se aplica tanto a las TSs de drenaje (99.9....%) como a las exitosas. Subrayo: las exitosas.


En mi opinión, el hecho de que cualquier discriminación de uno de los tipos de operaciones afecte negativamente a las operaciones de compra y venta también juega en contra de la segunda posición.



Por ejemplo, mi truco sobre el rango - si no se refleja, pero diferente (es decir, de -1 a 0 y de 0 a 1 serán completamente diferentes áreas con diferentes pesos) - a continuación, la optimización y la formación en sí se verá tanto en el período de optimización - terrible y estrecho, y en la parte delantera y trasera - terrible y estrecho. Y si se refleja - a continuación, las transiciones suaves son más propensos a ocurrir.


Imho, subjetiva.también en contra de la segunda opción juega el hecho, como se mencionó anteriormente, si se enseña en 2020 - a continuación, en 2021 vierte.
Y estos son dos años opuestos en dirección, a partir del Año Nuevo. Por lo tanto, un NS sin espejo, o un NS separado para BUY, que se entrena por separado, está garantizado para verter en todos los conjuntos de optimización en 2021. Si los presionas uno tras otro, todos habrán alcanzado su punto máximo.



Todos ellos han aprendido COMPRAR, y en 2021 abren COMPRAR donde pueden, no saben cómo salir de ello, y sólo un poco VENDER, y luego - no está claro dónde. Pero no rechazo esta variante y pruebo todo lo que viene a mano )) Porque cada día aparece algo nuevo