[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 612
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
Sim, eu fiz como você escreveu. E não se compila.
Obviamente, eu fiz algo errado, mas o que exatamente não entendo. Você poderia passar por ela passo a passo.
O primeiro pedido tem um preço aberto de1.2900 e um TP de 1.300. O segundo pedido tem um preço aberto de1.2800 e um TP de 1.290. Estes são parâmetros diferentes. A primeira éBAY, a segunda éBAY_STOP. Estes também são parâmetros diferentes.
Você está errado porque simplesmente não entende o ponto. E funciona, e tudo funciona perfeitamente da maneira que eu preciso. Talvez o código pudesse ser simplificado, mas agora não é mais uma questão de gordura... Só preciso terminar a EA inteira e já olhar para o retorno da idéia comercial que ela contém....
Não estou interessado em programar por causa da programação...
Acho que é exatamente isso que você tem - programação por programação. sua função não faz nada além de sobrecarregar a CPU.
Comecei a programar após cinco anos de estudo do mercado, desenvolvendo e experimentando várias estratégias, quando percebi que a estratégia comercial (bem sucedida) desenvolvida por mim e testada manualmente 20 vezes na história, primeiro, não tem análogos, que podem ser encontrados no kodobase, e segundo, mesmo com configurações próximas aos limites das capacidades técnicas, ela estabelece exigências que são impossíveis para os seres humanos, e que podem ser facilmente atendidas mesmo pelo computador mais fraco (por exemplo, ficar com seu computador por uma semana ou mais).
Mas você entendeu o ponto?
Basta colocar um pedido pendente com os parâmetros que você deseja.
P.S. No EA -- logo após a abertura do pedido.
Basta colocar um pedido pendente com os parâmetros que você deseja.
P.S. No EA -- logo após a abertura do pedido.
Qual é o código?
Devolve o número do bilhete que é atribuído ao pedido pelo servidor comercial ou -1 em caso de falha. Para obter mais informações sobre o erro, ligue para GetLastError().
Notas.
Ao abrir uma ordem de mercado (OP_SELL ou OP_BUY), somente os últimos preços Bid (para venda) ou Ask (para compra) podem ser usados como preço de abertura. Se a operação for realizada para um instrumento financeiro, diferente do atual, então para obter as últimas cotações para este instrumento, você deve usar a função MarketInfo() com o parâmetro MODE_BID ou MODE_ASK. Você não pode usar um preço estimado ou não-normalizado. Se o preço de abertura solicitado não estava no fluxo de preços ou o preço solicitado não está normalizado de acordo com o número de casas decimais, será gerado o erro 129 (ERR_INVALID_PRICE). Se o preço de abertura solicitado estiver severamente desatualizado, será gerado um erro 138 (ERR_REQUOTE), independentemente do valor do parâmetro de escorregamento. Se o preço solicitado estiver desatualizado mas ainda estiver presente no fluxo de preços, a posição será aberta ao preço atual e somente se o preço atual cair dentro da faixa preço+deslizamento.
Os preços da StopLoss e TakeProfit podem não estar muito próximos do mercado. A distância mínima de parada em pips pode ser obtida usando a função MarketInfo() com o parâmetro MODE_STOPLEVEL. O erro 130 (ERR_INVALID_STOPS) é gerado em caso de paradas errôneas ou não normalizadas.
Ao fazer um pedido pendente, o preço de abertura não pode estar muito próximo do mercado. A distância mínima do preço pendente do preço de mercado atual em pontos também pode ser obtida usando a função MarketInfo() com o parâmetro MODE_STOPLEVEL. Se o preço pendente do pedido aberto estiver incorreto, será gerado o erro 130 (ERR_INVALID_STOPS).
Em alguns servidores comerciais, pode ser estabelecida uma proibição de expiração de ordens pendentes. Neste caso, um erro 147 (ERR_TRADE_EXPIRATION_DENIED) será gerado ao tentar definir um valor não zero no parâmetro de expiração.
Em alguns servidores comerciais pode ser definido um limite para o número total de ordens abertas e pendentes. Se este limite for ultrapassado, uma nova posição não será aberta (nenhuma ordem pendente será definida) e o servidor comercial retornará o erro 148 (ERR_TRADE_TOO_MANY_ORDERS).
e mesmo que seu código tenha dado 24 erros no compilador!!! ainda assim, obrigado até mesmo pela ajuda descuidada.... para a idéia... (agora funciona - embora eu tenha basicamente tentado fazer isso, mas a pontuação falhou)
Eu não tentei compilá-lo, eu apenas coloquei os parênteses! Caso contrário, não funcionariam de forma alguma. Eu mostrei como eles devem ser. O resto da lógica ainda não está clara. Eu me lembro, colocando cada bandeira seguinte, você, perguntou se, ao contrário da condição anterior, enquanto verificava se a bandeira era verdadeira...
Na verdade, meu primeiro comentário o incitou a reconsiderar o que escreveu, verificando a referência.
quaisquer dicas para o novato!!!! o conselheiro é desativado no terminal, mas o batente é acionado é possível ?
É claro que sim.
quaisquer dicas para o novato!!!! o conselheiro é desativado no terminal, mas o batente é acionado é possível ?
Não é possível, é uma obrigação. O Stop Loss está no servidor e não depende da operação de seu terminal, ao contrário do Stop Trailing.