[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 365

 
nadya:
Conte-me mais sobre isso, você tem o código pronto? Em que extensão se encontra?

Sim, está pronto! Não sei sobre a extensão, como posso descobrir?!
 
Chekh:

Sim, estou pronto! Não sei sobre a extensão!

Base de código MQL4
 
Chekh:

Sim, estou pronto! Não sei sobre a extensão!

Veja todos os links no segundo post desta página, especialmente a seção

"TERMINAL
Como instalar um EA no MetaTrader 4?

...

 
Roman.:


Defina o conceito de acordo com você "... que está mais próximo do preço de compra e venda simultaneamente..." - como dizer simultâneo?

substituir esta penúltima linha por retorno(t); com isto


nenhuma ajuda,

escolher o pedido mais próximo do preço de compra e venda, provavelmente não correto ao mesmo tempo, mas esta função escolherá entre comprar ou vender, dependendo de qual é o mais próximo

 
forexnew:

Boa tarde!

Surgiu uma pergunta: o Expert Advisor foi configurado para negociar em várias dezenas de pares de moedas (em uma janela de um único par). Se algum dos pares não for exibido na janela do Market Watch, isso causa uma falha. Como posso verificar programmaticamente se esses pares de moedas estão disponíveis para negociação, ou talvez eles simplesmente não sejam exibidos no Market Watch?


Haverá diferentes erros

ERR_HISTORY_VONTADE_ACTUALIZADA4066Dados históricos solicitados em estado de atualização

ERR_UNKNOWN_SYMBOL4106Símbolo desconhecido
 
vilard:


não ajudou,

para selecionar o pedido mais próximo do preço de compra e venda, talvez não seja correto ao mesmo tempo, mas esta função seleciona a compra ou venda, dependendo de qual está mais próximo

O que esta função retorna com esta linha no final

return(OrderType());
 
vilard:


não funcionou,

para selecionar a ordem de compra e venda mais próxima do preço, talvez não seja correto ao mesmo tempo, mas esta função seleciona comprar ou vender, dependendo de qual está mais próxima


Experimente assim

...
t=OrderType();
 }
 }
 }
 }
 }
 }
 return(t);
 }
 
vilard:

como selecionar uma posição mais próxima ao preço de Compra e Venda ao mesmo tempo?

//+----------------------------------------------------------------------------+
//| Возвращает тикет ближайшей к рынку позиции по цене открытия или 0 |
//| Параметры: |
//| sym - наименование инструмента ("" - текущий символ) |
//| op - операция (-1 - любая позиция) |
//| mn - MagicNumber (-1 - любой магик) |
//+----------------------------------------------------------------------------+
int TicketNearPosOnOpen(string sym="", int op=-1, int mn=-1) {
double di=10000, pp;
int i, k=OrdersTotal(), t=0;

if (sym=="") sym=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sym && (op<0 || OrderType()==op)) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (mn<0 || OrderMagicNumber()==mn) {
if (OrderType()==OP_BUY) pp=MarketInfo(sym, MODE_BID);
if (OrderType()==OP_SELL) pp=MarketInfo(sym, MODE_ASK);
if (di>MathAbs(OrderOpenPrice()-pp)) {
di=MathAbs(OrderOpenPrice()-pp);
t=OrderTicket();
}
}
}
}
}
}
return(t);
}

Não posso alterar o pedido, ele apenas seleciona o que foi acionado pela última vez, mas não seleciona a posição de venda (ou compra). Por favor, me ajude a completar esta função
Não está claro o que exatamente você precisa. Para selecionar a posição aberta mais próxima ao preço atual (Comprar ou Vender)?

Ou para selecionar duas posições (Compra e Venda), que estão próximas do preço atual?

Quando você nos disser o que precisa, nós o ajudaremos :)

 
vilard:

Como selecionar a posição mais próxima ao preço de compra e venda ao mesmo tempo?

Talvez isto funcione para você.

DistMarketAndPos - Retorna a distância em pips entre o mercado e a posição mais próxima
Razão: