Zhunko: Não há funções ou macros na MQL4 que devolvam o número de construção.
Agora eu tenho-o. Senkue.
Pensei que era possível fazer tudo por analogia com a remoção de um pedaço de código do tutorial e responsável pela negociação de corujas somente em uma determinada conta, senha, etc.
Aqui está a essência: Há um bot que automaticamente coloca ordens pendentes, a um determinado preço. ...
Colocar isto em frente ao bloco de envio de pedidos:
if (OrdersTotal()>0)
{ for (int i=OrdersTotal()-1; i>=0; i--)
{ if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()!=Symbol()) continue;
if (OrderOpenPrice()==bad_price) // bad_price - значение цены при котором не хотите выставить очередной ордерreturn(0);
} }
paladin80: Colocar isto antes do bloqueio de envio do pedido:
E se houver, por exemplo, 30 pedidos?
A essência é a seguinte: são colocados dois acordos opostos com uma diferença de 40 pontos em relação ao preço médio até três casas decimais.
Digamos 1.251 para eur/usd i.e. comprar 1.253 vender 1.249 então o mercado, por exemplo, fixa o preço de compra e volta a 1.251 e agora coloca mais dois pedidos aos mesmos preços. E enquanto o mercado se movia para o preço de compra, o roteiro podia colocar o mesmo número de ordens e elas deveriam ser tratadas da mesma forma, ou seja, um preço = uma ordem. Como implementar isto?
A essência é a seguinte: são colocados dois acordos opostos com uma diferença de 40 pontos em relação ao preço médio até três casas decimais.
Digamos 1.251 para eur/usd i.e. comprar 1.253 vender 1.249 então o mercado, por exemplo, fixa o preço de compra e volta a 1.251 e agora coloca mais dois pedidos aos mesmos preços. E enquanto o mercado se movia para o preço de compra, o roteiro podia colocar o mesmo número de ordens e elas deveriam ser tratadas da mesma forma, ou seja, um preço = uma ordem. Como implementar isto?
Dividir o preço pelos dígitos = reduzi-lo a um inteiro e escrevê-lo em um medjic, depois procurar o conjunto de pedidos abertos para o medjic antes de estabelecer um novo pedido.
A essência é a seguinte: Há um bot que automaticamente coloca ordens pendentes, a um determinado preço. ...
double main_price=1.251;
double price_to_byu=1.253;
double price_to_sell=1.249;
// --------bool restriction=false;
if (Ask<=main_price)
if (OrdersTotal()>0)
{ for (int i=OrdersTotal()-1; i>=0; i--)
{ if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()!=Symbol()) continue;
if (OrderType()==OP_BUY || OrderType()==OP_BUYSTOP)
{ if (OrderOpenPrice()==price_to_byu) restriction=true;
} } }
if (restriction==false)
{ OrderSend(NULL,OP_BUYSTOP,Lot,price_to_byu, ...);
return(0);
}
// --------
restriction=false;
if (Bid>=main_price)
if (OrdersTotal()>0)
{ for (int i=OrdersTotal()-1; i>=0; i--)
{ if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()!=Symbol()) continue;
if (OrderType()==OP_SELL || OrderType()==OP_SELLSTOP)
{ if (OrderOpenPrice()==price_to_sell) restriction=true;
} } }
if (restriction==false)
{ OrderSend(NULL,OP_SELLSTOP,Lot,price_to_sell, ...);
return(0);
}
Se você estiver fazendo muitas encomendas similares, você precisa usar matrizes. Como? Leia sobre arrays.
Não há funções ou macros na MQL4 que devolvam o número de construção.
Agora eu tenho-o. Senkue.
Pensei que era possível fazer tudo por analogia com a remoção de um pedaço de código do tutorial e responsável pela negociação de corujas somente em uma determinada conta, senha, etc.
Aqui está a essência: Há um bot que automaticamente coloca ordens pendentes, a um determinado preço.
Precisamos colocar uma proibição de fazer um pedido, desde que o pedido ou um negócio a esse preço esteja aberto.
Estou tentando há três dias e sem sorte.
há várias opções.... fazer o teste.
Olá a todos. Por favor, ajude.
Aqui está a essência: Há um bot que automaticamente coloca ordens pendentes, a um determinado preço. ...
há várias opções.... fazer o teste.
Colocar isto antes do bloqueio de envio do pedido:
E se houver, por exemplo, 30 pedidos?
A essência é a seguinte: são colocados dois acordos opostos com uma diferença de 40 pontos em relação ao preço médio até três casas decimais.
Digamos 1.251 para eur/usd i.e. comprar 1.253 vender 1.249 então o mercado, por exemplo, fixa o preço de compra e volta a 1.251 e agora coloca mais dois pedidos aos mesmos preços. E enquanto o mercado se movia para o preço de compra, o roteiro podia colocar o mesmo número de ordens e elas deveriam ser tratadas da mesma forma, ou seja, um preço = uma ordem. Como implementar isto?
E se houver 30 pedidos, por exemplo?
A essência é a seguinte: são colocados dois acordos opostos com uma diferença de 40 pontos em relação ao preço médio até três casas decimais.
Digamos 1.251 para eur/usd i.e. comprar 1.253 vender 1.249 então o mercado, por exemplo, fixa o preço de compra e volta a 1.251 e agora coloca mais dois pedidos aos mesmos preços. E enquanto o mercado se movia para o preço de compra, o roteiro podia colocar o mesmo número de ordens e elas deveriam ser tratadas da mesma forma, ou seja, um preço = uma ordem. Como implementar isto?
Basta fazer a magia == preço
Basta fazer a magia == preço
Você poderia ser um pouco mais específico?
Olá a todos. Por favor, ajude.
A essência é a seguinte: Há um bot que automaticamente coloca ordens pendentes, a um determinado preço. ...
Se você estiver fazendo muitas encomendas similares, você precisa usar matrizes. Como? Leia sobre arrays.