Errores, fallos, preguntas - página 35

 
Interesting:

Tienes que comprobar la dimensionalidad del array, lo más probable es que se esté accediendo a una "celda" inexistente (o a una existente, pero con una numeración diferente)...

Los arrays están indexados a partir de 0, por lo que cuando se accede a un índice de array sin tener en cuenta esta característica, suele salirse del rango...

Gracias, lo he arreglado. Pero ahora en el probador la gráfica es una línea recta, sin registro de errores y sin entrada:

2010.07.06 15:15:38 Núcleo 1 Desconectado
2010.07.06 15:15:38 Core 1 Archivo de registro "C:\NProgram Files\MetaTrader 5\Tester\Agent-127.0.0.1-3000\logs\20100706.log" escrito
2010.07.06 15:15:38 Core 1 GBPUSD,M5: 107944 ticks (552 barras) generados en 97266 ms (total de barras en el historial 108713)
2010.07.06 15:15:38 Core 1 OnTester resultado 0

¿Dónde busco ahora?

 
Rosh:

Aquí está la respuesta a su solicitud


Prueba con versiones ligeramente modificadas, todo coincide

He probado tanto con el 0 como con el 1 y tampoco coincide, y hablo del probador, no de ejecutarlo en un gráfico
 
Rosh:

....

Nunca he visto uno de estos antes

static int Handle;
¿Por qué estática? ¿Hay alguna trampa?
 
Prival:

¿Por qué estática? ¿Hay alguna trampa?

No encuentro de dónde lo saqué, pero debo haberlo copiado del experto de alguien.

No conozco ningún escollo - la estática se puede eliminar

 
ddd06:

No encuentro de dónde lo saqué, pero debo haberlo copiado del experto de alguien.

No conoce ninguna piedra - la estática se puede eliminar

No sabía que era tuyo. Creo que Rosh lo escribió así, trato de revisar sus códigos con detenimiento, al menos alguien de quien aprender, es una pena que no escriba y postee, a veces hasta en dos líneas hay algo bonito.
 
AM2:

Gracias, lo he corregido. Pero ahora en el probador la gráfica es una línea recta, sin registro de errores y sin entrada:

2010.07.06 15:15:38 Núcleo 1 Desconectado
2010.07.06.06 15:15:38 Core 1 Archivo de registro "C:\NProgram Files\MetaTrader 5\Tester\Agent-127.0.0.1-3000\logs\20100706.log" escrito
2010.07.06 15:15:38 Core 1 GBPUSD,M5: 107944 ticks (552 barras) generados en 97266 ms (total de barras en el historial 108713)
2010.07.06 15:15:38 Core 1 OnTester resultado 0

¿Dónde busco ahora?

¿Cómo puedo saber qué hay y cómo, en su código. Pásalo por el depurador (F5 en el EDITOR) y mira qué pasa...
 

Interesting:
Ну откуда я знаю что там и как, в вашем коде. Прогоните через дебагер (F5 в Эдиторе) и посмотрите, что и как там творится...

Aquí es donde encontré el error:

double calc_SMA( int timeframe, int period, int offset )
{
    double Close[];
    ArraySetAsSeries(Close,true);
    double vMA = 0;
    double sum=0;
    int    i;

    for( i = 0 ; i < period ; i++ )
    {
        sum += CopyClose(_Symbol,_Period,0,i + offset,Close);
    }
    vMA = sum / period;

    return(vMA);
}

La expresión Close[] Epression no puede ser evaluada

escribe

Originalmente era así:

double calc_SMA( int timeframe, int period, int offset )
{
    double vMA = 0;
    double sum=0;
    int    i;

    for( i = 0 ; i < period ; i++ ){
        sum += iClose( Symbol(), timeframe, i + offset );
    }
    vMA = sum / period;

    return(vMA);
}
 
AM2:

Aquí es donde encontré el error:

La expresión Close[] Epression no puede ser evaluada

escribe

Al principio era así:

1. Mira la ayuda de la función CopyClose().

La función devuelve la cantidad de datos copiados en la matriz, no el precio de cierre.

2. ¿Estás mirando el valor de Close[] en vtoche?

 
Para los desarrolladores, esta pregunta es tan vieja como un mamut - ¿Hay un análogo de la función AccountFreeMarginMode() que existe en MQL4 en algún lugar de MQL5? ¿O su resultado no es necesario ahora?
 
Interesting:
Para los desarrolladores, esta pregunta es tan vieja como un mamut - ¿Hay un análogo de la función AccountFreeMarginMode() que existe en MQL4 en algún lugar de MQL5? ¿O su resultado no es necesario ahora?

Pronto estará disponible: ya está en desarrollo.