![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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,
Eu não quero que minha EA abra uma posição se já houver uma posição indo na mesma direção no mesmo nível de preço (usando renko). Essencialmente, seria algo parecido com isto:
Se a direção da barra anterior estiver acima, abra uma posição longa se não houver uma posição longa no mesmo nível de preço (+-2 pips, por exemplo). A mesma coisa para o curto.
Isto é possível?
Maldição, tão fácil![](https://c.mql5.com/forextsd/smiles/nerd.png)
Maldição, tão fácil![](https://c.mql5.com/forextsd/smiles/nerd.png)
Obrigado, Mladen.
Mladen, eu tenho um problema.
Encontrei seu indicador Zonas dinâmicas Spearman, encontrei também outros. Mas não posso fazer isso que eu quero. Quero em uma janela alguma correlação. Você me entendeu? Eu quero que o computador não pare, usando seu indicador. Mas isso pareceu como Spearman Stack.
mas para mim é impossível fazer isso. Eu sobreponho indicadores um no outro, mas vejo apenas um
Mladen, eu tenho um problema.
Encontrei seu indicador Zonas dinâmicas Spearman, encontrei também outros. Mas eu não posso fazer isso que eu quero. Quero em uma janela alguma correlação. Você me entendeu? Eu quero que o computador não pare, usando seu indicador. Mas isso pareceu como Spearman Stack.
mas para mim é impossível. Eu sobreponho indicadores um no outro, mas vejo apenas umEis como se parece o indicador deste post: https: //www.mql5.com/en/forum/general quando o aplico várias vezes na mesma subjanela
Вот как индикатор применяю с этого поста: https://www.mql5.com/en/forum/general выглядит, когда я применяю его несколько несколько раз в том же дополнительном окне [/ QUOTE]
Mladen,obrigado por nmc!
Olá a todos,
Eu não quero que minha EA abra uma posição se já houver uma posição indo na mesma direção no mesmo nível de preço (usando renko). Essencialmente, seria algo parecido com isto:
Se a direção da barra anterior estiver acima, abra uma posição longa se não houver uma posição longa no mesmo nível de preço (+-2 pips, por exemplo). A mesma coisa para o curto.
Isto é possível?Talvez seja suficiente olhar para o preço aberto para as últimas 15 negociações, então verifique se alguma delas está dentro de +- 2 pips do preço atual, então verifique se essa negociação está na mesma direção que a nova negociação pretendida e, se não estiver, envie a ordem. Será que isto funcionaria?
Obrigado,
Axel
Talvez seja suficiente procurar o preço aberto para as últimas 15 negociações, então verifique se alguma delas está dentro de +- 2 pips do preço atual, então verifique se essa negociação está na mesma direção que a nova negociação pretendida e, se não estiver, envie a ordem. Será que isto funcionaria?
Obrigado,
AxelAxel
Isso pode ser feito.
Simplesmente as ordens abertas devem ser escaneadas para o tipo desejado e seus preços abertos devem ser comparados com o novo preço aberto desejado ou as barras em que foram abertas podem ser comparadas com a barra que serve como critério de abertura.
Axel
Isso pode ser feito.
Simplesmente as ordens abertas devem ser escaneadas para o tipo desejado e seus preços abertos devem ser comparados com o novo preço aberto desejado ou as barras em que foram abertas podem ser comparadas com a barra que serve como critério de aberturaFuncionaria escrever uma função como a abaixo de 20 vezes ou mais para diferentes "i=OrdensTotal()-1" e depois chamar todas as funções e compará-las com o novo preço de abertura?
Obrigado.
Alguém pode me dizer o que eu fiz de errado, o código abaixo é 2 EMA cruzado com alertas. Ele se recusa a trabalhar:
#propriedade copyright "wnk
#link da propriedade "www.wnk.com"
#janela_do_cartão_indicador de propriedade
#property indicator_buffers 2
#indicador de propriedade_color1 Lime
#indicador de propriedade_color2 Vermelho
//--- amortecedores
duplo ExtMapBuffer1[];
duplo ExtMapBuffer2[];
//variável externa......
//+------------------------------------------------------------------+
//| Função de inicialização do indicador personalizado |
//+------------------------------------------------------------------+
int init()
{
//---- indicadores
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,217);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0,0.0);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1.217);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexEmptyValue(1,0.0);
//----
retorno(0);
}
//+------------------------------------------------------------------+
//| Função de desinicialização de indicador personalizada |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
retorno(0);
}
//+------------------------------------------------------------------+
//| Função de iteração de indicador personalizada |
//+------------------------------------------------------------------+
int start()
{
data estática hora do LastAlertTime = TimeCurrent();
int counted_bars=IndicatorCounted(),
limite;
if(counted_bars<0)
retorno(-1);
if(counted_bars>0)
barrinhas_contadas..;
limite=barras_contadas_às_barras;
while(limite)
{
duplo ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0);
duplo ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0);
duplo b4ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,1);
double b4ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1); double b4ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);
double mom=iMomentum(NULL,0,14,PRICE_CLOSE,0);
double b4momomentum=iMomentum(NULL,0,14,PRICE_CLOSE,1);
//alertas
if((LastAlertTime!=Time[0])&&(ema5>ema13)&&(ema5>b4ema5)&&(ema13>b4ema13)&&(mom>b4mom)&&(mom>98.6591))
ExtMapBuffer1[limite]=Alto[limite]+5*Ponto;
LastAlertTime = Tempo[0];
Alerta(Símbolo()," ",Período(), "M Preço UP");
//alertas de venda
if((LastAlertTime!=Time[0])&&(ema5<ema13)&&(ema5<b4ema5)&&(ema13<b4ema13)&&(mom<b4mom)&&(mom<100.6872))
ExtMapBuffer2[limite]=Low[limite]-5*Point;
LastAlertTime = Tempo[0];
Alerta(Símbolo()," ",Período(), "M Preço Abaixo");
}
retorno(0);
}
//+------------------------------------------------------------------+