Boa tarde,
Criei meu primeiro EA pelo assistente MQL.
Para testar estratégias day trade no backtest estou precisando de colocar horário de início e fim de negociação diários
nos Parâmetros de entrada do EA, conforme na figura abaixo.
Alguém poderia me ajudar?
Pela sua imagem é mais ou menos isso que você deve colocar no escopo global:
input string hor = "-------"; //Horários
input datetime hor_ini = D'09:00'; //Horário de Início
input datetime hor_encerra = D'16:00'; //Horário de Encerramento de Entradas
input datetime hor_fim = D'17:15'; //Horário de Encerramento
Pela sua imagem é mais ou menos isso que você deve colocar no escopo global:
input string hor = "-------"; //Horários
input datetime hor_ini = D'09:00'; //Horário de Início
input datetime hor_encerra = D'16:00'; //Horário de Encerramento de Entradas
input datetime hor_fim = D'17:15'; //Horário de Encerramento
Valeu!!!
Muito obrigado, Silvio!!!
Valeu!!!
Muito obrigado, Silvio!!!
Mas mesmo vc declarando essas variáveis é necessário vc tratar isso no código para que o seu EA saiba que se chegar em determinado horário deve fechar as operações, ou acompanhar as abertas sem abrir mais ate o encerramento.
Pela sua imagem é mais ou menos isso que você deve colocar no escopo global:
input string hor = "-------"; //Horários
input datetime hor_ini = D'09:00'; //Horário de Início
input datetime hor_encerra = D'16:00'; //Horário de Encerramento de Entradas
input datetime hor_fim = D'17:15'; //Horário de Encerramento
Silvio,
Fiz do mesmo jeito que vc ensinou ao TradeDoctor, porem nos meus parametros em vez de mostrar somente "HH:MM" aparece "AAAA.MM.DD HH:MM:SS", como corrigir isso?
Abs.
Silvio,
Fiz do mesmo jeito que vc ensinou ao TradeDoctor, porem nos meus parametros em vez de mostrar somente "HH:MM" aparece "AAAA.MM.DD HH:MM:SS", como corrigir isso?
Abs.
input group "Horário de Negociação"; input string inicio ="09:00";//Inicia envio das ordens (HH:MM) input string termino ="17:00";//Encerra envio das ordens (HH:MM) input string fechamento ="17:30";//Fechar todas as posições (HH:MM) MqlDateTime horaAtual; MqlDateTime horaInicio; MqlDateTime horaTermino; MqlDateTime horaFechamento; int OnInit() { TimeToStruct(StringToTime(inicio),horaInicio); TimeToStruct(StringToTime(termino),horaTermino); TimeToStruct(StringToTime(fechamento),horaFechamento); return(INIT_SUCCEEDED); } void OnTick() { TimeToStruct(TimeCurrent(), horaAtual); }
Eu uso assim, agora você pode definir uma lógica para os horários ;)
Eu uso assim, agora você pode definir uma lógica para os horários ;)
Eu tbm estou tentando fazer isso, mas o meu não esta abrindo os trades a partir do horario de inicio.
No backtest funciona mas no cenario real não. Pq no backtest funciona e no cenario real nao ?
Estou tentando assim.
//input string inicio = "09:35"; bool defineHorarioInicio(string inicio){ MqlDateTime horario_atual; MqlDateTime horario_inicio; TimeToStruct(TimeCurrent(), horario_atual); TimeToStruct(StringToTime(inicio), horario_inicio); if(StringLen(inicio) > 0){ if((horario_atual.hour >= horario_inicio.hour) && (horario_inicio.min == NULL || horario_inicio.min == "")){ //Alert("Horario de inicio - OK"); return true; }else if((horario_atual.hour >= horario_inicio.hour) && (horario_atual.min >= horario_inicio.min)){ //Alert("Horario de inicio com minuto - OK"); return true; } } return false; }

- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Boa tarde,
Criei meu primeiro EA pelo assistente MQL.
Para testar estratégias day trade no backtest estou precisando de colocar horário de início e fim de negociação diários
nos Parâmetros de entrada do EA, conforme na figura abaixo.
Alguém poderia me ajudar?