Errores, fallos, preguntas - página 1780
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Error de SymbolInfoTick() que devuelve datos irrelevantes - rebasamiento de ticks. Compilación 1525 x64. Prueba desde el indicador, no probó en el Asesor Experto:
#property indicator_chart_window
#property indicator_plots 0
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//--- indicator buffers mapping
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
//---
static long prevMs = 0;
//---
MqlTick tick;
if( SymbolInfoTick( _Symbol, tick ) )
{
if( prevMs != 0 && tick.time_msc < prevMs )
{
Print( __FUNCTION__,": ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!" );
Print( __FUNCTION__,": Текущее время мс = ",tick.time_msc," ("+TimeToString( tick.time, TIME_DATE|TIME_SECONDS )+"), предыдущее = ",prevMs );
}
//---
prevMs = tick.time_msc;
}
else
Print( __FUNCTION__,": ОШИБКА #",GetLastError(),". Значение текущего тика не получено!" );
//--- return value of prev_calculated for next call
return(rates_total);
}
//+------------------------------------------------------------------+
Resultado:
2017.02.02 21:54:20.450 test_SymbolInfoTick_20170202 (VTBR-3.17,M1) OnCalculate: Текущее время мс = 1486065260384 (2017.02.02 19:54:20), предыдущее = 1486065260387
2017.02.02 22:11:31.025 test_SymbolInfoTick_20170202 (GOLD-3.17,M3) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:11:31.025 test_SymbolInfoTick_20170202 (GOLD-3.17,M3) OnCalculate: Текущее время мс = 1486066290963 (2017.02.02 20:11:30), предыдущее = 1486066290966
2017.02.02 22:12:44.939 test_SymbolInfoTick_20170202 (BR-3.17,M1) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:12:44.939 test_SymbolInfoTick_20170202 (BR-3.17,M1) OnCalculate: Текущее время мс = 1486066364884 (2017.02.02 20:12:44), предыдущее = 1486066364890
2017.02.02 22:29:36.358 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:29:36.358 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: Текущее время мс = 1486067376304 (2017.02.02 20:29:36), предыдущее = 1486067376307
2017.02.02 22:31:26.462 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:31:26.462 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: Текущее время мс = 1486067486339 (2017.02.02 20:31:26), предыдущее = 1486067486344
2017.02.02 22:32:14.441 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:32:14.441 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: Текущее время мс = 1486067534360 (2017.02.02 20:32:14), предыдущее = 1486067534363
2017.02.02 22:36:07.509 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:36:07.510 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: Текущее время мс = 1486067767443 (2017.02.02 20:36:07), предыдущее = 1486067767463
2017.02.02 22:39:29.606 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: ОШИБКА ПОСЛЕДОВАТЕЛЬНОСТИ! SymbolInfoTick() вернуло не последнее значение!
2017.02.02 22:39:29.606 test_SymbolInfoTick_20170202 (Si-3.17,M1) OnCalculate: Текущее время мс = 1486067969557 (2017.02.02 20:39:29), предыдущее = 1486067969558
Real, Apertura, Servidor de Acceso V. ¡Tristeza! Presta atención al problema, por favor. Y también al problema en la solicitud#1598238 (a partir de la página 10, post de2017.01.26 09:43).
Queridos desarrolladores, ¡arreglemos los ticks! ¡Código proporcionado, aquí está - el problema, no hay necesidad de buscar nada, sólo reaccionar y solucionarlo!
Error de SymbolInfoTick() que devuelve datos irrelevantes - rebasamiento de ticks. Compilación 1525 x64. Prueba desde el indicador, no probó en el Asesor Experto:
Queridos desarrolladores, ¡arreglemos los ticks! ¡El código se ha proporcionado, aquí está - el problema, no es necesario buscarlo, sólo reaccionar y corregirlo!
Por favor, forme su mensaje con la aplicación servicedesk.
Error de compilación
"ABC"
"DEF"; //нормально
static string text2 =
#ifndef MACRO
"ABC"
#endif
"DEF"; //Error: 'DEF' - some operator expected
Orden incorrecto de las llamadas a las funciones al cambiar el periodo del gráfico
Secuencia de acciones:
Resultado:
#Paso 1: unirse
I::I->M5
OnInit->M5
#paso 2: cambio de periodo M5 ->M15
I::I->M15
OnInit->M15
#paso 3: cambio de periodo M15->M30
I::I->M30
OnInit->M30
OnDeinit->M15:3
I::~I->M15
#paso 4: eliminar
OnDeinit->M5:1 ##esta línea se esperaba en el paso #2 así: OnDeinit->M5:3
I::~I->M5 ##esta cadena se esperaba en el paso #2
OnDeinit->M30:1
I::~I->M30
Se esperaba que las filas marcadas con ## salieran en el paso #2 y además se desinicializaran debido al cambio de periodo(REASON_CHARTCHANGE:3) pero no se borraran del gráfico (REASON_REMOVE:1). En otras palabras, se esperaba que el paso #2 fuera similar al paso #3
void Prn( string f, int i = -1 ) { Print( f, "->", StringSubstr( EnumToString( Period()), 7 ), (i == -1 ? "" : ":" + i )); }
struct I {
I() { Prn( __FUNCTION__ ); }
~I() { Prn( __FUNCTION__ ); }
};
static const I i;
void OnInit() { Prn( __FUNCTION__ ); }
void OnDeinit( const int reason ) { Prn( __FUNCTION__, reason ); }
int OnCalculate( const int, const int, const int, const double& [] ) { return 0; }
struct B {
B();
~B();
const int h;
static const string name;
};
const string B::name = "Test_i";
B::B() : h( iCustom( NULL, 0, name ))
{
if ( !ChartIndicatorAdd( 0, 0, h ) ) Print( "-1:", GetLastError());
}
B::~B()
{
if ( !ChartIndicatorDelete( 0, 0, name ) ) Print( "-2:", GetLastError());
if ( !IndicatorRelease( h ) ) Print( "-3:", GetLastError());
}
static const B b;
void OnInit() export {}
Fallos al instalar los indicadores de Bill Williams
Puse fractales - lo hace
set AO - fija el ADX
construir 1031
Fallos al instalar los indicadores de Bill Williams
Puse fractales - lo hace
fijar AO - fijar ADX
construir 1031
no sólo al instalar este indicador, sino también de vez en cuando otros.
reiniciando el terminal se soluciona el problema.
se ha dado cuenta de que se pone en marcha después de la prueba.
El indicador de entrega de ZigZag en MT5 bild 1525 parpadea intermitentemente (sin parpadear)