... como podem observar na imagem log1 (coloquei em azul os prints da primeira entrada e um dos valores da op.)
... como podem observar na imagem log2, e isso ocorre mesmo com o robô funcionando normalmente nos backtests ...
Boa noite, Christian!!
Você esqueceu de anexar as imagens...
Trabalhando em cima do seu código, da sua ideia, comece alterando as variáveis do horário pra ver se muda alguma coisa...
Por exemplo:
datetime calculo_tempo1 = iTime(_Symbol, PERIOD_D1, 0) + 09 * PeriodSeconds(PERIOD_H1) + 05 * PeriodSeconds(PERIOD_M1); datetime calculo_tempo2 = iTime(_Symbol, PERIOD_D1, 0) + 09 * PeriodSeconds(PERIOD_H1) + 10 * PeriodSeconds(PERIOD_M1);
EDIT.: ... Se preferir:
datetime calculo_tempo1 = StringToTime("9:05"); datetime calculo_tempo2 = StringToTime("9:10");
Trabalhando em cima do seu código, da sua ideia, comece alterando as variáveis do horário pra ver se muda alguma coisa...
Por exemplo:
Segue também um exemplo de verificação do histórico de operações que talvez possa lhe ajudar...
//--- Local variables datetime start_date = iTime(_Symbol, PERIOD_D1, 0); ulong ticket; int cnt; //--- Gets the operations history if(!HistorySelect(start_date, TimeCurrent())) { Print("Failed to get operations history..."); return; } //--- Checks the operations history for(cnt = HistoryDealsTotal() - 1; cnt >= 0; cnt --) { //--- Gets the deal ticket ticket = HistoryDealGetTicket(cnt); if(ticket == 0) { Print("Failed to get deal ticket in history..."); return; } if(HistoryDealGetString(ticket, DEAL_SYMBOL) == _Symbol && HistoryDealGetInteger(ticket, DEAL_MAGIC) == TF0_MAGIC && MathAbs(HistoryDealGetDouble(ticket, DEAL_PROFIT)) > 0.0) { //. . . } }
Trabalhando em cima do seu código, da sua ideia, comece alterando as variáveis do horário pra ver se muda alguma coisa...
Por exemplo:
Fiz essa alteração nas linhas de código Vini, funcionou perfeitamente nos backtests, irei observar amanhã, caso haja GAP, pra verificar se funciona no ao vivo!
Assim que testar de fato, venho compartilhar os resultados!
Agradeço pela luz e pelo compartilhamento da informação e conhecimento meu irmão, tenha um ótimo dia por ai!
Atenciosamente,
Christian Alves
Fiz essa alteração nas linhas de código Vini, funcionou perfeitamente nos backtests, irei observar amanhã, caso haja GAP, pra verificar se funciona no ao vivo!
Assim que testar de fato, venho compartilhar os resultados!
Agradeço pela luz e pelo compartilhamento da informação e conhecimento meu irmão, tenha um ótimo dia por ai!
Atenciosamente,
Christian Alves
Beleza, Christian!! Tudo de bom!! 👍
Fala Vinicius! Bom dia meu irmão!
Acabei de testar aqui no ao vivo o código que você encaminhou por último, e deu certo! Muito obrigado por mais uma vez compartilhar vosso conhecimento!
Tenha um ótimo dia por ai, grande abraço!
Fala Vinicius! Bom dia meu irmão!
Acabei de testar aqui no ao vivo o código que você encaminhou por último, e deu certo! Muito obrigado por mais uma vez compartilhar vosso conhecimento!
Tenha um ótimo dia por ai, grande abraço!
Bom dia, Christian!!
Que bom que deu certo!! Abraço!!

- 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
Bom dia, boa tarde ou boa noite senhoras e senhores. Espero que todos estejam bem.
Estou tentando fazer com que um de meus bebês armazene dentro de uma variável o valor de entrada de uma primeira operação realizada pelo EA. A primeira operação é realizada as 9h05m, no caso, seria a entrada desta ordem que estou tentando armazenar. Consegui obter esses dados dentro dos backtests, como podem observar na imagem log1 (coloquei em azul os prints da primeira entrada e um dos valores da op.)
Porém, todavia, entretanto rs... quando passo para o simulador no ao vivo, o valor retornado pela variável é sempre de 0.0, como podem observar na imagem log2, e isso ocorre mesmo com o robô funcionando normalmente nos backtests (no caso do SP500, testado tanto no contrato vigente quanto na série histórica). Vocês irão perceber que está dando o erro [invalid stops], e isso ocorre devido a falta da variável que está retornando zero, pois preciso dela para calcular o preço médio e settar o TP/Stop Loss dentro da mesma linha de código.
Segue abaixo a maneira na qual encontrei de conseguir fazer com que essa informação fosse trazida durante os backtests, e já adianto: não deve ser a coisa mais bonita do mundo e creio eu que nem a mais funcional, ainda sou um mero iniciante no universo da programação.
Vi também que no MQL4 havia o "SELECT_BY_POS", pois acredito que o que estou buscando é mais ou menos nesse caminho... enfim, agradeço por vossa atenção e espero que algum ser iluminado possa me auxiliar com meu problema.
Atenciosamente,
Chrisadz