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

CIsSession - classe para definir os intervalos de tempo (sessões) - biblioteca para MetaTrader 5
- Visualizações:
- 1434
- Avaliação:
- Publicado:
- 2016.02.05 11:00
- Atualizado:
- 2016.11.22 07:33
-
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
Eu decidi publicar esta classe após ler esta publicação. Este tópico parece interessante. Minha abordagem não resolve todo problema também. Entretanto, eu sugiro o que pode ser melhorado.
O exemplo de uso desta classe foi feito semelhante a esta variante. Dessa maneira fica claro de visualizar suas vantagens e desvantagens.
As vantagens:
- Possibilidade do parâmetro de entrada de data e hora ser padrão. Veja a imagem. Uma forma de cometer menos erros.
- A possibilidade de otimizar intervalos de tempo no testador de estratégia foi preservada.
- Todas as configurações podem ser alteradas rapidamente em todo o programa.
- Mais opções de uso. Detalhes após a imagem.
- Mais fácil de usar no código. Pelo menos para mim.
Opções de definir o tempo
1. Sessão diária. Por exemplo, é permitido a negociação todos os dias em um intervalo específico de tempo. Condições:
- A data da sessão de início e encerramento é igual a 1970.01.01.
- O horário da sessão de início deve ser menor que o horário da sessão de encerramento.
2. Sessão noturna. Por exemplo, a negociação durante a noite é permitida: inicia hoje, termina amanha. E continua assim todos os dias. Condições:
- A data da sessão de início e encerramento é igual a 1970.01.01.
- O horário da sessão de início é maior que o horário da sessão de encerramento.
3. Com o intervalo das datas. Por exemplo, a negociação é permitida a partir da data da sessão de início até a data da sessão de encerramento. Condições:
- A data da sessão de início é menor que a data da sessão de encerramento.
- Para qualquer horário, mas isso também foi levado em conta.
4. Datas fora do intervalo. A data da sessão de início é maior que a data da sessão de encerramento. Assim, a negociação é permitida até a data da sessão de encerramento e após a nova data da sessão de início. Condições:
- A data da sessão de início é maior que a data da sessão de encerramento.
- Para qualquer horário, mas isso também foi levado em conta.
5. Habilitar/desabilitar a negociação no dia da semana. É suficiente definir como "true" nos parâmetros para cada dia da semana que você deseja negociar. Ou "false" para desabilitar a negociação.
6. Toda configuração pode ser alterada em qualquer lugar do programa utilizando os métodos Init().
Obs. A classe foi criada para o MetaTrader 5, mas ela também funciona para o MetaTrader 4. A única diferença é que o Testador de Estratégia do MetaTrader4 não suporta a otimização dos intervalos de tempo no formato datetime. Mas isso é solucionado substituindo o formato datetime por long nos parâmetros de entrada do EA.
Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/14305

Um oscilador simples que mostra a velocidade da mudança do indicador MACD implementado como um histograma de duas cores.

O indicador fractal_dimension com a opção de seleção do tempo gráfico nos parâmetros de entrada.

Robô que negocia o sentimento de abertura do mercado.

A classe restringe a negociação do EA pelo tempo. Ele possui opções de configuração flexíveis, o que permite definir um número personalizado de fusos horários, e permite também negociar somente em dias específicos da semana.