[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 340
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
Olá.
Como posso saber se o SL ou TP é acionado. Por exemplo, se um pedido for encerrado em
SL ou TP, executar so-and-so. Eu não encontrei tal função.
Não há funções padrão, mas você pode adicionar sinais na janela do terminal (som, arquivo, correio).
Se utilizar um EA, você pode adicionar tanto um sinal como um alerta e .....
Uma pergunta a mais. Se(OrdersTotal()==0) isto... se o número de ordens abertas for igual a zero. então como será... se o número de pedidos abertos PARA DIÁRIO for zero.
Não existe algo como OrderDayTotal?
E daí? Preciso estar em um especialista.
Bem, como o que
"Se você usar um EA você pode adicionar tanto um sinal como um alerta e .....".
"..." Pode ser qualquer coisa para desligar o PC.
Uma pergunta a mais. Se (OrdersTotal()==0) isto... se o número de ordens abertas for igual a zero. Se o número de pedidos abertos PARA O DIA for igual a zero, o que aconteceria?
Não há algo como OrderDayTotal?
Suponha que uma ordem de compra seja aberta, então fechamos uma ordem de compra em um sinal de venda, ou uma ordem de compra é aberta, então escalamos em um sinal de compra
Tipo de pedido()
Ver Ajuda
Referência MQL4 - Funções comerciais - OrderType
Aparentemente, nenhum dos profissionais trabalha com a dd.
Talvez alguém saiba como entrar em contato com mamadu? ele é o autor do artigo,
sobre as quais tenho feito perguntas em toda a Internet (sem sucesso). Ele é Dmitriy.
Olá.
Como posso saber se o SL ou TP é acionado. Por exemplo, se um pedido for fechado em
SL ou TP, executar isto ou aquilo. Eu não encontrei esta função.
Eu utilizo o seguinte esquema.
//Determinar se o comércio anterior terminou com lucro ou prejuízo
//------------------------------------------------------------------------------------------------------------------------------------------------
se (OrderSelect(Tic_Verh,SELECT_BY_TICKET)==verdadeiro)
{
if (OrderComment()=="[sl]")_SL[0]=-1;
if (OrderComment()=="[tp]")_SL[0]=1;
}
se (OrderSelect(Tic_Niz,SELECT_BY_TICKET)==verdadeiro)
{
if (OrderComment()=="[sl]")_SL[0]=-1;
if (OrderComment()=="[tp]")_SL[0]=1;
}
Variáveis do tipo INT são marcadas em vermelho, elas contêm números de TICs ao abrir uma posição
A variável _SL[0] é declarada como uma matriz unidimensional de um elemento, ou seja, int _SL[1]
Aconselho como escrever um EA e não consigo fazer isso. Abro uma ordem de compra em um determinado momento, se o preço se desviar 10 pips mais baixo uma ordem de venda deve abrir.
A primeira ordem abre para compra e quando o preço se desvia para o nível baixo a ordem de venda não é aberta. Se o mercado sobe 10 pips a função de fechamento de ordem não é iniciada.
aqui é uma parte do código
bool opb1=true;
bool ops1=true;
int start()
{
int Cur_Hour=Hour(); // Tempo do servidor em horas
double Time_Cls=9.25;
double Cur_Min=Minute();
double Cur_time=Cur_Hour + Cur_Min*0.01; // Hora atual
if (Cur_time>=Time_Cls)
{
if (opb1===verdadeiro){
double bid =MarketInfo("EURUSD",MODE_BID);
double ask =MarketInfo("EURUSD",MODE_ASK);
double point =MarketInfo("EURUSD",MODE_POINT);
double bid1 =bid+50*Point;
double ask1=ask-50*Point;
double bid2=bid;
double ask2=ask-100*Point;
OrderSend(Symbol(),OP_BUY,0.1,Ask,50,Bid-400*Point,Bid+200*Point);
Alerta (GetLastError());
opb1=false;}
if(MarketInfo("EURUSD",MODE_BID)>= bid1)
{
Close_All(0); //close buy function
return(0);
}
if(MarketInfo("EURUSD",MODE_ASK)<=ask1)
{
ask =MarketInfo("EURUSD",MODE_ASK); //
bid =MarketInfo("EURUSD",MODE_BID); //
point =MarketInfo("EURUSD",MODE_POINT);//
if (ops1===true){
OrderSend(Symbol(),OP_SELLL,0.3,Bid,50,Ask+400*Point,Ask-200*Point);
Alerta (GetLastError());
ops1=false;}
if(MarketInfo("EURUSD",MODE_ASK)<=ask2)
{
Close_All(1);// função fechar venda
Close_All(0);
return(0);
}
ou talvez eu esteja colocando a condição de aberto errado?
Aconselho como escrever um EA e não consigo fazer isso. Abro uma ordem de compra em um determinado momento, se o preço se desviar 10 pips mais baixo uma ordem de venda deve abrir.
A primeira ordem abre para compra e quando o preço se desvia para o nível baixo a ordem de venda não é aberta. Se o mercado sobe 10 pips a função de fechamento de ordem não é iniciada.
aqui é uma parte do código
bool opb1=true;
bool ops1=true;
int start()
{
int Cur_Hour=Hour(); // Tempo do servidor em horas
double Time_Cls=9.25;
double Cur_Min=Minute();
double Cur_time=Cur_Hour + Cur_Min*0.01; // Hora atual
if (Cur_time>=Time_Cls)
{
if (opb1===verdadeiro){
double bid =MarketInfo("EURUSD",MODE_BID);
double ask =MarketInfo("EURUSD",MODE_ASK);
double point =MarketInfo("EURUSD",MODE_POINT);
double bid1 =bid+50*Point;
double ask1=ask-50*Point;
double bid2=bid;
double ask2=ask-100*Point;
OrderSend(Symbol(),OP_BUY,0.1,Ask,50,Bid-400*Point,Bid+200*Point);
Alerta (GetLastError());
opb1=false;}
if(MarketInfo("EURUSD",MODE_BID)>= bid1)
{
Close_All(0); //close buy function
return(0);
}
if(MarketInfo("EURUSD",MODE_ASK)<=ask1)
{
ask =MarketInfo("EURUSD",MODE_ASK); //
bid =MarketInfo("EURUSD",MODE_BID); //
point =MarketInfo("EURUSD",MODE_POINT);//
if (ops1===true){
OrderSend(Symbol(),OP_SELLL,0.3,Bid,50,Ask+400*Point,Ask-200*Point);
Alerta (GetLastError());
ops1=false;}
if(MarketInfo("EURUSD",MODE_ASK)<=ask2)
{
Close_All(1);// função fechar venda
Close_All(0);
return(0);
}
ou talvez eu esteja colocando a condição de aberto errado?