Asesores Expertos: eInTradePanel

 

eInTradePanel:

eInTradePanel es un panel para el trading manual, tiene algunas funciones útiles. Utiliza un espacio mínimo en el gráfico.

eInTradePanel

Autor: Dmitry Fedoseev

 
Había un error al establecer el tiempo de caducidad. Corregido.
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
[Eliminado]  

Integer:
 Торговая панель eInTradePanel. Альтернатива стандартному окну открытия ордера. 

¡Genial! ¡Muchas gracias!

Idea, implementación, funcionalidad - ¡todo son 5 puntos! Ni siquiera puedo encontrar algo de lo que quejarme. :) Estaría bien que los desarrolladores incorporaran esta alternativa.

Integer, ¿alguna idea para el desarrollo? ¿Se aceptan deseos?

 
¡¡¡Genial!!! ¡¡¡¡Gracias!!!!
 
VladMih:

¡Muy bien! ¡Muchas gracias!

Idea, implementación, funcionalidad - ¡todo son 5 puntos! Ni siquiera puedo encontrar algo de lo que quejarme. :) Estaría bien que los desarrolladores incorporaran esta alternativa.

Integer, ¿alguna idea para el desarrollo? ¿Se aceptan deseos?

Aceptamos deseos, adelante.

 

Versión dorada para fuentes ampliadas en pantalla.

Yo uso fuentes ampliadas al 25% (instaladas en el sistema), en este modo muchos programas intentan "meterse en los márgenes". Menos mal que algunos con fuentes.... :)

Ah, por cierto, un deseo - para poner la configuración de colores en el ini-archivo, es más fácil de ajustar cuando los cambios de humor.... ;)

Bueno, es sólo una bagatela, no se puede tomar en serio.

Pero un deseo serio es crear un panel en todos los gráficos a la vez (ejecutando el Asesor Experto en un gráfico, por supuesto). Teniendo en cuenta que el panel se hace como una clase, no es demasiado difícil. (Un ejemplo sencillo es aquí).

Los gráficos deben guardarse. Al ejecutar un Asesor Experto en un gráfico, privamos al gráfico de la posibilidad de ejecutar cualquier otro Asesor Experto en él. :(

De todos modos, dejemos que nuestros EAs sean mutuamente educados.

Archivos adjuntos:
 
MetaDriver:

Un deseo serio es crear un panel en todos los gráficos a la vez (ejecutando el Asesor Experto en un gráfico, por supuesto). Dado que el panel se hace como una clase, no es demasiado difícil. (Un ejemplo sencillo está aquí)

No creo que funcione. Necesitas manejar eventos. En el ejemplo del temporizador, todos los gráficos se comprueban para el botón pulsado, y el temporizador funciona con un intervalo de un segundo, es decir, durante mucho tiempo, será inconveniente. Por supuesto, es posible ver otros gráficos desde el EA principal en bucle, pero no quiero entrar en inventos de izquierda, y utilizar las cosas para su propósito.

En el terminal, un gráfico con un panel es suficiente, el gráfico puede cambiar el símbolo.

 
Integer:

temporizador funciona con un intervalo de un segundo, es decir, mucho tiempo, será inconveniente. Por supuesto, es posible ver otros gráficos de la principal EA en bucle, pero no quiero hacer invenciones izquierda, y utilizar las cosas para el fin previsto.

a la cuestión de temporizador rápido y "suave" looping

//------------------------------------------------------------------ OnInit
int OnInit()
{
  EventChartCustom(ChartID(), 1, 0, 0, "user_start"); // inicializar el bucle
}
//------------------------------------------------------------------ OnChartEvent
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{       
  /* gestión de eventos*/
        
  Sleep(10); // una breve pausa para descargar
        
  EventChartCustom(ChartID(), 1, 0, 0, ""); // bucle de eventos
}
 
Integer:

1. No creo que funcione. Necesitas procesar eventos. En el ejemplo del temporizador, todos los gráficos se comprueban por pulsaciones de botón, y el temporizador trabaja con un intervalo de un segundo, es decir, largo, será inconveniente. Por supuesto, puedes ver otros gráficos desde el EA principal en bucle, pero no quiero hacer inventos a la izquierda, sino usar las cosas como están pensadas.

--

2. un gráfico con un panel es suficiente en el terminal, el gráfico puede cambiar el símbolo.

1. Haciendo pequeños cambios:

.......
#property indicator_chart_window
.......
........

//void OnTick()
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 &TickVolume[],
                const long &Volume[],const int &Spread[])
{
   TradePanel.Tick();
   return 0;
}

EA se convierte en un indicador compilado normalmente (con dos warrnings no críticos).

Todo funciona para él, casi no tiene quejas de salud. La única disfunción es que no abre órdenes, porque se supone que no debe hacerlo.... :)

Se puede solucionar. El esquema es aproximadamente el siguiente

el Asesor Experto abre indicadores en todos los gráficos (o sólo en los de minutos), que son bastante autónomos, sólo cuando es necesario abrir/cambiar una posición, reenvía el

evento al Asesor Experto principal, que lo hace por ellos.

Sutilezas:

1) el Asesor Experto, al abrir cada indicador, le pasa como parámetro el ID de su gráfico, para que el indicador pueda generar un evento dirigido a un gráfico concreto.

2) Al generar un evento dirigido al Asesor Experto, el indicador no debe olvidar pasar como parámetro de cadena el símbolo por el que se debe corregir la posición o colocar/corregir la orden.

3) Es deseable que el Asesor Experto escanee los gráficos una vez cada uno/unos segundos, comprobando si hay gráficos de nuevos minutos, y lance nuevos indicadores si es necesario,

clavando los innecesarios.

Eso es todo, se tarda una hora y media, o incluso menos.

ps. Oh sí, me perdí (4) variables globales. Se pueden multiplicar sin problemas - el ID del gráfico como prefijo se añade al nombre de la variable.

--

2. Eso es realmente largo.

 
SUPER!!!!!!Offiggeno!!!! nada superfluo, todo es sencillo, todo es intuitivo, sin artificios innecesarios!!!! ¡¡¡+5 puntos para el producto!!! ¡¡¡¡Yo estaba buscando para la posición y la gestión de pedidos con la ayuda de líneas, y encontró tal milagro!!!! ¡¡¡¡Bien hecho!!!!
 

Instalado

Da 5 errores y 2 advertencias

¿Cómo solucionarlo?

Archivos adjuntos:
iud1kh57g0.jpg  107 kb