Especialistas: EMA 6.12

 

EMA 6.12:

O EA funciona nos sinais "cruzamento de duas iMA (Moving Average, MA)". Existem Trailing Stop e Take Profit.


Autor: Vladimir Karputov

 

Ao otimizar no registro, ele escreve o erro 2018.01.18 12:08:58.136 Core 2 genetic pass (0, 289) testado com o erro "incorrect input parameters" em 0:00:00.047

Otimização por: takeprofit (etapa 20), ma fast + ma slow (etapa 1).
 
sergeytrader:

Ao otimizar no registro, ele escreve o erro 2018.01.18 12:08:58.136 Core 2 genetic pass (0, 289) testado com o erro "incorrect input parameters" em 0:00:00.047

Otimização por: takeprofit (etapa 20), ma fast + ma slow (etapa 1).

Consulte duas guias: a guia "Experts" e a guia "Log".

 
Isso é bom....i tentei esse EA... por favor, dê uma explicação lógica de seu EA como um tutorial...;)
 

Olá, Vladimir. Estou testando seu Expert Advisor e tenho as seguintes dúvidas. O Trailing Stop (em pips) e o Trailing Step (em pips) são definidos nas configurações do Expert Advisor. Nas configurações do Expert Advisor, tenho esses parâmetros ativados, mas no gráfico eles não são exibidos em lugar algum e na guia "Tools" também não estão marcados. Como resultado, se o preço não tiver atingido o Take Profit, a operação será fechada pelo StopLoss no cruzamento inverso dos MooVings. E isso é uma perda de lucro considerável. Tenho uma pergunta para você: como funciona o Trailing Stop nesse Expert Advisor?

Muito obrigado.

 
Shara1:

Olá, Vladimir. Estou testando seu Expert Advisor e tenho as seguintes dúvidas. O Trailing Stop (em pips) e o Trailing Step (em pips) são definidos nas configurações do Expert Advisor. Nas configurações do Expert Advisor, tenho esses parâmetros ativados, mas no gráfico eles não são exibidos em lugar algum e na guia "Tools" também não estão marcados. Como resultado, se o preço não tiver atingido o Take Profit, a operação será fechada pelo StopLoss no cruzamento inverso dos MooVings. E isso é uma perda de lucro considerável. Tenho uma pergunta para você: Como funciona o Trailing Stop nesse Expert Advisor?

Obrigado.

O Trailing funciona da seguinte forma (exemplo do TrailingStop)

TrailingStop - o recuo real entre o preço e o nível de StopLoss.

TrailingStep - proteção contra modificação excessiva da posição.

Como o TrailingStop funciona - no exemplo de uma posição de compra:

No início, a posição StopLoss é igual a zero, esperamos pelo cumprimento da condição

                  if(m_symbol.Bid()-ExtTrailingStop>m_position.PriceOpen())

- ou seja, quando o preço do Bid menos o TrailingStop for maior que o preço de abertura da posição PriceOpen:

TrailingStop sl para priceopen

Como resultado, movemos o StopLoss para o nível do preço de abertura da posição PriceOpen:

TrailingStop sl to priceopen result.png

Agora, quando a posição tiver StopLoss (ou melhor, quando StopLoss não for igual a zero), esperamos que a condição seja atendida:

                  if(m_symbol.Bid()-ExtTrailingStop-ExtTrailingStep>m_position.StopLoss())

- Ou seja, quando o preço do Bid menos o TrailingStop menos o TrailingStep for maior que o preço do StopLoss. Observe que aqui inserimos o valor do TrailingStep na verificação - isso é necessário para evitar a modificação da posição em CADA TICK:

TrailingStop trailing

Como resultado, movemos o StopLoss para o nível Bid menos o TrailingStop:

TrailingStop trailing result.png

Agora, deixe-me explicar claramente por que a proteção TrailingStep era necessária:

TrailingStop non trailing

 
Vladimir Karputov:

O trailing funciona da seguinte forma (exemplo do TrailingStop)

TrailingStop - o recuo real entre o preço e o nível de StopLoss.

TrailingStop - proteção contra modificação excessiva de uma posição.

Como o TrailingStop funciona - no exemplo de uma posição de compra:

no início, a posição StopLoss é igual a zero, esperamos pelo cumprimento da condição

                  if(m_symbol.Bid()-ExtTrailingStop>m_position.PriceOpen())

- ou seja, quando o preço do Bid menos o TrailingStop for maior que o preço de abertura da posição PriceOpen:


Como resultado, movemos o StopLoss para o nível do preço de abertura da posição PriceOpen:


Agora, quando a posição tiver StopLoss (ou melhor, quando StopLoss não for igual a zero), esperamos que a condição seja atendida:

                  if(m_symbol.Bid()-ExtTrailingStop-ExtTrailingStep>m_position.StopLoss())

- Ou seja, quando o preço do Bid menos o TrailingStop menos o TrailingStep for maior que o preço do StopLoss. Observe que aqui inserimos o valor do TrailingStep na verificação - isso é necessário para evitar a modificação da posição em CADA TICK:


Como resultado, movemos o StopLoss para o nível Bid menos o TrailingStop:

Agora, deixe-me explicar claramente por que a proteção TrailingStep era necessária:

Isso está mais ou menos claro para mim. Perguntei por que ela não funciona nesse Expert Advisor e não é exibida nem no gráfico nem na guia Tools, embora esteja ativada nas configurações. Afinal de contas, o trailing stop deveria funcionar antes do stop loss se o preço fosse primeiro para o lado da abertura da posição e depois retornasse ao nível do stop loss, ou seja, o cruzamento inverso dos muwings.

 
Shara1:

Entendo isso de modo geral. Perguntei por que ele não funciona nesse EA e não é exibido no gráfico ou na guia Ferramentas, embora esteja ativado nas configurações. Afinal, um trailing stop deveria ser acionado antes de um stoploss se o preço fosse primeiro para o lado da abertura da posição e depois retornasse ao nível do stoploss, ou seja, o cruzamento inverso dos muwings.

Some os preços na calculadora e obtenha a resposta. Para obter uma resposta precisa, forneça a pergunta exata: data, preço...

 
Vladimir Karputov:

Some os preços na calculadora e obtenha a resposta. Para obter uma resposta precisa, forneça a pergunta exata: data, preço...

Aqui está o relatório:2018.02.07 02:51:00 8829461 EURUSD buy in 1.00 1.23893 9842118 0.00 0.00 0.00 50,036.94

é a abertura da negociação. E aqui está o fechamento:2018.02.07 07:39:01 8833159 EURUSD sell out 1.00 1.23886 9845832 0.00 0.00 - 5.01 50,031.93

Mooving tem um valor: 32 e 96.

Obrigado.

 
Shara1:

Aqui está o relatório:2018.02.07 02:51:00 8829461 EURUSD buy in 1.00 1.23893 9842118 0.00 0.00 0.00 50,036.94

é a abertura da negociação. E aqui está o fechamento:2018.02.07 07:39:01 8833159 EURUSD sell out 1.00 1.23886 9845832 0.00 0.00 - 5.01 50,031.93

Os movimentos têm um valor: 32 e 96.

Obrigado.

Por favor, releia com atenção tudo o que escrevi acima.


Acrescentado: para começar, defina Trailing Stop == 1 e Trailing Step ==1.

 
Vladimir Karputov:

Por favor, releia com atenção tudo o que escrevi acima.

Obrigado, vou dar uma olhada nisso.