//+------------------------------------------------------------------+//| Check for close order conditions |//+------------------------------------------------------------------+void CheckForClose()
{
double ma;
//--- go trading only for first tiks of new barif(Volume[0]>1) return;
//--- get Moving Average
ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
//---for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderMagicNumber()!=MAGICMA || OrderSymbol()!=Symbol()) continue;
//--- check order type if(OrderType()==OP_BUY)
{
if(Open[1]>ma && Close[1]<ma)
{
if(!OrderClose(OrderTicket(),OrderLots(),Bid,3,White))
Print("OrderClose error ",GetLastError());
}
break;
}
if(OrderType()==OP_SELL)
{
if(Open[1]<ma && Close[1]>ma)
{
if(!OrderClose(OrderTicket(),OrderLots(),Ask,3,White))
Print("OrderClose error ",GetLastError());
}
break;
}
}
//---
}
Você deve atualizar após o sono e entre várias chamadas do servidor se quiser usar as Variáveis Predefinidas(Bid/Ask) ouOrderClosePrice() em seu lugar.
sem loops mas com o mesmo resultado. boopa26 prefere se condições para ciclos enquanto ciclos
Você acha que pode escrever código sem saber como escrever código. As funções são irrelevantes.
eu sei como fazer se as condições enquanto ciclos para ciclos matemáticos básicos são um bom começo WHRoeder. c programação é c programação. mql4 é mql4. Por quê? por causa de FUNÇÕES. mql4 faz a programação c exemplo * () == etc. mas não é o mesmo por causa de funções
a ordem de seleção da função muda de 0 para 1 após o total de ordens ser maior que zero?
documentação
"Valor devolvido
Ele retorna verdadeiro se a função for bem sucedida, caso contrário, é falsa. Para obter as informações de erro, é preciso chamar a função GetLastError()".
O código de ciclos pode ser escrito de forma diferente para fazer as mesmas funções sem ciclos. exemplo
sem loops mas com o mesmo resultado. boopa26 prefere se condições para ciclos enquanto ciclos
Você acha que pode escrever código sem saber como escrever código. As funções são irrelevantes.
eu sei como fazer se as condições enquanto ciclos para ciclos matemáticos básicos são um bom começo WHRoeder. c programação é c programação. mql4 é mql4. Por quê? por causa das FUNÇÕES
E você se pergunta por que seu código ainda não funciona? Porque você ainda não conhece o "básico", que se você tivesse seguido o "passo 1" e aprendido a codificar corretamente em "C", você teria sido muito mais hábil em codificar em MQL (porque é similar ao C e C++)!
Você até falha em entender as "funções" (passo 3)! Desde quando"OrderSelect()" retorna e inteiro, quando a documentação diz claramente que retorna um Booleano? Você nem mesmo verifica o resultado do "OrderClose()" ou se ocorreu um erro de tempo de execução em qualquer parte de seu código!
Seu resultado: Você acabou com o "carvão queimado" e como você se recusa a seguir nossos conselhos, você também perde nosso tempo!
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Um novo tipo de arte.
A sátira comercial.
Eu amo.
1. não precisa de conhecimento c. mql4 é função diferente
boopa26 não faz perder tempo às pessoas
perda de tempo huh? o código acima parece que estou perdendo seu tempo? uh... provavelmente não WHRoeder
não foi uma tarefa fácil, mas o código acima faz encomendas fechadas. no entanto, não entende. seria bom se o codificador explicasse mais detalhes
o que pensa o boopa26
static int last_index_inside_trade_pool = OrderTotal()-1
enquanto last_index_inside_inside_trade_pool >=0 do code below. do last_index_inside_trade_pool...
código abaixo encontra ordem. verifica ordem. fecha ordem. faz GetLastError()
não entende, no entanto
Então por que você acabou de postar código que usa loops?
O código dos ciclos pode ser escrito de forma diferente para fazer o mesmo sem ciclos. exemplo
sem loops mas com o mesmo resultado. boopa26 prefere se condições para ciclos enquanto ciclos
Você acha que pode escrever código sem saber como escrever código. As funções são irrelevantes.
eu sei como fazer se as condições enquanto ciclos para ciclos matemáticos básicos são um bom começo WHRoeder. c programação é c programação. mql4 é mql4. Por quê? por causa de FUNÇÕES. mql4 faz a programação c exemplo * () == etc. mas não é o mesmo por causa de funções
qual ordem de comutação selecionar função de 0 a 1?
a ordem de seleção da função muda de 0 para 1 após o total de ordens ser maior que zero?
documentação
"Valor devolvido
Ele retorna verdadeiro se a função for bem sucedida, caso contrário, é falsa. Para obter as informações de erro, é preciso chamar a função GetLastError()".
ela retorna 1 se a função for bem sucedida?
Eu amo este cara :-)
Você está escrevendo apenas neste fórum ou você tem outros links?
Se você está fazendo isso em um palco, onde eu posso, por ingressos?
apenas este fórum
Eddie, você sabe algo sobre a função de seleção de pedidos?
Então por que você acabou de postar código que usa loops?
Você acha que pode escrever código sem saber como escrever código. As funções são irrelevantes.
E você se pergunta por que seu código ainda não funciona? Porque você ainda não conhece o "básico", que se você tivesse seguido o "passo 1" e aprendido a codificar corretamente em "C", você teria sido muito mais hábil em codificar em MQL (porque é similar ao C e C++)!
Você até falha em entender as "funções" (passo 3)! Desde quando"OrderSelect()" retorna e inteiro, quando a documentação diz claramente que retorna um Booleano? Você nem mesmo verifica o resultado do "OrderClose()" ou se ocorreu um erro de tempo de execução em qualquer parte de seu código!
Seu resultado: Você acabou com o "carvão queimado" e como você se recusa a seguir nossos conselhos, você também perde nosso tempo!