Participe de nossa página de fãs
Coloque um link para ele, e permita que outras pessoas também o avaliem
Avalie seu funcionamento no terminal MetaTrader 5
- Visualizações:
- 2209
- Avaliação:
- Publicado:
- 2018.10.04 11:11
-
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
Ao desenvolvê-lo, nós fomos inspirados pelo código TradingBoxing. No entanto, o código abaixo é baseado apenas na ideia, enquanto absolutamente toda a implementação está na MQL5 e em novas classes de negociação.
O painel de negociação possui apenas um parâmetro de entrada, magic number - o identificador exclusivo para o EA.
Aparência do painel de negociação:
Para exibir o volumes (para posições e ordens pendentes), a classe padrão Biblioteca Padrão -> Painéis e caixas de diálogo -> CSpinEdit" target="_blank">CSpinEdit foi ligeiramente modificada e salva como CSpinEditDouble. Infelizmente, não conseguimos criá-la usando herança, pois precisávamos mudar os membros da classe declarados como "privados".
Como você pode ver no nome da classe, ele foi criado para exibir os dados do tipo double. Portanto, nós adicionamos o método DisplayedDigits - define a precisão da exibição de texto no controle.
O campo de texto nesse controle também ficou editável. Por exemplo, ele pode ser útil quando você precisa inserir um preço ou um volume que difere muito do valor no campo de texto. Para o texto do campo de texto a ser salvo como um valor, o método EndEdit foi adicionado à classe CSpinEditDouble:
int m_digits; // dígitos para exibição //--- void EndEdit() { Value(StringToDouble(Text())); } public: CSpinEditDouble(void);
Este método memoriza o texto digitado como um valor.
O método EndEdit é chamado da classe OnEvent CSpinEditDouble:
//+------------------------------------------------------------------+ //| Manipulador comum de eventos gráficos | //+------------------------------------------------------------------+ EVENT_MAP_BEGIN(CSpinEditDouble) ON_EVENT(ON_CLICK,m_inc,OnClickInc) ON_EVENT(ON_CLICK,m_dec,OnClickDec) ON_EVENT(ON_END_EDIT,m_edit,EndEdit) EVENT_MAP_END(CWndContainer)
Para que as ordens de negociação sejam processadas o mais rápido possível (mesmo em um mercado muito quieto onde os ticks são gerados em grandes intervalos), cada clique no botão do painel de negociação chamará forçadamente o manipulador interno CTradingBoxingDialog::OnTick().
Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/20860

Intraday Intensity Index.

Indicador de canal HWC (Holt-Winters Channel).