Especialistas: JK BullP AutoTrader

 

JK BullP AutoTrader:

No trabalho do Expert Advisor, usa-se o indicador iBullsPower (Bulls Power).

JK BullP AutoTrader tester

Autor: Vladimir Karputov

 

Tudo bem, exceto por que handle_iBullsPower=iBullsPower(Symbol(),Period(),13); ?

Esse parâmetro deveria ser movido para a entrada?

E me parece que, como o TrailingStep é sempre menor que o TrailingStop, mas maior que zero, podemos inserir na entrada, em vez do TrailingStep, um coeficiente duplo TrailingStepKo de 0 a 1.

e em OnInit() TrailingStep=int(TrailingStepKo*TrailingStop);

Dessa forma, é mais conveniente definir os parâmetros no testador e você não será testado com o erro "parâmetros de entrada incorretos"

 
Oleg Tsarkov:

Tudo bem, exceto por que handle_iBullsPower=iBullsPower(Symbol(),Period(),13); ?

Esse parâmetro deve ser movido para a entrada ?

...

Cada um pode fazer o que quiser. Se for mais conveniente para você, altere o código.

Oleg Tsarkov:

...

E me parece que, como o TrailingStep é sempre menor que o TrailingStop, mas maior que zero, podemos inserir um coeficiente duplo TrailingStepKo de 0 a 1 na entrada em vez do TrailingStep.

e em OnInit() TrailingStep=int(TrailingStepKo*TrailingStop);

...

Todos podem fazer isso da maneira que preferirem. Se for mais conveniente para você, altere o código.

Oleg Tsarkov:

...

É mais conveniente definir os parâmetros no testador e você não será testado com o erro "parâmetros de entrada incorretos".

Cada um pode fazer o que quiser. Se for mais conveniente para você, altere o código.

 
Vladimir Karputov:

Todos podem fazer o que quiserem. Se for mais conveniente para você, altere o código.

Todos podem fazer o que quiserem. Se for mais conveniente para você, altere o código.

Todos podem fazer o que quiserem. Se for mais conveniente para você, mude o código.

Mais uma coisa, se eu não estiver aborrecendo vocês).

   if(pos1pre>pos2cur && pos2cur>0 && total<2)
     {
      m_trade.Sell(Lots,Symbol(),m_symbol.Bid(),
                   m_symbol.Ask()+StopLoss*m_digits_adjust,
                   m_symbol.Ask()-TakeProfit*m_digits_adjust);
     }
   if(pos2cur<0 && total<1)
     {
      m_trade.Buy(Lots,Symbol(),m_symbol.Ask(),
                  m_symbol.Bid()-StopLoss*m_digits_adjust,
                  m_symbol.Bid()+TakeProfit*m_digits_adjust,NULL);
     }

Por que há condições diferentes para compra e venda?

Se pode haver dois "eus" ao mesmo tempo, então há sempre uma baía....

É claro que você pode responder como sempre, mas estou interessado em sua lógica.

 
Oleg Tsarkov:

Mais uma coisa, se eu não estiver aborrecendo você)

   if(pos1pre>pos2cur && pos2cur>0 && total<2)
     {
      m_trade.Sell(Lots,Symbol(),m_symbol.Bid(),
                   m_symbol.Ask()+StopLoss*m_digits_adjust,
                   m_symbol.Ask()-TakeProfit*m_digits_adjust);
     }
   if(pos2cur<0 && total<1)
     {
      m_trade.Buy(Lots,Symbol(),m_symbol.Ask(),
                  m_symbol.Bid()-StopLoss*m_digits_adjust,
                  m_symbol.Bid()+TakeProfit*m_digits_adjust,NULL);
     }

Por que há condições diferentes para compra e venda?

Se pode haver duas vendas ao mesmo tempo, então há sempre uma compra....

É claro que você pode responder como sempre, mas estou interessado em sua lógica.

Leia a descrição com atenção - não é minha lógica :).