[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 389
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Quando a EA não inicia nada, é apenas para verificar se novos pedidos não serão abertos a cada tique
Este é seu código, eu não fiz nenhuma mudança
Você escreveu que o pedido será feito se você selecionar a ordem tiket do símbolo dado e a magia dada e ordens totais de menos de 2
Sem o código, é difícil dizer. É bem possível que a EA seja escrita por quatro dígitos, mas a conta demo é de cinco dígitos. Você entende que se definirmos, por exemplo, uma parada de 10 pips, então esta é a mesma distância para uma EA de cinco dígitos como 1 pip para uma EA de quatro dígitos. Se estabelecermos a distância mínima permitida para definir ordens de parada em, digamos, 3 pontos, então em um mercado de cinco dígitos isso seria de trinta pontos em vez de três. O servidor rejeitará compreensivelmente o comando para definir uma ordem com uma parada de 10 pontos nos cinco dígitos.
Mas a razão pode ser diferente. Você vê, você perguntou às pessoas por que o carro delas não pegava. As pessoas não podem dizer o motivo sem abrir o capô e ouvir como o carro reage às tentativas de partida...
Eu tentei executar um testador de estratégia pelo EURUSD e executá-lo por várias moedas, EURUSD, GBPUSD, USDJPY, mas não funcionou. Eu usei o Ponto ao enviar pedidos de Compra/Venda, portanto deve funcionar para todos os símbolos. O que eu não entendo mais é porque o testador mostra resultados, mas a EA não abre posições em uma conta demo. Em que casos isso pode acontecer?
De qualquer forma, obrigado pela resposta, postarei o código à noite.
Desculpe-me, escrevi alguns disparates aqui, se você pudesse me mostrar onde eu sou completamente cordeiro.
Todos eles: )))))))))))))))))))
Vamos começar do início:
Inicialmente, duas variáveis são inicializadas com zero:
int tiket, tikett;
então a primeira linha de código é onde selecionamos o pedido do bilhete:
OrderSelect (tiket, SELECT_BY_TICKET, MODE_TRADES);
aqui o bilhete variável é zero. Ou seja, tentamos selecionar um pedido com um bilhete zero. Ao fazer isso, nós nem mesmo lemos a ajuda, já que o parâmetro do pool é ignorado ao selecionar por bilhete, e você ainda especifica MODE_TRADES. Isto não é um erro - é um parâmetro extra, neste caso, que é simplesmente ignorado. Assim, o pedido com bilhete zero não é selecionado - não existe...
Além disso, tudo vai nas condições aninhadas; a primeira condição é:
... Se o símbolo da ordem selecionada corresponder ao símbolo do gráfico atual... E como nenhuma ordem foi escolhida, chegaremos com segurança à saída desde o início() sem fazer nada.
Posso assegurar-lhe... Além disso, você não tem menos interesse, mas... Não é interessante bisbilhotar por aí.
Comece com a busca de posições já abertas ou ordens pendentes que tenham sido definidas.
Boa sorte.
este é seu código, eu não fiz nenhuma mudança
Você escreveu que os pedidos serão feitos se você selecionar a ordem tiket do símbolo dado e a ordem mágica dada e há menos de 2 pedidos no total.
Ah, não, isso mesmo, quando você inicia um pedido com menos de dois, dois pedidos pendentes são feitos, e no próximo tick há dois deles e nada acontece.
Eu devo estar tendo algum tipo de crise na minha cabeça.
Ah, não, isso mesmo, quando você inicia um pedido com menos de dois, dois pedidos pendentes são feitos, e no próximo tick há dois e nada acontece.
Eu devo estar tendo algum tipo de crise na minha cabeça.
Eu fiz um testador de estratégia no EURUSD, tentei executá-lo em várias moedas, EURUSD, GBPUSD, USDJPY - não funcionou em nenhum lugar. Usei o Ponto ao enviar pedidos de compra/venda, portanto deve funcionar para todos os símbolos. O que eu não entendo mais é porque o testador mostra resultados, mas a EA não abre posições em uma conta demo. Em que casos isso pode acontecer?
De qualquer forma, obrigado pela resposta, vou postar o código à noite.
A questão é que o valor do Ponto é diferente.
Esse é o ponto: o valor do ponto varia.
O valor do ponto difere de cotação para cotação, mas sua essência é a mesma para todas as cotações com qualquer número de casas decimais - é a etapa de preço mínimo.
É por isso que o fato de eu ter usado para uma parada de perda, por exemplo, Ask-30*Point em vez de Ask-0.003, nega o comentário da drknn.
"É bem possível que a EA esteja escrita em quatro dígitos, enquanto a conta demo está em cinco dígitos. Se estabelecermos, por exemplo, uma ordem de 10 pontos de parada de perda, é a mesma distância em uma EA de cinco dígitos que 1 pip em uma EA de quatro dígitos. Se estabelecermos a distância mínima permitida para definir ordens de parada em, digamos, 3 pontos, então em um mercado de cinco dígitos isso seria de trinta pontos em vez de três. É claro que o servidor simplesmente rejeitaria o comando para definir uma ordem com uma parada de 10 pontos...".
Uma palavra de conselho.
Eu escrevi um roteiro simples para produzir o valor do nível mínimo de stop loss/stake profit em pips.
int start()
{
int min=MarketInfo(Symbol(),MODE_STOPLEVEL);
Alert(min);
return(0);
}
Saídas zero. Este é um valor padrão para este parâmetro?
fx_max:
Escrevi um roteiro simples que produz o valor do nível mínimo permitido de stop loss/stake profit em pips.
int min=MarketInfo(Symbol(),MODE_STOPLEVEL);
O resultado é zero. Este é um valor padrão para este parâmetro?
não