Preguntas de un "tonto" - página 96

 
tol64:

Recordé mi pregunta a Renate. Puede alguien aclarar lo que se quería decir con:

Si utilizo IndicatorRelease(), entonces estoy cometiendo un error enorme y conceptual.

¿Por qué?

Porque el comentario fue dado por Renat en relación con la situación específica de utilizar IndicatorRelease(), es decir: Carlson creaba y borraba asas de indicadores en cada tic.

Vea el debate aquí: https://www.mql5.com/ru/forum/1111/81949#comment_81949

 
Yedelkin:

Porque el comentario fue dado por Renat en relación a la situación específica de usar la función IndicatorRelease(), es decir: Carlson creaba y borraba asas de indicadores en cada tic.

Mira la discusión aquí: https://www.mql5.com/ru/forum/1111/81949#comment_81949

Oh, ya veo, si eso es lo que quieres decir. Sólo creo mangos indicadores una vez, al principio.
 
De acuerdo con determinados criterios, se cambió el periodo medio. Se eliminó el antiguo mango y se creó uno nuevo.
 
Karlson:
En aquel momento se trataba de que el periodo medio se adaptara al mercado durante la operación. De acuerdo con determinados criterios, el periodo medio se modificaba. Se eliminaba el antiguo mango y se creaba uno nuevo.
¿Qué solución ha elegido?
 
Karlson:
En aquel momento se trataba de adaptar el periodo de promediación al mercado durante la operación. De acuerdo con determinados criterios, se ha modificado el periodo de la media. La antigua manija fue removida. Se creó el nuevo.

Debido a la especificidad de la creación de nuestro propio flujo de indicadores, esta solución es inaceptable, esta cuestión ya ha sido discutida en los primeros días del lenguaje (durante las pruebas beta).

En este caso, sería razonable transferir el cálculo del indicador al Asesor Experto y calcular sólo los últimos datos, no toda la serie de datos históricos. Por supuesto, aquí hay una complicación, dicha solución no permite utilizar los indicadores ex5 sin conocer el código y requiere la comprensión del algoritmo de cálculo (para poder transferirlo y adaptarlo a las nuevas necesidades).

O la segunda opción, el período de promedio en sí mismo debe ser calculado dentro del indicador, y luego el mango debe ser cambiado.

 
tol64:
¿Y qué solución eligió?

En realidad, en mi caso, optimizar más de una vez al mes no tiene sentido, vale la pena desarrollar algo... Para mí no es importante. Al principio sólo creaba asideros, pero se me pedía que los quitara. Empecé a quitarlos. Renat lo comentó :) En general, está escrito que los manejadores no utilizados se eliminan con el tiempo, probablemente crear uno nuevo una vez al mes no es crítico, pero no importa:

1.instalar la autoadaptación en la genética, como en el artículo de Rich

https://www.mql5.com/ru/articles/334

Pero no tengo suficiente conocimiento aquí y no veo ningún propósito en particular.

2) Los cálculos deberían hacerse directamente en el Asesor Experto sin asas, debería agradecer el SMA.

3.Utilizar AMA o Vidya, que se hizo en las nuevas versiones.

Pero todas estas son mis soluciones privadas, no resuelven el problema.

Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт
Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт
  • 2011.10.27
  • Roman Zamozhnyy
  • www.mql5.com
Чуть более года назад joo дал нам в своей статье "Генетические алгоритмы - это просто!" инструмент для реализации Генетического алгоритма на MQL5. Воспользуемся же этим инструментом и напишем эксперт, который при наступлении каких-то граничных условий произведет Генетическую оптимизацию своих же параметров...
 
Karlson:

Pero todas estas son mis soluciones privadas. No son decisivas. Creo que Urain ha respondido a la pregunta.

Sí, gracias, por las respuestas.
 

Por la tarde.

Cómo utilizar la biblioteca TimeSeries.mqh, en particular la clase CiOpen ....

Por ejemplo: Gráfico - H1, instrumento - "EURUSD"... obtener el precio de apertura de la corriente - H1 y marcos temporales superiores - H4 y D1 barra #5 .....

Ahora un pensamiento en voz alta...

- adjuntar archivo de la biblioteca

#include <Indicators\TimeSeries.mqh>

- Declarar un array:

double Open[];

- crear una instancia de la clase:

CiOpen  iOpen;

(¿o tal vez sea "más correcto" así...?):

CiOpen  * iOpen;

- crear una instancia de la serie temporal:

iOpen.Create("EURUSD", PERIOD_H4);

.... y entonces no está claro.... El método GetData devuelve -1 o >= 0 - (pero necesito el valor del precio de apertura de la barra 5)

iOpen.GetData(5, 1, Open);

Pregunta 1. Dónde buscar los datos de precios abiertos (con tanto esfuerzo) (en qué lugar del array Open[] )...????

Pregunta 2. Para un plazo D1 tengo que declarar otra matriz y crear mi propia instancia de clase (o puedo hacerlo con una sola)... ????


Saludos, erkov.....



Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 

Hola.

¿Podría decirme cómo establecer una línea vertical en un gráfico en un punto determinado?

Gracias.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
 
Alfff:

Hola.

¿Podría decirme cómo establecer una línea vertical en un gráfico en un punto determinado?

Gracias.

Mira la función ObjectCreate().
Razón de la queja: