Construir 375. el error es realmente malo, como resultado de lo cual ya he perdido bastante dinero ...
Los parámetros del EA no se restablecen a la configuración después de cerrar/abrir el terminal.
Para ser más exactos, una parte de ellos se puede restaurar (por ejemplo, 3 de 6), mientras que el resto se restablece a la configuración predeterminada.
construye 381. ¡¡¡NADA HA CAMBIADO !!!
Cada vez que se reinicia el terminal, los EAs se inicializan con diferentes parámetros (los que quieran).
No entiendo, por favor dame un ejemplo de una serie de tiempo.
Entonces, no es un TC, ¿y qué? Si lo estableces en una serie de tiempo a través de Set, será un TC. ¿Es la primera vez que ejecuta el terminal? Que para ti es una gran noticia. Creo que, alguien acaba de escribir que debemos decidir por nosotros mismos cómo trabajar en sus programas - con TS o sólo con arrays.
No entiendo nada, por favor dame un ejemplo de serie temporal.
open[] y todas las demás matrices en OnCalculate son series de tiempo. Al principio, cuando se escribía el lenguaje MQL5, ArrayGetAsSeries() devolvía true para ellos y su indexación se realizaba para ellos exactamente como para las series temporales, es decir, hacia atrás.
Pero entonces resultó ser muy inconveniente y poco natural escribir los cálculos del buffer del indicador en el estilo de MQL4 y sólo había una salida - invertir la indexación de las series de tiempo para su uso conveniente. Empezamos a escribir indicadores personalizados con este espíritu:
intOnCalculate (constint rates_total, // размер входных таймсерийconstint prev_calculated, // обработано баров на предыдущем вызовеconstdatetime& time[], // Timeconstdouble& open[], // Openconstdouble& high[], // Highconstdouble& low[], // Lowconstdouble& close[], // Closeconstlong& tick_volume[], // Tick Volumeconstlong& volume[], // Real Volumeconstint& spread[] // Spread)
{
//---- переворачиваем все таймсерии, чтобы ими было удобно пользоваться, как обычными массивамиArraySetAsSeries(open,false);
ArraySetAsSeries(high,false);
ArraySetAsSeries(low,false);
ArraySetAsSeries(close,false);
ArraySetAsSeries(time,false);
ArraySetAsSeries(tick_volume,false);
ArraySetAsSeries(volume,false);
ArraySetAsSeries(spread,false);
ArraySetAsSeries(open,false);
.... остальной код
}
Pero cada vez que teníamos que escribir un lío de conversiones resultaba que tampoco era una buena idea. Por lo tanto, se decidió pasar estas series de tiempo con indexación, como para los arrays habituales. Así es como se produce esta paradoja, cuando las series temporales no se indexan como tales. Por eso la ayuda dice que hay que comprobar el orden de indexación y, si es necesario, configurarlo como es debido.
1. Por favor, compruebe la carga del historial en el probador (es la primera vez que lo pruebo).
Estoy probando el EURUSD usando una muestra de MACD estándar en H1 con el intervalo "último mes".
He alcanzado el 57% de los datos descargados y se congela con éxito, con sólo esta línea en el registro
2011.01.19 17:16:23 Tester EURUSD: history preliminary downloading started
2. ¿Es posible hacer la palanca de 1:200 y 1:500 en las nuevas construcciones en el probador constantemente?
Entiendo que no todas las empresas de corretaje tienen ese apalancamiento, especialmente en MT5, pero en el Probador de Estrategias probablemente se debería dejar porque es más conveniente probar las estrategias en una nueva plataforma.
Ejecute dicho indicador y lo comprobará por sí mismo:
Así que en
open[] tampoco es una serie temporal?
No entiendo nada, por favor dame un ejemplo de una serie temporal.
Construir 375. el error es realmente malo, como resultado de lo cual ya he perdido bastante dinero ...
Los parámetros del EA no se restablecen a la configuración después de cerrar/abrir el terminal.
Para ser más exactos, una parte de ellos se puede restaurar (por ejemplo, 3 de 6), mientras que el resto se restablece a la configuración predeterminada.
Cada vez que se reinicia el terminal, los EAs se inicializan con diferentes parámetros (los que quieran).
Esta función comprueba la dirección, no el cambio.
1) Sin inicialización
2) Con la inicialización
3) Código anterior, sólo con la función de dirección de indexación de arrays ArrayGetAsSeries
He cometido un error en el servicio de asistencia técnica con el nombre de la función simplementeAsí que en
open[] tampoco es una serie temporal?
No entiendo, por favor dame un ejemplo de una serie de tiempo.
Por eso lo hago en OnCalculate():
Pueden ayudarme a hacer queArrayGetAsSeries(low) dé true
¿Puedes ayudar a que lasalida de ArrayGetAsSeries(low) sea verdadera?
Así que en
open[] tampoco es una serie temporal?
No entiendo nada, por favor dame un ejemplo de serie temporal.
open[] y todas las demás matrices en OnCalculate son series de tiempo. Al principio, cuando se escribía el lenguaje MQL5, ArrayGetAsSeries() devolvía true para ellos y su indexación se realizaba para ellos exactamente como para las series temporales, es decir, hacia atrás.
Pero entonces resultó ser muy inconveniente y poco natural escribir los cálculos del buffer del indicador en el estilo de MQL4 y sólo había una salida - invertir la indexación de las series de tiempo para su uso conveniente. Empezamos a escribir indicadores personalizados con este espíritu:
Pero cada vez que teníamos que escribir un lío de conversiones resultaba que tampoco era una buena idea. Por lo tanto, se decidió pasar estas series de tiempo con indexación, como para los arrays habituales. Así es como se produce esta paradoja, cuando las series temporales no se indexan como tales. Por eso la ayuda dice que hay que comprobar el orden de indexación y, si es necesario, configurarlo como es debido.
Ayúdenme a hacer que lasalida de ArrayGetAsSeries(low) sea verdadera
Ya devuelve true, pero debido a un error del compilador su valor se emite incorrectamente como parámetro. Compruébalo así:
Resultado:
Sí da true, sólo que por un error del compilador su valor como parámetro sale mal. Compruébalo así:
Resultado:
Gracias, lo he resuelto.
ArrayIsSeries() yArrayGetAsSeries() en el operador condicional if() funcionan como se describe, pero Print() siempre da como resultado false.
Los promotores.
1. Por favor, compruebe la carga del historial en el probador (es la primera vez que lo pruebo).
Estoy probando el EURUSD usando una muestra de MACD estándar en H1 con el intervalo "último mes".
He alcanzado el 57% de los datos descargados y se congela con éxito, con sólo esta línea en el registro
2011.01.19 17:16:23 Tester EURUSD: history preliminary downloading started2. ¿Es posible hacer la palanca de 1:200 y 1:500 en las nuevas construcciones en el probador constantemente?
Entiendo que no todas las empresas de corretaje tienen ese apalancamiento, especialmente en MT5, pero en el Probador de Estrategias probablemente se debería dejar porque es más conveniente probar las estrategias en una nueva plataforma.