Errores, fallos, preguntas - página 3035

 
Ivan Titov:

Hoy ha aparecido un error en las páginas de empleos autónomos:

Navegador Chrome. ¿Qué tiene esto que ver?

Gracias por su mensaje. Corregido

 
Slava:

¿No puedes comprobarlo tú mismo?

Puedes comprobarlo, pero qué hay que comprobar cuando no hay entendimiento ))
Y no es posible simular el momento en que los datos no están listos todavía.

Quiero entender la teoría, cómo trabajar correctamente con OnCalculate en este ejemplo.
Si los datos no están listos en la iteración actual del bucle, ¿debe devolverse el contador del límite+1 o qué?

 
Roman:

Es posible comprobarlo, pero qué hay que comprobar cuando no hay entendimiento)
Y no es posible simular el momento en que los datos no están listos todavía.

Quiero entender la teoría de cómo manejar correctamente OnCalculate en este ejemplo.
Si los datos no están listos en la iteración actual del bucle, ¿se debe devolver el contador límite+1 o qué?

Se debe devolver el cero.

 
Slava:

4. Todas las series temporales se procesan en orden, de la más baja a la más alta. Primero la aplicación del tick, luego el cálculo de todos los indicadores creados sobre esa serie temporal. Si pide datos para el mismo símbolo H1 de un indicador, trabajando en M1, nunca obtendrá datos con un tick aplicado. Los datos siempre estarán un poco más atrás, independientemente de los trucos que se apliquen. Porque un hilo por símbolo con procesamiento consecutivo de los plazos.

La declaración es un poco ambigua. Permítanme aclararlo por si acaso. Sí, al procesar un tick, todas las series temporales se procesan en orden secuencial, desde la más joven a la más antigua. Cada tic se añade a los datos de cada serie temporal, luego se calculan los indicadores para cada serie temporal, en orden. En otras palabras, para el indicador en OnCalculate(), los datos de la serie de tiempo (todos ellos) son ciertamente actualizados, pero los datos de los indicadores de los marcos de tiempo más antiguos no han sido recalculados todavía.

 
Slava :

En la primera solicitud, el indicador puede no recibir datos de su símbolo, sino de otro marco temporal, sólo por una razón: la serie temporal requerida aún no ha sido construida o ya ha sido destruida después de algún tiempo, cuando no había solicitudes.

Después de una solicitud fallida, sólo tiene que enviar un comando a su gráfico para actualizarlo y terminar OnCalculate inmediatamente. Está garantizado que OnCalculate será llamado y está garantizado que las series de tiempo necesarias estarán preparadas para este momento.

Esto es como usar un martillo para atrapar una mosca.

Como sabe, este comando actualiza todos los indicadores en todos los gráficos del símbolo en cuestión. Si tiene varios indicadores en varios gráficos del mismo símbolo, puede obtener fácilmente una especie de ciclo, porque cada indicador enviará su propio comando ChartSetSymbolPeriod ().

¿Podría añadir un comando para actualizar sólo el indicador REMOTO?

 
Alain Verleyen:

Esto es similar a utilizar un martillo para atrapar una mosca.

Como sabe, este comando actualiza todos los indicadores en todos los gráficos del símbolo en cuestión. Si tiene varios indicadores en varios gráficos del mismo símbolo, puede obtener fácilmente una especie de bucle, ya que cada indicador enviará su propio comando ChartSetSymbolPeriod ().

¿Podría añadir un comando para actualizar sólo el indicador REMOTO?

Puedes conseguir cualquier cosa si hay errores lógicos en el código.

 
mktr8591:

En realidad OnTick no está sincronizado con OnCalculate por el mismo símbolo. Teóricamente, OnTick puede llegar tarde y para su inicio se calcularán todas las indicaciones en todos los TFs?

Hasta ahora veo la situación contraria - los indicadores no se calculan con el nuevo tick que llega en el momento de la apertura de la barra.

 
Anton:

La declaración es un poco ambigua. Permítanme aclararlo por si acaso. Sí, al procesar un tic, todas las series de tiempo se procesan en orden, de la más joven a la más antigua. Cada tic se añade a los datos de cada serie temporal, luego se calculan los indicadores para cada serie temporal, en orden. Significa que para el indicador en OnCalculate(), los datos de la serie de tiempo (todas las series de tiempo) son ciertamente actualizados, pero los datos de los indicadores de marcos de tiempo más altos no han sido recalculados todavía.

¿Qué significa el"cálculo de los indicadores en cada marco temporal, por orden", es decir, en funcióndel "períodoENUM_TIMEFRAMES"?

intiCustom(
símbolo de cadena,// nombre del símbolo
ENUM_TIMEFRAMESpunto,// punto
cadena nombre// carpeta/nombre_usuario
...// lista de parámetros de entrada del indicador
);

Y si hay dos indicadores con el mismoperiodo ENUM_TIMEFRAMESy uno se calcula a partir de los datos de otro, ¿cómo se asegura la corrección del cálculo consecutivo?

¿He entendido correctamente que si el indicador se calcula(períodoENUM_TIMEFRAMES) en M1, entonces al solicitar la información OHLC recibirá la información actual sobre el último tick para cualquier TF superior?

 
¿Cuál es el resultado de

iSpread ?


Veo que es más o menos similar al valor del spread si consultas las barras en Símbolos/Barras en el terminal.

Por supuesto, estos valores no se corresponden con los valores reales dados por SYMBOL_SPREAD.

¿Por qué esa diferencia? ¿Y qué es un diferencial tan irreal mostrado coniSpread?

 
Aleksey Vyazmikin:

¿Qué quiere decir con"cálculo de indicadores en cada serie temporal, en orden", es decir, en función del"períodoENUM_TIMEFRAMES"?

intiCustom(
símbolo de cadena,// nombre del símbolo
ENUM_TIMEFRAMESpunto,// punto
cadena nombre// carpeta/nombre_usuario
...// lista de parámetros de entrada del indicador
);

Y si hay dos indicadores con el mismoperiodo ENUM_TIMEFRAMES, y uno de ellos se calcula a partir de los datos de otro, ¿cómo asegurar la corrección de un cálculo consecutivo?

Esto lo proporciona el terminal.

¿He entendido correctamente que si el indicador se calcula(períodoENUM_TIMEFRAMES) en M1, entonces al solicitar la información OHLC recibirá la información real sobre el último tick para cualquier TF superior en cualquier caso?

Sí, exactamente así.

Razón de la queja: