[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 792

 

Leia o código de uma simples EA no tutorial - https://book.mql4.com/ru/samples/expert

Eu não entendo como o valor da variável Total muda

No bloco "Entrada de ordens" seu valor pode mudar, por exemplo, ele pode se tornar 1.

Quando a ordem é fechada, o valor da variável Total não muda no bloco "Encerrar ordens", embora eu ache que deve ser zerada (se a ordem for fechada com sucesso).

A pergunta - como neste caso novas ordens serão abertas (no bloco "Abertura de ordens" - se (Total==0 && Opn_B===verdadeiro) ), se o programa ainda pensa que há ordens que não estão fechadas? Ou talvez o programa não possa fechar uma ordem e abrir outra ordem de uma só vez? Então eu não entendo porque diz que a opção b da relação de critérios comerciais é usada no exemplo?

 
fevrall:

Boa tarde a todos os membros do fórum!

Não foi possível encontrar respostas para as seguintes perguntas.

1. Dois terminais estão funcionando em máquinas diferentes (primeiro no trabalho, segundo em casa), na mesma conta real.

Se um Expert Advisor em um e o mesmo par de moedas estiver rodando nestes terminais, no mesmo par de moedas,

é equivalente a executar o mesmo EA no mesmo par em janelas diferentes do mesmo terminal?

2. Se eu proibir a operação de EAs em um desses terminais (usando o botão apropriado), como isso

afetar outro terminal?

(Obrigado de antemão!)

1) Dois terminais diferentes são dois terminais diferentes).

Mesmo que você tenha dois mt4 diferentes em uma máquina, trabalhando em uma conta - eles não se cruzarão. Eles podem se cruzar por acidente, se as magias da ordem coincidirem, então a EA ativa perceberá a ordem como "sua própria".

Se desativarmos a negociação em um terminal, o outro continuará funcionando, pois este EA é um programa executado neste computador no MT4 dado, e não no servidor do centro de negociação. Da mesma forma, se você desligar o computador, o Expert Advisor não negociará. Mas há uma nuance - se antes de a EA ser desligada, ela colocar qualquer ordem pendente, ela será executada no mercado, mesmo quando a EA for desligada.

 
Techno:
Você pode definir uma proibição para 1 ou 2 barras.

Techno, por que você insiste em uma solução temporária para este problema?

Não há maneira de resolvê-lo logicamente? Seu método pode levar a uma solução para o meu problema, mas é uma forma indireta de resolvê-lo...

 

obla4ko, obrigado!

 
obla4ko:

Lembro-me :), seu conselho é bom, mas "é tudo uma questão de nuances", como diz PapaYozh!

Quando se trabalha com médias, cada barra conta - estatísticas, você sabe! :)) - portanto tenho que procurar outras soluções mais sutis....

Se eu entendi seu problema corretamente, então você não deve ser guiado pelo horário de fechamento do pedido. Você deve começar no momento do bar que deu o sinal para abrir a posição. O que eu faria, pessoalmente, é o seguinte:

1) criar uma variável do tipo data/hora onde eu entraria o valor Tempo[0] se o pedido for feito com sucesso;

2) na função init(), inicializar esta variável com valor "0". Prefiro uma inicialização explícita, uma vez que é mais clara ao revisar o código;

3) quando aparecem as condições para abrir uma posição, antes de enviar o pedido de OrderSend(...), compare o valor desta variável com o valor Time[0] e se não forem iguais, envie um pedido.

4) se a posição abrisse, armazenaria o valor do Tempo[0] nessa mesma variável.

---

Não sei se expliquei bem, mas fiz o melhor que pude.

É claro que esta é a abordagem mais primitiva, porque a EA pode realmente reinicializar no bar onde a ordem foi aberta e devemos considerar tais situações ao escrever a EA. Mas a variante que descrevi servirá para você também na etapa inicial.

 

Boa tarde a todos!

Programadores de pessoas e amadores precisam de sua ajuda! A essência é a necessidade de um indicador simples que mostre a linha horizontal, ou seja, que lhe dê um nível a partir do qual ele dançou (para baixo ou para cima, sem diferença) e que, após um certo número de pontos, desenhe a linha novamente, e assim por diante até o nível especificado. Por exemplo, o nível de 1,2500 a 1,3400, uma nova linha a cada 50 pontos ...


Agradecemos antecipadamente a todos os que respondem...

 

É interessante como as meninas dançam... :)

Estou de volta às "brincadeiras" do meu CD.

Como isso é possível?

... ...é interessante como as poses se abrem no ar... Conta demo.

Como isso é possível?

Meu entendimento é que se as posições se abrirem antes da abertura, elas devem estar onde se abriram, não pairando no céu...
... Bem, se eles foram movidos, por que não para o bar depois do intervalo, mas em algum lugar no ar... Milagres... :)

 

artmedia70, é um deslize em uma fenda))) foda-se ))
 
artmedia70:

... interessante como as poses se abriram no ar... Conta demo.


Não esqueça que no quadro o preço é Bid, compre ordens (parece que você as tem) abertas em Ask.
 
PapaYozh:

Não esqueça que no quadro o preço é Bid, as ordens de compra (parece que você as tem) abertas em Ask.
Não estamos abrindo uma Buy at Ask ???????? E o spread não pode ser de 60 pips (tem que ser depois do gap), e se for antes do gap, os 325 pips espalhados sobre o EUR são inacreditáveis. :)
Razão: