Como faço para especificar o horário de negociação do meu EA? - Page 2
Página 2 de 744 FirstFirst 1 2 3 4 ÚltimaÚltima
Results 11 to 20 of 32

Thread: Como faço para especificar o horário de negociação do meu EA?

  1. #11
    Portanto, se estou tentando negociar entre 23:00 e 01:00 ou qualquer período que passe da meia-noite, uso a função OR em vez da função AND para comparar, certo? (TimeCurrent() gt;= StartTime || TimeCurrent() lt; StopTime)

  2. #12
    É aqui que geralmente é uma ideia melhor quebrar a lógica do tempo. Código inserido datetime StartTime = StrToTime(23:00); datetime StopTime = StrToTime(01:00); string TimeCheck = Fora dos Horários de Negociação; if(StartTime lt; StopTime TimeCurrent() gt;= StartTime TimeCurrent lt; StopTime) TimeCheck = Inside Trading Times; if(StartTime gt; StopTime (TimeCurrent() gt;= StartTime || TimeCurrent lt; StopTime) TimeCheck = Inside Trading Times; if(TimeCheck == Inside Trading Times) Order = OP_BUY;

  3. #13
    Então, qual é o código para negociar apenas quando o horário estiver entre 23:00 e 01:00 todos os dias?

  4. #14
    Não. Você parece estar perdendo o ponto. Para a EA, as 01h00 e as 23h00 acontecem no mesmo dia. O EA efetivamente ignora a meia-noite. Para compensar isso, você precisa verificar usando StrToTime para determinar se a hora de parada vem antes ou depois da hora de início e ajustar a lógica de acordo.

  5. #15
    O código ainda funcionaria independentemente do dia? Isso significa que ele negocia todas as vezes entre 23:00 e 01:00?

  6. #16
    23:00 e 01:00 seriam do mesmo dia (digamos 1º de janeiro) em vez de 1º de janeiro, 23:00 e 2 de janeiro, 01:00

  7. #17
    Que problema posso enfrentar com a meia-noite? Teria problemas se estivesse tentando especificar um período de tempo entre 23:00 e 01:00? Assim? datetime TimeCheck1 = StrToTime(23:00); datetime TimeCheck2 = StrToTime(01:00); if (TimeCurrent() gt; TimeCheck1 TimeCurrent() lt; TimeCheck2 Buy1 gt; Buy2 Buy3 lt; Buy4) { Order = SIGNAL_BUY; }

  8. #18
    Sim. No entanto, depois de fazer algo assim, certifique-se de que o horário especificado esteja no dia adequado. Você precisa ter certeza de lidar com a meia-noite corretamente.

  9. #19
    Portanto, se eu quiser abrir uma ordem de compra com a condição de que o horário seja entre 19:00 e 19:30, devo usar o seguinte código, certo? datetime TimeCheck1 = StrToTime(19:00); datetime TimeCheck2 = StrToTime(19:30); if (TimeCurrent() gt; TimeCheck1 TimeCurrent() lt; TimeCheck2 Buy1 gt; Buy2 Buy3 lt; Buy4) { Order = SIGNAL_BUY; }

  10. #20
    é aqui que você pode querer começar a usar conversões de string. datetime TimeCheck = StrToTime(12:34); a comparação TimeCheck com TimeCurrent()

Permissões de Publicação

  • Não pode publicar novos tópicos
  • Não pode publicar respostas
  • Não pode publicar anexos
  • Não pode editar as suas publicações
  •  
  • Código BB está Ativo
  • Smilies estão Ativos
  • Código [IMG] está Ativo
  • Código [VIDEO] está Ativo
  • Código HTML está Desligado
O site da tradingintuitivo utiliza cookies
O site da tradingintuitivo utiliza cookies, alguns já foram definidos. Pode ler sobre a nossa utilização de cookies aqui. Por favor, clique no botão à direita para aceitar os nossos cookies. Se continuar a usar o site da tradingintuitivo, vamos supor que aceita os nossos cookies.