Discusión sobre el artículo "Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXI): Clases comerciales - El objeto comercial multiplataforma básico" - página 3
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
Si necesita comparar una solicitud de operación y una posición, la forma más sencilla es establecer el identificador de posición (no mágico). Cada solicitud tiene su propio identificador. La magia del asesor se puede dejar una para todas las posiciones. Entonces por el identificador (está escrito en la magia de una posición u orden y nunca se perderá), puede hacer coincidir con precisión la solicitud y la posición/orden en cualquier momento.
¿Es algo así?
Solicitud de operación:
Gestor de eventos:
Problema: el método CEvent::GetPendReqID() que necesito arriba es protected¡¡!! ¿Alguna idea mejor sin tener que cambiar el código fuente de DoEasy? En mi humilde opinión, estos métodos deberían ser públicos;-)
Problema: el método CEvent::GetPendReqID() que necesito arriba es protected ¡¡!! ¿Alguna idea mejor sin tener que cambiar el código fuente de DoEasy? En mi humilde opinión, estos métodos deberían ser públicos;-)
Tienes que vigilar la clase CEngine - sólo ella da acceso a la librería a los programas de usuario.
Todas las demás clases son para las necesidades de la biblioteca, y no están destinadas a los usuarios, con la excepción de las funciones de servicio de la biblioteca que están disponibles en el programa después de conectar la biblioteca a él.
Es necesario observar la clase CEngine - sólo ella da acceso a la biblioteca a los programas de usuario.
Todas las demás clases son para las necesidades de la biblioteca, y no están destinados a los usuarios, con la excepción de las funciones de servicio de biblioteca que están disponibles en el programa después de conectar la biblioteca a la misma.
¿Puede darme un ejemplo? Estoy mirando la clase CEngine y veo que es posible extraer una lista de eventos, comprobar su tipo, etc... así que puedo acceder a cada evento pero no encuentro ninguna forma obvia de leer detalles específicos del evento empaquetados en el número mágico (grupos & ID de petición) desde el objeto CEngine -- como yo lo veo, todavía necesito leer esta información directamente desde las instancias del objeto CEvent como en mi ejemplo de manejador de eventos de arriba en el método even-handler de mi robot, es decir CEvent:GetPendReq()
class CEngine { //... //... //--- Devuelve (1) la lista de eventos de orden, trato y posición, (2) objeto base de eventos de negociación por índice y el (3) número de nuevos eventos de negociación. CArrayObj *GetListAllOrdersEvents(void) { return this.m_events.GetList(); } CEventBaseObj *GetTradeEventByIndex(const int index) { return this.m_events.GetTradeEventByIndex(index); } int GetTradeEventsTotal(void) const { return this.m_events.GetTradeEventsTotal(); } //--- Restablecer el último evento de negociación void ResetLastTradeEvent(void) { this.m_events.ResetLastTradeEvent(); } //--- Devuelve el (1) último evento de negociación, (2) el último evento en las propiedades de la cuenta y (3) el último evento en las propiedades del símbolo ENUM_TRADE_EVENT LastTradeEvent(void) const { return this.m_last_trade_event; } int LastAccountEvent(void) const { return this.m_last_account_event; } int LastSymbolsEvent(void) const { return this.m_last_symbol_event; } //--- Devuelve la (1) cuenta de cobertura, (2) trabajando en el probador, (3) evento de cuenta, (4) evento de símbolo y (5) bandera de evento de negociación. bool IsHedge(void) const { return this.m_is_hedge; } bool IsTester(void) const { return this.m_is_tester; } bool IsAccountsEvent(void) const { return this.m_accounts.IsEvent(); } bool IsSymbolsEvent(void) const { return this.m_symbols.IsEvent(); } bool IsTradeEvent(void) const { return this.m_events.IsEvent(); } //... //... };Не могли бы вы привести мне пример? Я смотрю на класс CEngine и вижу, что можно извлечь список событий, проверить их тип и т. Д., Поэтому я могу получить доступ к каждому событию, но не нахожу очевидного способа прочитать конкретные детали события, упакованные в магическое число (группы идентификатор запроса) из объекта CEngine . - как я вижу, мне все еще нужно читать эту информацию непосредственно из экземпляров объекта CEvent, как в моем примере обработчика событий выше в методе обработчика четных событий моего робота, то есть CEvent :: GetPendReqID ()
Espere un poco, por favor. El próximo artículo del ru-segmento será sobre asesores, y allí intentaré explicarlo.
Espere un poco, por favor. El próximo artículo del ru-segmento tratará de los asesores, y allí intentaré explicarlo.
OK, genial - gracias...