Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 137
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á a todos! Como faço para escrever minha condição! Preciso colocar uma ordem de stop-loss após o preço ter ultrapassado a distância de stop-loss
para Buy.....
se( )
{
------------
}
para Sell.....
função para transferir STB para Breakeven, o bilhete de pedido e a distância em pips são passados para a função
{
double sl=0.0;
if(OrderSelect(ticket,SELECT_BY_TICKET))
{
if(OrderType()==OP_BUY)
{
if(Bid>=OrderOpenPrice() && Bid-OrderOpenPrice()>=distance*_Point) sl=OrderOpenPrice();
if(OrderStopLoss()!=0 && OrderStopLoss()>=OrderOpenPrice())return;
}
if(OrderType()==OP_SELL)
{
if(Ask<=OrderOpenPrice() && OrderOpenPrice()-Ask>=distance*_Point) sl=OrderOpenPrice();
if(OrderStopLoss()!=0 && OrderStopLoss()<=OrderOpenPrice())return;
}
ResetLastError();
if(sl<=0)return;
if(!OrderModify(OrderTicket(),OrderOpenPrice(),sl,OrderTakeProfit(),0))
{
int error=GetLastError();
rezult=StringConcatenate(OrderSymbol(),": error modifying StopLoss order ",OrderTicket()," ",TypeToStr(OrderType())," №- ",error);
Print(rezult);
}
}
}
...
Não haverá nenhuma pintura)
A própria lógica de busca é pesada lá, e como torná-la mais fácil - eu ainda não sei.
Vitaly, eu originalmente tentei explicar que não são os cálculos que atrasam o testador, mas os objetos gráficos nos testes visuais. Faça-o da maneira que ele aconselha
Você pode enrolá-lo no indicador sem desenhar). E é melhor fazer uma escolha. Lúpulo - desenho, lúpulo - sem desenho:)
e ver a diferença na velocidade.
Não é nem o desenho que está atrasado, é apenas a presença de gráficos na carta.
Não é nem mesmo o desenho que está atrasando as coisas, é apenas a presença de gráficos no gráfico.
Vitaly, eu originalmente tentei explicar a você que não são os cálculos que atrasam o testador, mas os objetos gráficos nos testes visuais. Faça o que ele diz
e ver a diferença na velocidade.
Não é nem mesmo o desenho que está atrasado, é apenas a presença de gráficos na carta.
Eu testei a função sem nenhum gráfico, o gráfico foi feito apenas para ver a exatidão dos cálculos enquanto escrevia o código - era puramente técnico e foi removido do código por muito tempo. A tabela está em branco durante os testes.
Assim, quando sem função, o teste "voa", mas liga a função - ele vai lentamente.
P.S. Eu não preciso de objetos gráficos em princípio. Esqueça os gráficos - eu não os tenho e não vou tê-los!
Eu testei a função sem nenhum gráfico, o gráfico foi feito apenas para ver se os cálculos estavam corretos enquanto escrevia o código - era puramente técnico e foi removido do código há muito tempo. A tabela está em branco durante os testes.
Então, quando eu não tenho função, então teste "moscas", mas conecte a função - ela vai devagar.
P.S. Eu não preciso de objetos gráficos em princípio. Esqueça os gráficos - eu não os tenho e não vou tê-los!
Você já olhou aqui?
Legal, vou tentar puxar as funções para dentro da EA. Publicarei o resultado mais tarde.
Obrigado!!!
Por favor, ajude-me a entender como escrever o código corretamente para que o índice de barras seja aberto às 16:00 e 15:00
Esta é uma delas.
int shift=Bars("EURUSD",PERIOD_CURRENT,some_time,TimeCurrent());
Print("index of the bar for the time ",TimeToStr(some_time)," is ",shift);
Isso são dois.
int shift=iBarShift("EURUSD",PERIOD_CURRENT,some_time);
Print("index of the bar for the time ",TimeToStr(some_time)," is ",shift);
Esta é uma delas.
int shift=Bars("EURUSD",PERIOD_CURRENT,some_time,TimeCurrent());
Print("index of the bar for the time ",TimeToStr(some_time)," is ",shift);
Isso são dois.
int shift=iBarShift("EURUSD",PERIOD_CURRENT,some_time);
Print("index of the bar for the time ",TimeToStr(some_time)," is ",shift);