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
Função DistMarketAndPos().
Aqui vamos nós! Aí vêm funções mais interessantes! Por exemplo, retorna a distância em pips entre o mercado e a posição mais próxima. A seleção mais precisa das posições a serem verificadas é definida por parâmetros externos:
A função DistMarketAndPos().
Aqui vamos nós! Vamos a funções mais interessantes! Por exemplo, retorna a distância, em pontos, entre o mercado e a posição mais próxima. A seleção mais precisa das posições a serem verificadas é definida por parâmetros externos:
Eutento fazer com que funcione para frente e para trás e abrir ordens para frente e para trás. Tenho um erro, ajude-me a consertá-lo.
Exterior int TakeProfit = 150;
Lote duplo externo = 0,01;
MAGIC externo interno = 1234;
int start()
{
se (DistMarketAndPos()>150)
{
OrderSend(Symbol(),OP_BUY,Lot,Ask,3,0,Ask+TakeProfit*Point)
}
retorno(0);
}
int DistMarketAndPos(string sy="", int op=OP_BUY, int mn=-1)
{
duplo d, p;
int i, k=OrdersTotal(), r=1000000;
if (sy===""" || sy=="0") sy=Symbol();
p=MarketInfo(sy, MODE_POINT);
if (p==0) if (StringFind(sy, "")<0) p=0,00001; caso contrário p=0,01;
para (i=0; i<k; i++)
{
se(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
se ((OrderSymbol()==sy) && (op<0 || OrderType()==op))
{
se (mn<0 || OrderMagicNumber()==mn)
{
se (OrderType()==OP_BUY)
{
d=MathAbs(MarketInfo(sy, MODE_ASK)-OrderOpenPrice())/p;
se (r>d) r=NormalizarDuplo(d, 0);
}
se (OrderType()==OP_SELL)
{
d=MathAbs(OrderOpenPrice()-MarketInfo(sy, MODE_BID))/p;
se (r>d) r=NormalizarDuplo(d, 0);
}
}
}
}
}
//----------------------------------------------------------------------------------------------------------------------------------------------
se (DistMarketAndPos()>150)
{
OrderSend(Symbol(),OP_SELL,Lot,Ask,3,0,Ask-TakeProfit*Point);
}
retorno(0);
{
int DistMarketAndPos(string sy="", int op=OP_SELL, int mn=-1) //esta linha dá 1 erro,
// se esta linha for removida,
//é compila, mas então
//I não colocar op=OP_SELL,
// e, sem ele, o consultor especializado pensará,
// que a ordem a partir da qual você quer calcular
//distância é OP_BUY
if (sy===""" || sy=="0") sy=Symbol();
p=MarketInfo(sy, MODE_POINT);
if (p==0) if (StringFind(sy, "")<0) p=0,00001; caso contrário p=0,01;
para (i=0; i<k; i++)
{
se (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
se ((OrderSymbol()==sy) && (op<0 || OrderType()==op))
{
se (mn<0 || OrderMagicNumber()==mn)
{
se (OrderType()==OP_BUY)
{
d=MathAbs(MarketInfo(sy, MODE_ASK)-OrderOpenPrice())/p;
se (r>d) r=NormalizarDuplo(d, 0);
}
se (OrderType()==OP_SELL)
{
d=MathAbs(OrderOpenPrice()-MarketInfo(sy, MODE_BID))/p;
se (r>d) r=NormalizarDuplo(d, 0);
}
}
}
}
}
retorno(r);
retorno(r);
}
}
//-------------------------------------------------------------------------------------------
OBRIGADO
Estoutentando fazer com que funcione para frente e para trás e abrir pedidos para frente e para trás com ele. Tenho um bug do qual não consigo me livrar, por favor, me ajude a consertá-lo.
OBRIGADO
Você deveria tentar:
E com perguntas aqui...
Função MovingInWL().
Alguém pode explicar por que você deve postar funções que não funcionam?
LevelWLoss' - identificador não declarado
'LevelProfit' - identificador não declarado
'ModifyOrder' - função não definida
'LevelWLoss' - identificador não declarado
'LevelProfit' - identificador não declarado
'ModifyOrder' - função não definida
6 erro(s), 0 aviso(s)
e isto dentro da própria função
Alguém pode explicar por que você deve postar funções que não funcionam?
LevelWLoss' - identificador não declarado
'LevelProfit' - identificador não declarado
'ModifyOrder' - função não definida
'LevelWLoss' - identificador não declarado
'LevelProfit' - identificador não declarado
'ModifyOrder' - função não definida
6 erro(s), 0 aviso(s)
e isto está dentro da própria função
A função funciona, mas chama a função ModifyOrder, que deve ser adicionada ao código EA e também adicionar à EA as variáveis LevelWLoss e LevelProfit, algo como isto
Exterior int LevelProfit = 1000;
Exterior int LevelWLoss = 50;
Muito obrigado por este tópico do fórum. O maior agradecimento à lurii Tokman pelas características. Pessoalmente, estou quase pronto para equipará-lo ao Stroustrup.
Obrigado!
A função GetAmountLotFromOpenPos().
Esta função retorna a soma de muitas posições em aberto. Uma seleção mais precisa das posições a serem levadas em conta é especificada por parâmetros externos:
Não retorna!!!
não importa como eu o faça, zeros ou " função de manuseio de eventos não encontrada 4.mq4 1 1
"
Muito obrigado por este tópico do fórum. O maior agradecimento à lurii Tokman pelas características. Pessoalmente, estou quase pronto para equipará-lo ao Stroustrup.
Obrigado!