Preguntas sobre el MQL5 Wizard y la biblioteca estándar de clases comerciales - página 9
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
¿Cuál es, entonces, su finalidad práctica, más que probatoria? Parece que está ahí, pero no se puede utilizar. ¿Y por qué cualquier pregunta sobre este tema, como, por ejemplo, la propuesta de introducir dicho tratamiento, o escribir un artículo por parte de los desarrolladores, o alguna guía sobre el tratamiento de errores, siempre se encuentra con el silencio por parte de los desarrolladores? Al fin y al cabo, son los más competentes en la materia, ¿cuál es el problema? Resulta cuando menos extraño que en lugar de algo realmente útil, estemos trabajando en un montón de indicadores que nadie necesita (0 comentarios, 0 peticiones de ellos), cuando no hay una base para el comercio - la capacidad de abrir y cerrar operaciones. La pregunta sobre el emulador de autocomercio se quedó sin respuesta, pero tiene que estar en la biblioteca estándar. Me gustaría escuchar la respuesta.
Así que nadie oculta que el asistente de estrategia es sólo para el probador. )) Sólo y rápidamente revisa esta o aquella idea y luego decide en qué dirección ir. Y la gestión de errores no es una tarea tan difícil. Al menos puedes mirar cómo lo hacen los demás. Por ejemplo, la biblioteca de funciones de KimIV en el cuarto foro. Creo que incluso podría escribir un artículo sobre este tema, pero ahora no tengo tanto tiempo.
Y los promotores ahora, según tengo entendido, tienen todos sus esfuerzos centrados en el desarrollo del proyecto en su conjunto. Los servicios de Mercado, Señales y Almacén están en el aire, tal vez algunos bichos más. En mi opinión, estas son las tareas principales ahora.
La cuestión no es si la tarea es compleja o no, sino si es necesario implementarla en una biblioteca estándar. Sería una buena idea definir una lista de las principales tareas a la hora de escribir el EA y ponerlas en práctica para los desarrolladores, de modo que no sea necesario mirar cómo lo hacen otros, o esperar a que alguien tenga tiempo para escribir un artículo.
... ¿Pero qué pasa si lo hago? ))
No.
Lo siento, pero para eso está la Biblioteca Estándar, para contener soluciones genéricas. El tratamiento de los errores de negociación depende en gran medida de las preferencias del operador.
Así que, queridos amigos, hagámoslo por nosotros mismos.
En cualquier caso, probablemente tendrá que esperar hasta que la empresa tenga más prioridades. Tal vez se implemente en un futuro próximo. Aquí decidí no esperar, ya que realmente no me gusta esperar y ya lo he implementado hace mucho tiempo. No tardó nada en llegar. Además, lo hice al principio del aprendizaje del idioma. Puede escribir su solicitud al Servicio de Atención al Cliente. ¿Y si lo hago? ))
La aplicación puede ser realizada por cualquier persona y de cualquier manera. ¿Está seguro de que lo ha hecho todo de forma óptima, correcta y bonita? Por supuesto, puede haber muchas variantes, pero una típica de los desarrolladores es suficiente para personalizarla según tus necesidades o usarla tal cual.
Hola, tengo dos preguntas.
1) En el método doble CExpertSignal::Direction(), para normalizar el resultado en todos los filtros, dividimos el valor total resultante por el valor numérico. Supongamos que utilizamos un único filtro, entonces según el código de la biblioteca estándar, el valor del número que =1 durante la inicialización se incrementará +1 y se convertirá en 2. Así, el resultado obtenido de un filtro se divide por 2. Pregunta = ¿hay un error?
double CExpertSignal::Dirección()
{
CExpertSignal *filtro;
una máscara larga;
doble dirección;
double result=m_weight*(LongCondition()-ShortCondition());
int number=1; // número de "votados"
//---
int total=m_filters.Total();
//--- para la depuración
//printf(__FUNCTION__+" : %s %d",EnumToString(m_period),total);
//--- bucle por filtros
for(int i=0;i<total;i++)
{
//--- máscara para mapas de bits
mask=((long)1)<<i;
//--- comprobación de la bandera de ignorar la señal del filtro
if((m_ignore&mask)!=0) continuar;
filter=m_filters.at(i);
direction=filtro.Direction();
//--- la señal de "prohibición"
if(direction==EMPTY_VALUE) return(EMPTY_VALUE);
//--- comprobación de la bandera de inversión de la señal del filtro
if((m_invert&mask)!=0) result=dirección;
si no resultado+=dirección;
número++;
}
//--- normalización
resultado/=número;
//--- devuelve el resultado
return(resultado);
}
2) ¿Podría decirme qué significa la variable m_adjusted_point?
Gracias.
Hola, tengo dos preguntas.
1) No hay ningún error fundamental.
2) Corrección de las cotizaciones de 3/5 dígitos.
No.
Lo siento, pero para eso está la Biblioteca Estándar, para contener soluciones genéricas. El tratamiento de los errores de negociación depende en gran medida de las preferencias del operador.
Así que, queridos amigos, es una cosa de "hágalo usted mismo".
Hola.
Decidí escribir mi propio módulo de señales con fines puramente cognitivos. Me he enfrentado a un problema. Tengo que establecer órdenes pendientes. He entendido que se puede hacer a través de CExpertSignal::OpenLongParams(...). Pero tengo un problema - mi probador advierte sobre la expiración inválida. Habiendo escarbado en el código fuente, me he dado cuenta de que no podemos obtener ningún tipo de tiempo aparte deORDER_TIME_SPECIFIED y nos gustaría ORDER_TIME_GTC.
Hasta ahora he hecho un movimiento inteligente, pero no es del todo correcto. He corregido la función en la biblioteca:
¿Qué puede aconsejar?