[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 116
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
Rapazes, vocês podem me dizer por que pode haver um erro ao não poder abrir um indicador em um EA?
Esta condição é cumprida:
-Lista de parâmetros (se necessário). Os parâmetros transmitidos devem corresponder à ordem de declaração e ao tipo de variáveis externas (externas) do indicador personalizado.
Você deve verificar o nome do indicador. Poderia ser
Eu teria que verificar o nome do indicador. Eu não sei o que pode ser.
Eu verifiquei o nome. Está tudo bem. Descobrindo isso...
P.S. Eu instalei um terminal DC de cinco dígitos, movi tudo para lá, verifiquei tudo novamente, muitas edições de código, não ocorre mais nenhum erro desse tipo.
1. Abra um pedido e atribua o valor do preço de abertura à variável PriceBuy e exiba uma mensagem sobre ela.
2. Abra um novo pedido com as mesmas condições quando TakeProfit for alcançado.
Aqui está o código do programa:
external double PriceBuy = 0;
external bool Buy = true;
external bool number = false;
int start()
{
if(Buy)
{
int ticket=OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Bid-100*Point,Bid+100*Point);
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)
PriceBuy=OrderOpenPrice();
Alert("Buy Price = ",PriceBuy);
Buy = false;
number = true;}
if (Bid+100*Point<=PriceBuy && number)
{PriceBuy = 0;
number = false;
Buy=true;}
retorno;
}
Obrigado de antemão
O MQL programming gurus, ajuda um recém-chegado a resolver um problema. O programa não funciona corretamente, não faz o que é suposto fazer. Você poderia me dizer qual é o meu erro? O programa precisa fazer isso:
1. abrir uma ordem e atribuir o valor do preço aberto à variável PriceBuy e exibir uma mensagem sobre ela.
Para abrir um novo pedido com as mesmas condições quando TakeProfit for alcançado.
Aqui está o código do programa:
duplo PriceBuy externo = 0;
bool externo Comprar = verdadeiro;
número do bool externo = falso;
int start()
{
se(Comprar)
{
int ticket=OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Ask-100*Point,Ask+100*Point);
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
PriceBuy=OrderOpenPrice();
Alerta("Preço de Compra = ",PriceBuy);
Comprar = falso;
número = verdadeiro;}
if(Bid+100*Point<=PriceBuy && number)
{PriceBuy = 0;
número = falso;
Comprar=verdadeiro;}
retornar;
}
Obrigado de antemão
Licitação>=PreçoCompra+100*Ponto
Eu quero conectar a função CreateNamedPipe() do kernel32.dll. Eu preciso prescrever bandeiras do tipo Dword.
Estou fazendo desta maneira:
#define ACCESS_SYSTEM_SECURITY 0x01000000L
Naturalmente, o compilador jura no L no final. Você poderia me dizer o que fazer?
Tenho que verificar o nome do indicador. Pode ser.
Sim, realmente, Victor, meu erro foi que tentei resolver isso automaticamente... :-) )) para o indicador via
... Como resultado, os nomes "curto" e "normal" não correspondem ao endereçamento aos valores do indicador através de iCustom(), ou seja, quando eles não coincidem, o indicador deve ser endereçado somente pelo seu nome "normal".
Obrigado.
Olá.
Por favor, ajude-me a encontrar um erro.
O código é projetado para fechar todas as posições quando o preço cruza a linha traçada no gráfico. Na maior parte do tempo, ele faz. Mas periodicamente há 2 falhas: 1. O preço atravessa a linha, mas as posições não são fechadas. 2. A linha intercepta o nível de preço atual (em um ângulo), mas não coincide com ele (não afeta a vela atual), enquanto todas as posições estão fechadas (o que não deveria acontecer).
Agradeço antecipadamente.
Por favor, ajude-me a encontrar o erro.
Retirando a pergunta, eu a descobri.
Eu quero conectar a função CreateNamedPipe() do kernel32.dll. Eu preciso prescrever bandeiras do tipo Dword.
Estou fazendo desta maneira:
#define ACCESS_SYSTEM_SECURITY 0x01000000L
Naturalmente, o compilador jura no L no final. O que você sugere?
Remover o dígito. Só pode haver 8 bits. A MQL4 não funciona com as grandes.
Você precisa remover um zero extra. Experimente assim: 0x1000000L
Não funciona assim. Compilador dá erro '0x1000000L' - número inválido
Não funciona dessa maneira. O compilador gera o erro '0x1000000L' - número inválido
Sem pensar nada durante a noite... :-)) Não existe tal número no sistema de 16 bits. É um identificador de um tipo constante.
L deve ser removido:0x01000000