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...
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:
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...
Eu tive este erro quando não usei a normalização. Eu já escrevi sobre isso.
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:
Veja as propriedades da ferramenta, talvez o nível de parada seja zero, depois tente a normalização.
Eu tive este erro quando não usei a normalização. Eu já escrevi sobre isso.
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:
Saiam desta cozinha...
então provavelmente ou definitivamente
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...