[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 135

 

No entiendo la pregunta) considero el cambio medio

 
eddy:

No entiendo la pregunta) Estoy contando los cambios promedio

En ese caso, el recuento de todas las barras es obligatorio, independientemente de los cambios que se produzcan en las barras individuales.

Déjalo para mañana. Es mejor por la mañana...

 

Si no hay cambios en la barra, no hay nada que contar, estoy contando la media de los cambios existentes)

 
eddy:

Sólo me pregunto por qué una barra que nunca se ha negociado, es decir, si es necesario incluirla en una serie numérica en absoluto.

así como los meses que no operé, en el cálculo de los beneficios

La diferencia es que si consideramos todas las barras independientemente de los cambios que se produzcan en ellas, la esencia del cálculo desde el punto de vista de la codificación viene a ser una simple suma en un bucle y una división por el número de iteraciones del bucle (muy simple, sencillo y rápido), mientras que si nos molestamos en considerar las barras que no han cambiado, deberíamos añadir en el bucle la comprobación de la ausencia de cambios y una variable más que almacene el número de barras en las que se han producido esos cambios. En resumen: para los pioneros que les gustan las dificultades (para los que se ponen en una hamaca para mejorar la situación demográfica...)
 
KabrGvin:


¿y cómo saliste de esa situación?
 
eddy:

cero es la ausencia de cambio, no el cambio igual a cero.

Considero la media de los cambios existentes, es decir, los cambios que

No hay que prohibir a nadie ni hacer nada, me sumo a la opinión de los matemáticos. El cero es el mismo cambio, y la misma medida, así como otros. Señalarlo es un voluntarismo.
 
granit77:
No hay que prohibir a nadie ni hacer nada, voy a seguir el punto de vista de los matemáticos. El cero es el mismo cambio, y la misma medida, así como otros. Señalarlo es un voluntarismo.
Realmente depende de la tarea, no hay nada que discutir. Si el objetivo es calcular "la media de los últimos cinco cambios positivos ", entonces los ceros, por supuesto, no deben tomarse. Si se trata de "la media de los últimos cinco cambios no negativos " se debe tomar el cero. Eso es todo.
 
Tengo por qué el probador no optimiza el bot
 
todem:
Tengo por qué el probador no optimizar el bot
La respuesta está en el registro del probador de estrategias
 
if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;
   }

¿cómo crees que hay errores en este código? ya que el meta-editor muestra - 0 (no), pero cuando pones paréntesis después de la línea if (Hour()>=StartH && Hour()<=FinishH) { } - así :

if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)  {
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;}
   }
no abre las operaciones y no funciona! ¿alguien sabe cuál puede ser la razón?