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

 
Olá. Por favor, ajude. Coloca ordens e não faz mais nada. Sem erros.
Arquivos anexados:
test3_3.mq4  15 kb
 
Bom dia! Peço desculpas se estou fora do tópico, mas estou exausto - é um grito da alma! Tentei usá-la na MQL4 e tentei descobrir por mim mesmo, mas não funcionou. Cavei a Internet e tentei usar MQL4, mas nada funciona. Este indicador deve mostrar a diferença em pips entre dois CFDs como uma linha. Isto é, (bid+ask)/2 do primeiro instrumento menos (bid+ask)/2 do segundo instrumento, respectivamente, por candelabros. Os nomes dos instrumentos devem ser definidos nas configurações do indicador devem haver dois deles. A parte final da linha deve mudar a cada novo tick. E as citações devem ser sincronizadas pelo tempo, não por vela (número diferente de velas por dia BRN e CL). Por favor, ajudem, boa gente! Agradeço antecipadamente.
 
CJIeCaPb:
Olá. Por favor, ajude. Coloca ordens e não faz mais nada. Sem erros.

Por que isso seria:

for(i=1;i<=OrdersTotal();i++) //может с OrdersTotal()-1 и до 0 разумнее было бы?
{
 if(OrderSelect(i-1,SELECT_BY_POS)==true)
 {
  if(OrderSymbol()!=Symb)continue;
  if(OrderType()==4) //тип байстоп - 4
   OrderTicketBuy=OrderTicket();
   if(OrderType()==6) //тип селлстоп - 5
   OrderTicketSell=OrderTicket();
   
  }
}

Leia sobre os tipos de pedidos, e o resto do manual não deve estar em uma auto-volta, primeiro leia pelo menos 10 vezes.

 
fantom700:
Bom dia! Peço desculpas se estou fora do tópico, mas estou exausto - é um grito da alma! Tentei usá-la na MQL4 e tentei descobrir por mim mesmo, mas não funcionou. Cavei a Internet e tentei usar MQL4, mas nada funciona. Este indicador deve mostrar a diferença em pips entre dois CFDs como uma linha. Isto é, (bid+ask)/2 do primeiro instrumento menos (bid+ask)/2 do segundo instrumento, respectivamente, por candelabros. Os nomes dos instrumentos devem ser definidos nas configurações do indicador devem haver dois deles. A parte final da linha deve mudar a cada novo tick. E as citações devem ser sincronizadas pelo tempo, não por vela (número diferente de velas por dia BRN e CL). Por favor, ajudem, boa gente! Agradecemos antecipadamente.
Não há Bid and Ask na história, há preços descritos pela MqlRates e os indicadores estão desenhados pela história.
 
evillive:

Por que isso seria:

Leia sobre os tipos de pedidos, e o restante do manual, não tente se ferrar, leia primeiro pelo menos 10 vezes.

BUYSTOP e SELLSTOP estão configurados, e possuem tipos 4 e 6 respectivamente.

Eu não entendo o que quero dizer com OrderTotal():" de -1 a 0"?

 
CJIeCaPb:

BUYSTOP e SELLSTOP são definidos, e têm os tipos 4 e 6 correspondentes.

*Não entendo o que significa OrderTotal():" de -1 a 0"?

O tipo bystop é 4, o tipo selltop é 5 e os tipos são numerados a partir de zero. Com o tipo 6, parece apenas depósito/retirada, e mesmo isso não está documentado em nenhum lugar.

*Não "de -1 a 0", mas "looping de OrdensTotal()-1 a 0".

Além disso, a execução da OrderSelect deve ser verificada, não seja preguiçoso, você entenderia pelo erro de execução que os bilhetes estão incorretos.

Em geral, todas as funções comerciais DEVEM ser verificadas para sua correta execução, portanto, não seja preguiçoso verificar. E os resultados retornados por outras funções podem e devem ser verificados.

 
evillive:
Não há Bid and Ask na história, há preços descritos pela MqlRates, e os indicadores são desenhados na história.

Depois apenas três figuras: primeira figura: primeiro instrumento preço(bid+ask)/2; segunda figura: segundo instrumento preço(bid+ask)/2; terceira figura:(bid+ask)/2 do primeiro instrumento menos (bid+ask)/2 do segundo instrumento. Sem nenhum histórico, apenas com carrapatos em um determinado momento.

Na verdade eu queria fazer algo como isto: http://www.mister-forex.ru/indikator-ma-arbitrage/

Somente sem nenhum by, vender. Apenas um indicador na forma de uma linha.

 
evillive:

O tipo de compra é 3, o tipo de venda é 5; o tipo de pedido é numerado a partir de zero. Com o tipo 6, apenas o depósito/retirada parece ser diferente, e mesmo isso não está documentado em nenhum lugar.

*Não "de -1 a 0", mas "loop from OrdersTotal()-1 a 0".

Além disso, a execução da OrderSelect deveria ter sido verificada, não seja preguiçoso, teria ficado claro pelo erro de execução que as multas estavam erradas.

Em geral, todas as funções comerciais DEVEM ser verificadas para executá-las sem erros, portanto, não seja preguiçoso verificá-las. E os resultados retornados pelas outras funções podem e devem ser verificados.

Você está confuso com os números!

O tipo de operação para a funçãoOrderSend(). Pode ser qualquer um dos seguintes valores:

Constante

Valor

Descrição

OP_BUY

0

Compre

OP_SELL

1

Venda

OP_BUYLIMIT

2

COMPRA LIMITAR ordem pendente

OP_SELLLIMIT

3

Pedido de LIMITE DE VENDA Pendente

OP_BUYSTOP

4

Ordem STOP Pendente de compra

OP_SELLSTOP

5

Pendente da ordem de parada da venda

 
borilunad:

Você está confuso com os números!

O tipo de operação paraOrderSend(). Pode ser qualquer um dos seguintes valores:

Erro meu, eu estou corrigido
 
evillive:

O tipo 3 é um bystop, o selltop é 5; a numeração dos tipos começa de zero. Com o tipo 6, apenas o depósito/retirada parece ser limitado, e mesmo isso não está documentado em nenhum lugar.

*Não "de -1 a 0", mas "loop from OrdersTotal()-1 a 0".

Além disso, a execução da OrderSelect deveria ter sido verificada, não seja preguiçoso, teria ficado claro pelo erro de execução que as multas estavam erradas.

Em geral, todas as funções comerciais DEVEM ser verificadas para executá-las sem erros, portanto, não seja preguiçoso verificá-las. E os resultados retornados pelas outras funções podem e devem ser verificados.

Ahh, apontou errado, sim).

Voltar a verificar um a um. Somente o bilhete de venda estava errado. Verifiquei o resto também: pedidos, comparações, modificações. Mas, ainda é um estupor depois de fazer pedidos. Tudo estava funcionando separadamente.

A condição para entrar se(MA=MA1) não estiver correta? Porque =, não é um sinal de condição, o sinal correto é "==", no entanto, se eu o soletrar dessa forma o Expert Advisor não faz absolutamente nada. As outras variantes: ">=", "<=", "<=", "<", ">" que e "=" levam à colocação de pedidos e mais estupor.

Arquivos anexados:
test3_4.mq4  15 kb