Já estou prestes a desistir de lutar contra eles... - página 4

 
Andrey Khatimlianskii:

Você não pode negociar à beira de uma alavanca de parada em um mercado rápido. É como tentar abrir em uma Execução Instantânea com um deslize de 1 pip em um mercado de cinco dígitos - 90% do tempo haverá um requote.

Acrescente um pouco de folga.

0 significa que ou ela não existe ou é verificada no servidor por um algoritmo conhecido apenas por ele.

E precisamos contar a partir dos preços corretos (não confundir oferta com pedido). E SL com TP de negócios de mercado não deve ser verificado a partir do preço de abertura, mas a partir do preço ao qual eles vão acionar.

Eu estava pensando nisso, o mais provável é que o pedido não seja processado no mesmo tick, sim, e as paradas estão na borda da parada
 
Maxim Dmitrievsky:
muito provavelmente o pedido não teve tempo de ser processado com o mesmo tiquetaque.
O erro teria sido diferente
 
Oksana Berenko:
O erro seria diferente
Vou tentar ampliar um pouco os níveis, no entanto, e ver o que acontece )
 
Maxim Dmitrievsky:
Vou tentar ampliar um pouco os níveis, no entanto, e ver o que acontece )
Escreva de volta mais tarde, é interessante.
 
Oksana Berenko:
Escreva mais tarde, é interessante.

Aumentado em 5 pips - nenhum erro com as paradas ainda, mas os off-prestações permanecem :)

E sistema monitorado, para diversão <Falha. REMOVIDO.

 

Se eu fosse o corretor, eu enviaria spam para sua EA. Qual é o objetivo de modificar uma ordem em uma fração de segundo? Você modifica em cada carrapato?

 
Oksana Berenko:
Se eu fosse o corretor, eu enviaria spam para sua EA. Qual é o objetivo de modificar uma ordem em uma fração de segundo? Acontece em cada carrapato?
Não, não em cada carrapato, dependendo da situação, mas pode acontecer com freqüência. Este é um escalpador ávido. Que direito tenho de ser banido? não é proibido por sua carta, não estou fazendo nada de errado ) eles apagaram o link, eles dizem que estou brincando mal )
 

Se stoploss = 0, então ele está flutuando, assim como o spread.

E quanto ao stoploss = 2 spreads, nem sempre. A maioria dos corretores tem escrito nas regras - tanto no stoploss de notícias como no spread pode aumentar em 3 vezes.

Também já vi resultados similares com meus corretores forex. somente há um cheque para spread - e stoploss = 3 spreads e às vezes = 50 pips.

e às vezes são 150 pips, e às vezes ...................... 500 pips é um stop loss

Não acho que você precise do código inteiro, mas a parte técnica do estabelecimento do pedido seria melhor.

 
Vladislav Andruschenko:

Se stoploss = 0, então ele está flutuando, assim como o spread.

E quanto ao stoploss = 2 spreads, nem sempre. A maioria dos corretores tem escrito nas regras - tanto no stoploss de notícias como no spread pode aumentar em 3 vezes.

Também já vi resultados similares com meus corretores forex. somente há um cheque para spread - e stoploss = 3 spreads e às vezes = 50 pips.

e às vezes são 150, e às vezes ...................... 500 pontos.

Não acho que você precise do código inteiro, mas a parte técnica do estabelecimento do pedido seria melhor.

Eu já resolvi o problema com os estoplevels, o código estava nas mensagens acima. Agora só há erro nas citações Off quando se modifica o stoploss
 

Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial

Já estou prestes a desistir de lutar contra eles...

Maxim Dmitrievsky, 2015.12.03 15:52

Por que um erro? Se a parada foi de 20 pips... E se não 20 (alterado), então tudo o mesmo cheque

preço 1.07998 SL = 1.07956 - isto é um bystop, está tudo bem

a segunda também, e a terceira...

Em meu código:

ValidStop = SymbolInfoInteger(Symbol(),SYMBOL_TRADE_STOPS_LEVEL);
if( Ask-iMA(NULL,0,MAperiod,0,MODE_SMA,PRICE_CLOSE,0) >= ValidStop*Point)
   {
    double price;
    Lots = LotsOptimized();
    if(ValidStop<=StopLevels) price = MarketInfo(_Symbol,MODE_ASK)+StopLevels*_Point;
    else price = MarketInfo(_Symbol,MODE_ASK)+ValidStop*_Point;
    
    if(OrderSend(Symbol

(), OP_BUYSTOP, Lots, price, 2, NormalizeDouble(iMA(NULL,0,MAperiod,0,MODE_SMA,PRICE_CLOSE,0),_Digits), 0, NULL,      OrderMagic)) GetLastError();
  }

Aí SL=2, como isso pode funcionar?