Discussão do artigo "Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXI): classes de negociação - objeto básico de negociação multiplataforma" - página 3
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Se você precisar comparar uma solicitação de negociação e uma posição, a maneira mais fácil é definir o identificador da posição (não mágico). Cada solicitação tem seu próprio identificador. A mágica do consultor pode ser deixada em uma só para todas as posições. Então, pelo identificador (ele é gravado na mágica de uma posição ou ordem e nunca será perdido), você pode fazer a correspondência precisa entre a solicitação e a posição/ordem a qualquer momento.
É mais ou menos assim?
Solicitação de negociação:
Manipulador de eventos:
Problema: o método CEvent::GetPendReqID() de que preciso acima é protegido!! Alguma ideia melhor sem que eu tenha que alterar o código-fonte do DoEasy? Na minha humilde opinião, esses métodos deveriam ser públicos;-)
Problema: o método CEvent::GetPendReqID() de que preciso acima é protegido !! Alguma ideia melhor sem que eu tenha que alterar o código-fonte do DoEasy? Na minha humilde opinião, esses métodos deveriam ser públicos;-)
Você precisa observar a classe CEngine - somente ela dá acesso à biblioteca para programas de usuários.
Todas as outras classes são para as necessidades da biblioteca e não são destinadas aos usuários, com exceção das funções de serviço da biblioteca que estão disponíveis no programa após a conexão da biblioteca a ele.
Você precisa observar a classe CEngine - somente ela dá acesso à biblioteca para os programas de usuário.
Todas as outras classes são para as necessidades da biblioteca e não se destinam aos usuários, com exceção das funções de serviço da biblioteca que estão disponíveis no programa depois de conectar a biblioteca a ele.
Você pode me dar um exemplo? Estou analisando a classe CEngine e vejo que é possível extrair uma lista de eventos, verificar seu tipo etc... Assim, posso acessar cada evento, mas não encontro nenhuma maneira óbvia de ler os detalhes específicos do evento contidos no número mágico (grupos e ID da solicitação) do objeto CEngine - a meu ver, ainda preciso ler essas informações diretamente das instâncias do objeto CEvent, como no meu exemplo de manipulador de eventos acima, no método even-handler do meu robô, ou seja, CEvent:GetPendReq()
class CEngine { //... //... //--- Retorna (1) a lista de eventos de ordem, transação e posição, (2) objeto de evento de negociação base por índice e o (3) número de novos eventos de negociação 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(); } //--- Redefinir o último evento de negociação void ResetLastTradeEvent(void) { this.m_events.ResetLastTradeEvent(); } //--- Retorna o (1) último evento de negociação, (2) o último evento nas propriedades da conta e (3) o último evento nas propriedades do 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; } //--- Retornar o sinalizador de (1) conta de hedge, (2) trabalho no testador, (3) evento de conta, (4) evento de símbolo e (5) evento de negociação 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 ()
Aguarde um pouco, por favor. O próximo artigo do segmento ru será sobre consultores, e lá tentarei explicar.
Aguarde um pouco, por favor. O próximo artigo do segmento ru será sobre consultores, e lá tentarei explicar.
OK, legal - obrigado...