Discussão do artigo "Como Criar o Seu Próprio Limite Móvel" - página 5

 
natyog:


Ah, como! Pergunta a pergunta - isso é sábio!

a posição é aberta por seu especialista my_first_ea_sartrailing.mq5



Não me lembro de tudo, por isso estou perguntando.

Você deve limpar a estrutura da solicitação de negociação antes de preenchê-la: ZeroMemory( mrequest);

É assim que deve ser (adicione-o em dois lugares):

ZeroMemory( mrequest);      // добавить

mrequest.action = TRADE_ACTION_DEAL;  // есть

Ou, melhor ainda, remover completamente o preenchimento da estrutura e usar a classe CTrade padrão
 
Dmitry Fedoseev:

Só não me lembro de tudo, por isso estou perguntando.

Você precisa limpar a estrutura da solicitação de negociação antes de preenchê-la: ZeroMemory( mrequest);

É assim que deve ser (adicione-o em dois lugares):

ZeroMemory( mrequest);      // добавить

mrequest.action = TRADE_ACTION_DEAL;  // есть

Ou, melhor ainda, remover completamente o preenchimento da estrutura e usar a classe CTrade padrão

Limpar a estrutura ZeroMemory( mrequest) não altera a situação:

O testador ainda gera

2017.08.25 12:47:50.311 2016.01.13 16:00:00 failed instant sell 0.10 EURUSD at 1.08275 sl: 1.08575 tp: 1.07275 [Invalid request]
2017.08.25 12:47:50.311 2016.01.13 16:00:00 Alert: Request to set Sell order failed - error code:4756

No Expert Advisor que você usou como exemplo (my_first_ea.mq5), a classe CTrade padrão não é usada, mas a estrutura do zap de negociação é preenchida.

Está claro que ambos os artigos (o seu e o de https://www.mql5.com/pt/articles/100 ) foram escritos para iniciantes.

Ao mesmo tempo, o my_first_ea.mq5 ainda é testado sem erros, mas o my_first_ea_sartrailing.mq5 não.

Por quê?

Пошаговое руководство по написанию MQL5-советников для начинающих
Пошаговое руководство по написанию MQL5-советников для начинающих
  • 2010.06.09
  • Samuel Olowoyo
  • www.mql5.com
Написание советников на MQL5 проще чем кажется, вы легко можете этому научиться. В этом руководстве вы познакомитесь с основными моментами, необходимыми для написания простого советника на основе конкретной торговой стратегии. Рассмотрена структура советника, использование встроенных технических индикаторов и торговых функций, вопросы отладки и тестирования советника на исторических данных.
 

Por algum motivo, após ZeroMemory(), as posições começaram a se abrir.

 
sorte, é a primeira vez que isso acontece?
 

Olá, preciso do código para interromper o Trailing Stop, digamos, tenho uma posição de compra, o preço avança 10 pips e quero que o TS pare em 5 pips e não avance mais se o preço continuar e estiver em 20 pips, o TS ainda está em 5 pips, obrigado
 

Olá a todos. E quem pode escrever um robô que faça o rastreamento, provavelmente não o rastreamento, mas que feche todas as posições (tanto as abertas quanto as pendentes - isso pode ser opcional) quando o lucro de todas as posições abertas diminuir para um determinado valor! Exemplo: o lucro em todas as posições abertas é de US$ 200 e não quero perder mais de 20% desse valor, ou seja, quando o lucro cair para US$ 160, o Expert Advisor fechará todas as posições.

Acredito que essa seja uma questão simples para os programadores.

 
Igor Petrov:

***

Acredito que seja uma questão simples para os programadores.

Essas são as frases que os programadores mais odeiam. Isso é para referência futura.

 
Vladimir Karputov:

Essas são as frases que os programadores mais odeiam. Isso é para referência futura.

Ok. Entendi).

 
Igor Petrov:

Ok. Entendi).

Pesquise as palavras "Trailing", "Balance", "Equity".

 
Olá. O código cria ordens, mas não modifica o stop loss. Que alterações posso fazer no código para corrigir esse erro?
Arquivos anexados:
error.JPG  87 kb