[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 386

 
Integer:

No lo entenderá)) He resuelto este problema más o menos en este estilo. Es bueno tener a alguien que entienda la esencia de la tarea. Sólo que sigo teniendo una cola, en qué orden se empezaron a realizar las tareas, y en qué orden se siguen realizando en un círculo.

Bueno, entonces en lugar de las expansiones, las propias exps se definen con un índice, entonces la cola será por el tiempo de la primera ejecución.
 
Zhunko:

El MACD muestra la velocidad en pips a lo largo del tiempo. Si por velocidad de cambio te refieres a la aceleración, debes tomar la derivada del MACD.

Se obtienen resultados interesantes. Actualmente estoy escribiendo un experto en este tema.


¡Tonterías! Así que hay que tomar la derivada para conocer la aceleración en lugar de la velocidad, y hay que tomar la macd para conocer la velocidad, pero ¿por qué no la derivada de algo?
 
FAQ:

Pues bien, en lugar de asas, las propias expansiones se definen con un índice, luego la cola será por tiempo de la primera ejecución.


Sí. Las asas no se utilizan.
 
Zhunko:

El MACD muestra la velocidad en pips a lo largo del tiempo. Si por velocidad de cambio te refieres a la aceleración, debes tomar la derivada del MACD.

Salen resultados bastante interesantes. Ahora estoy escribiendo un experto en este tema.


¿Es esta la forma correcta de hacerlo?

for(int i=0; i<limit; i++) velocity[i]=(Close[i]-Close[i+1])/Point;
for(i=0; i<limit; i++) acceleration[i]=velocity[i]-velocity[i+1];

No soy muy bueno en esto, así que si no es correcto, por favor discúlpenme. Muestra la velocidad en pips por minuto y la aceleración en pips por minuto. ¿O me equivoco?

Oh, me olvidé de explicar. Como Δt=1, no dividí por uno, pensé que estaba claro.

 

Este...

Creo que Arles ha resuelto la respuesta a la pregunta, ya que todavía no soy capaz de captar la esencia de la solución. Pero eso es porque soy un principiante y necesito más tiempo para aprender primero la teoría y luego intentar la práctica. Pero intentaré dominarlo.

Zhunko:

Sergey, ¿qué cuestiones no has resuelto? Si esto:

Chiripaha:

Es decir, respondiendo a la pregunta de Arles, si un Asesor Experto ha registrado órdenes y "se ha echado una siesta" durante un tiempo, en este momento, el otro EA no ha cruzado los límites de los fondos asignados (supongamos el 80% del depósito - ambos EAs tendrán este tamaño) y colocará una orden (entrará en la operación en el mercado). ¿Y cuando el primero reanude el trabajo (y el terminal de gestión monetaria ya haya sido calculado el día anterior), también abrirá una operación que supere los límites establecidos por el Asesor Experto?

Si este sistema (hipotéticamente) se multiplica por varios EAs, ¿podría haber uno en el que la Gestión de Riesgos estuviera en un sistema crítico?

¿He entendido bien esto del multithreading? - Si es así, es ciertamente un lío desde el punto de vista financiero. Pero, como la probabilidad de que esto ocurra es baja en las cuentas pequeñas, esto es sólo hipotético. Y en las cuentas más grandes, probablemente escribirán algo ellos mismos. Pero, aun así, ¿resulta que esto es cierto?

Y tengo una pregunta: ¿es esta una posición oficial o son sólo especulaciones y experimentos como los míos?

Luego está el código de la página 378. Aquí está de nuevo:

Cuando el retraso es "trabajo simulado", inserte una referencia al depósito u otro recurso.

Puedes convertir este bloque de sincronización en una función y ponerlo en una biblioteca. Habrá una función sincrónica de acceso al depósito desde cualquier Asesor Experto.


Cierto, por pregunta sin resolver me refería exactamente a esta lista de preguntas.

El hecho de que hayas encontrado una solución - es muy bueno y entiendo tu posición y la acepto. Pero! - Como escribí justo en el siguiente post después del post con las preguntas - ha propuesto la siguiente solución, cuando se puede crear un programa, en el que estas preguntas serán resueltas por el autor (programador) del programa. Y esto es bueno. Pero este es el siguiente paso. El hecho de que hayas diseccionado este paso en detalle en la discusión también es muy bueno para la comprensión y más aún para los principiantes sin experiencia como yo. Y el hecho de que ahora haya ofrecido ejemplos prácticos de cómo solucionarlo. - Es maravilloso. Es decir, has ofrecido una solución a este problema (confirmando indirectamente su existencia y la necesidad de una solución). ¡PERO!

Al fin y al cabo, cuando Arles preguntaba, no se refería a los robots corregidos que pueden ser corregidos de tal manera, sino que se refería a que cuando él o miles de otros traders establecen EAs en los que no se reducen estas cuestiones, sino que se diseñan para una simple aplicación en un par de divisas, no tienen en cuenta que habrá un montón de otros EAs (o incluso este mismo robot) en otros gráficos. En este caso, puede provocar el caos (con un enorme flujo de información, por ejemplo, durante los comunicados de prensa, cuando hay una gran cantidad de acuerdos en todo el mundo) en la secuencia de solución de tareas. Ya que el paralelismo y el multithreading están en las antípodas de la consistencia, y en consecuencia, esta misma consistencia se romperá (sin solución especial). ¡Pero! Otra vez... Una solución ad hoc no es más que una vuelta a la coherencia. Ya que la cola, el término ya mencionado aquí, no es más que una secuencia.

Y de ahí la pregunta - ¿Es necesario crear un multithreading para luego volver a ponerlo en la cola? - Pero ese es otro tema. Yo también he ido más allá en la consideración del problema original. Usted es diferente de usted en una cosa - que ya está tratando de ofrecer variantes de solución, mientras que puedo llegar sólo a una formulación de la pregunta, ya que es la limitación de un principiante.

Y voy a copiar el esquema, que usted sugirió para la solución, y voy a tratar de desmontarlo y dominarlo en detalles. Pero no estoy seguro de poder hacerlo rápidamente. Pero hasta ahora, francamente, trato de simplificar al máximo los algoritmos de solución. Y utilizar soluciones complejas sólo allí donde no hay otra solución al problema (incluido el enfoque no informático - después de todo, el problema puede resolverse más allá del programa informático).

====================================

Es decir, en otras palabras. - Si no hay un bloque de la solución que sugieres, entonces, al utilizar muchos de estos EAs, puede ocurrir la situación descrita en la pregunta que hiciste sobre la Gestión de Riesgos?

Chiripaha:

... Si un EA ha contado las órdenes y durante un tiempo "tomó una siesta", en este momento otro EA no ha cruzado los límites de los fondos asignados (por ejemplo, el 80% del depósito - en ambos EAs este tamaño será) y colocó una orden (entró en el comercio en el mercado). ¿Y cuando el primero reanude el trabajo (y el terminal de gestión monetaria ya haya sido calculado el día anterior), también abrirá una operación que supere los límites establecidos por el Asesor Experto?

Si este sistema (hipotéticamente) se multiplica por varios Asesores Expertos, ¿podría haber uno en el que la Gestión del Riesgo estuviera en un sistema crítico?

Déjeme explicarle un poco más. No estoy seguro de que sea una situación crítica. Así que lo estoy considerando hepáticamente por ahora. Dado que la velocidad de resolución de los problemas es alta y las soluciones en el ordenador probablemente "vuelen" por el canal de ancho de banda del ordenador. - Pero tal vez me equivoque, porque según Arles - sólo recibe 2 órdenes por ronda. Así que hay un problema.

 
gyfto:

Oh, me olvidé de aclarar. Como Δt=1, no dividí por uno, pensé que estaba claro.
¿Este delta será siempre uno? ¿O puede ser variable? Si no es un parámetro constante, es mejor ponerlo (el parámetro) en la fórmula.
 
Integer:

Se trata de una unidad de acceso atómico y sin sincronización. No tiene sentido llamar así sólo al depósito. La llamada a cualquiera de las funciones del parámetro de depósito será atómica por sí misma, sin ningún ajuste. Si lo haces de forma atómica, todo el trabajo del Asesor Experto. Así es como se resuelven los problemas: crees que has hecho algo, pero en realidad es una ilusión.

Pensé que por fin entenderías lo que he dicho durante la noche... :-( Lamentablemente, no fue así.

Hay dos formas de programar esta tarea. Uno complicado, como el tuyo, y otro sencillo, como el mío. Si personalmente necesita poner en cola a los expertos con sus hilos, es más fácil hacerlo todo en un solo experto (hilo) y no sincronizarlos.

Se trata de sincronizar el acceso a un recurso. Mi código es suficiente. Al mismo tiempo, los Asesores Expertos trabajan de forma independiente y en paralelo.

Entero:

¡Tonterías! Así que hay que tomar la derivada para conocer la aceleración en lugar de la velocidad, y hay que tomar la mcd para conocer la velocidad, pero ¿por qué no la derivada de algo?
No entiendo la pregunta.
 
Zhunko:

Pensé que por fin entenderías lo que dije durante la noche... :-( Lamentablemente, no fue así.

Hay dos formas de programar esta tarea. Una elaborada, como la tuya, y otra sencilla, como la mía. Si personalmente necesita poner en cola a los expertos con sus hilos, es más fácil hacerlo todo en un solo experto (hilo) y no sincronizarlos.

Se trata de sincronizar el acceso a un recurso. Mi código es suficiente. Al mismo tiempo, los Asesores Expertos trabajan de forma independiente y en paralelo.

No entiendo la pregunta.


Junko, eres d-i-B*&%#o^i=d. ¿Cómo puedes ser tan estúpido? Ni siquiera tienes cerebro para entender el problema. Es inútil hablar contigo, no lo entiendes en absoluto. Pero la posición que adoptas... como que lo sabes y lo entiendes todo, pero no sabes ni entiendes nada, codificando al nivel de un niño de jardín de infancia nubo-lamer. Y su comprensión de todo está al mismo nivel. Pero tu ego...

Junko, incluso te lo explican y no lo entiendes ni en este caso, parece una parálisis cerebral.

 
Zhunko:

No entiendo la pregunta.


Eso lo dice todo.
 
Chiripaha:
¿Este delta será siempre uno? ¿O puede ser variable? Si no es un parámetro constante, es mejor ponerlo (el parámetro) en la fórmula.


Sí, siempre lo será, porque
Time[i] - Time[i+1] = const = 1
Otra cosa es que, si trabajamos con tick en lugar de M1 TF, entonces sí - de bin a bin Δt será variable.
Zhunko:

No entiendo la pregunta.

Creo que lo entiendo. El MACD es un delta de dos medias, por lo que la tasa será media, no verdadera. Después de todo Uno puede tomar esta tarea como un intento de introducir el sistema SI en el análisis, para sistematizarlo y hacerlo más comprensible.
Razón de la queja: