Petiyashaket: Preciso de uma parada de compra rastreada (modificada) por fractais de preço até que acione e uma parada de venda da mesma forma.
Portanto, a pergunta em seu código, destacada em vermelho.
if(Up>0&&Down==0&&Volume[0]<2) //если верхний фрактал есть а нижнего нету и прошло не больше 2х тиков то:
{
if((High[3]+5*Point-Ask)/Point>MarketInfo(Symbol(),MODE_STOPLEVEL)) //если расстояние 0 бара от хая фрактала позволяет то:OrderSend(Symbol(),OP_BUYSTOP,Lot,High[3]+5*Point,20,High[3]-sl,High[3]+tp,NULL,Magic,0,Green);//выставляем отложенный на покупкуelse {BS=High[3]+5*Point; Print("Виртуальный BS:",BS);} // а ели нет то запоминаем(позже будет добавлен вход с рынка){ // К чему относится эта скобка???
for (int pos=0;pos==OrdersTotal();pos++)
OrderSelect(pos,SELECT_BY_POS,MODE_TRADES);
if(OrderMagicNumber()==Magic&&OrderSymbol()==Symbol()&&OrderType()==OP_BUYSTOP)
{
OrderModify(OrderTicket(),Up+5*Point,High[3]-sl,High[3]+tp,0,CLR_NONE);
}
} // это пара к той...}
Você ainda não respondeu. Não sei o que fazer com ele, mas o resultado da execução do código será diferente.
Às vezes, há um monte deles em um só tique. E nesta barra a condição não funcionará mais
Victor, esta pergunta não é para mim. Eu uso esta função.
bool NewBar()
{
staticdatetime lastbar = iTime(_Symbol, PERIOD_H1, 0); // Период можно менять по желанию
datetime curbar = iTime(_Symbol, PERIOD_H1, 0); // и будет отсчитывать новый бар заданного периода на любом ТФ
if(lastbar != curbar)
{
lastbar = curbar;
return (true);
}
elsereturn(false);
}//******************************************************************|
Eu copiei um pedaço de código para fazer uma pergunta sobre parênteses.
Petiyashaket: Isto é o que Oleg Remizov ensina no YouTube, esta condição restringe o comércio no noticiário e a captura de alces :)
Eu não tenho nada a dizer sobre o Remizov. Mas não fique ofendido se seu código falhar barras. Tudo bem, se você tem um código de minutos (em que prazo, é claro), mas se você vai correr em uma hora ou mais - só haverá pena de você.
Petiyashaket: Eu experimentei com parênteses de diferentes maneiras, eu os removi e adicionei, o resultado é o mesmo
Você não precisa experimentar, você precisa entender o significado destes braquetes e como aplicá-los. Está escrito na documentação, eu não vou ler uma palestra sobre isso.
if(Up>0&&Down==0&&Volume[0]<2) //если верхний фрактал есть а нижнего нету и прошло не больше 2х тиков то:
{
if((High[3]+5*Point-Ask)/Point>MarketInfo(Symbol(),MODE_STOPLEVEL)) //если расстояние 0 бара от хая фрактала позволяет то:OrderSend(Symbol(),OP_BUYSTOP,Lot,High[3]+5*Point,20,High[3]-sl,High[3]+tp,NULL,Magic,0,Green);//выставляем отложенный на покупкуelse {BS=High[3]+5*Point; Print("Виртуальный BS:",BS);} // а ели нет то запоминаем(позже будет добавлен вход с рынка)for (int pos=0;pos==OrdersTotal();pos++)
{ // наверное сюда её надо
OrderSelect(pos,SELECT_BY_POS,MODE_TRADES);
if(OrderMagicNumber()==Magic&&OrderSymbol()==Symbol()&&OrderType()==OP_BUYSTOP)
{
OrderModify(OrderTicket(),Up+5*Point,High[3]-sl,High[3]+tp,0,CLR_NONE);
}
} // это пара к той...}
Mas isto é apenas uma parte do código. Há um problema semelhante mais adiante.
E este código
é melhor escrever no init() e é melhor não escrever assim
e depois no início()
Retiro a pergunta, eu mesmo a resolvi.
Preciso de uma parada de compra rastreada (modificada) por fractais de preço até que acione e uma parada de venda da mesma forma.
Portanto, a pergunta em seu código, destacada em vermelho.
Você ainda não respondeu. Não sei o que fazer com ele, mas o resultado da execução do código será diferente.
Portanto, a pergunta em seu código, destacada em vermelho.
Você ainda não respondeu. E a partir disso o resultado da execução do código será diferente.
Por que você usaVolume[0]<2 na condição?
Às vezes, em um só tique, há um monte deles. E nesta barra, a condição não funcionará mais.
Por que você usaVolume[0]<2 na condição?
Às vezes, há um monte deles em um só tique. E nesta barra a condição não funcionará mais
Victor, esta pergunta não é para mim. Eu uso esta função.
Eu copiei um pedaço de código para fazer uma pergunta sobre parênteses.
Por que você usaVolume[0]<2 na condição?
Às vezes, há um monte deles em um só tique. E nesta barra a condição não funcionará mais
Isto é o que Oleg Remizov ensina no YouTube, esta condição restringe o comércio no noticiário e a captura de alces :)
Portanto, a pergunta em seu código, destacada em vermelho.
nunca foi respondida. E isso fará com que o resultado da execução do código seja diferente, também.
Eu experimentei com parênteses de diferentes maneiras, eu os removi e adicionei, o resultado é o mesmo
Você não precisa experimentar, você precisa entender o significado destes braquetes e como aplicá-los. Está escrito na documentação, eu não vou ler uma palestra sobre isso.
Mas isto é apenas uma parte do código. Há um problema semelhante mais adiante.