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

 

Eu tive este erro quando não usei a normalização. Eu já escrevi sobre isso.

 
Alexander Bereznyak:
olhar para as propriedades do instrumento, talvez o nível de parada seja zero lá, então tente a normalização

Sim, se o corretor é A*****i, então seu nível de parada é freqüentemente zero. Mas, ao mesmo tempo, a equipe de apoio escreve que precisamos usar 2 spreads para obter o nível de parada correto. Portanto, o código que cobre o maior número de casos com o nível de parada é o seguinte:

tickSize        = SymbolInfoDouble(symbol, SYMBOL_TRADE_TICK_SIZE);
ask             = SymbolInfoDouble(symbol, SYMBOL_ASK);
bid             = SymbolInfoDouble(symbol, SYMBOL_BID);
spread          = ask - bid;                                      // Заметьте - спред получаем не через MarketInfo, и не через SymbolInfoInteger

digits    = (int) SymbolInfoInteger(symbol, SYMBOL_DIGITS);
point     = SymbolInfoDouble(symbol, SYMBOL_POINT);
stopLevel = MarketInfo(symbol, MODE_STOPLEVEL) * point;           // До сих пор встречаются случаи, когда SymbolInfoInteger и MarketInfo выдают разные значения. MarketInfo пока ближе к истине
   
if (stopLevel == 0)
{
   if (!isECN)                                                    // isECN - признак ECN-счета, на котором Stop Level действительно равен 0
      topLevel = NormalizeDouble(2 * spread, digits);
}
else
   stopLevel = NormalizeDouble(stopLevel + tickSize, digits);     // Сознательное увеличение размера Stop Level на один тик, чтобы постоянно не натыкаться на ошибку 130.
 
Alexander Bereznyak:
Veja as propriedades da ferramenta, talvez o nível de parada seja zero, depois tente a normalização.
O nível de parada lá é de 20, tenho um cheque... Então funcionou para mim hoje em 10%, mas maldição, esses erros... Não sei o que os está causando... Algumas ordens abertas, outras não...
 
Oksana Berenko:

Eu tive este erro quando não usei a normalização. Eu já escrevi sobre isso.

Adicionada a normalização em todos os lugares, não ajuda...
 
Saiam desta cozinha...
 
Ihor Herasko:

Sim, se o corretor for A*****i, então seu nível de parada é freqüentemente zero. Mas, ao mesmo tempo, a equipe de apoio escreve que precisamos usar 2 spreads para obter o nível de parada correto. Portanto, o código, que abrange a maioria dos casos com Nível de parada, é o seguinte:

Vou tentar, obrigado...
 
Andrey Khatimlianskii:
Saiam desta cozinha...
Então para onde? É provavelmente o mesmo em todo lugar... Corretor da Forehfoy
 
então provavelmente ou definitivamente
 
Alexander Bereznyak:
então provavelmente ou definitivamente
Provavelmente o quê? Não entendo. Ah, você quer dizer corretores... Eu o abri no robô, veja como corre...
 

Uma peça do ofício atual... Todas as ordens abertas de acordo exatamente com o mesmo algoritmo, ou seja, as condições são sempre iguais. No entanto, os erros ocorrem com uma freqüência invejável. Em todos os lugares podemos ver que a parada é sempre maior do que o nível de parada, e as ordens são sempre colocadas a uma distância > do que o nível de parada do preço atual.

E na conta demo de outro corretor não houve um único erro durante este tempo...

Razão: