[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 90

 
T-G:

Você pode me aconselhar, há um arquivo csv com dados no formato 1.33027; 1.33023 e assim por diante.

Então leia este arquivo, mas por alguma razão os dados são lidos com uma precisão de 4 dígitos e eu preciso ler com 5.

Ler de diferentes maneiras e

não ajuda

Legível com uma precisão de 15 dígitos. As últimas construções são ainda maiores ao declarar constantes. Para exibir caracteres após o 4º, é necessário utilizar uma função.
 
Posso mudar uma ordem que tem um número mágico enquanto negocio?
 
Olá, conselho de ajuda, escreveu uma coruja, periodicamente tem que abrir 2 pedidos de uma só vez o problema é que nem sempre abre ambos os pedidos, o deslize que coloco e 3 e 5 e 10, mas ainda não não não sim e abrir um único. Não consigo descobrir como organizar um guardião que acompanhe as aberturas e, se necessário, abra uma ordem "esquecida" em falta?
 
Myth63:
Posso mudar uma ordem que tem um número mágico enquanto negocio?

Não
 

Ajude quem sabe! Eu não consigo fazer este código funcionar:

for(i=1;i<=total;i++) // Loop de pedido
{
if(OrderSelect(i-1,SELECT_BY_POS)==verdadeiro)
{
if(OrderType()==OP_BUY && Ticket1===OrderTicket())
{
if(OrderCloseTime()==0 && SL1<Price1 && Bid-Price1>(NoLoss1*Point))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(Point*(NoLoss1-3)),OrderTakeProfit(),0,Blue);
}
if ( OrderCloseTime()==0 && SL1>=Price1 && Bid - SL1 > ((NoLoss1+StepLoss1)*Point))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(Point*(NoLoss1-3)),OrderTakeProfit(),0,Blue);
}
}
}
}

a questão é que deve modificar 1 ordem entre várias: Ticket1, mas não modifica em nada

 
azik1306:

Ajude quem sabe! Eu não consigo fazer o código funcionar:


for(i=1;i<=total;i++) // Цикл перебора ордер
{
   if(OrderSelect(i-1,SELECT_BY_POS)==true)
   {
      if(OrderType()==OP_BUY && Ticket1==OrderTicket())
      {
         // Что выводится??? Посмотрите и проверьте, выполняются ли условия модификации
         // А заодно проверьте, нет ли в логах сообщений об ошибке
         Print("SL1=",DoubleToStr(SL1,8));
         Print("Price1 =",DoubleToStr(Price1 ,8));
         Print("Bid=",DoubleToStr(Price1 ,8));
         Print("NoLoss1=",DoubleToStr(NoLoss1,8));
         Print("StepLoss1=",DoubleToStr(StepLoss1,8));

         if(OrderCloseTime()==0 && SL1<Price1 && Bid-Price1>(NoLoss1*Point))
         {
            OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(Point*(NoLoss1-3)),OrderTakeProfit(),0,Blue);
         }

         if ( OrderCloseTime()==0 && SL1>=Price1 && Bid - SL1 > ((NoLoss1+StepLoss1)*Point))
         {
            OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(Point*(NoLoss1-3)),OrderTakeProfit(),0,Blue);
         }
      }
   }
}
 
alsu:

+ se apenas 1 pedido com o número do bilhete1 precisar ser alterado, o ciclo não é necessário.

o pedido de ingressos é imediatamente selecionado e alterado

 
ilunga:

+ se apenas 1 pedido com o número do bilhete1 precisar ser alterado, o ciclo não é necessário.

o pedido de ingressos é imediatamente selecionado e alterado

Sim, +
 
AndEv:
Por favor, me ajude com esta pergunta. Eu conheço o índice da barra no cronograma D1. Assim, podemos saber o preço máximo do dia. Como conheço o índice da barra no cronograma M15, que corresponde ao preço máximo do dia? Eu tentei com iHighest(), mas preciso especificar o número de elementos a procurar, e será diferente para o dia normal, fim de semana ou pré-férias. Talvez não haja necessidade de reinventar a roda e haja uma função pronta para isso?

não há um pronto.

Para descobrir o número de pedidos, você precisa encontrar a diferença de duas funções iBarShift, substituindo as horas de início e fim do dia (ou seja, +23:59).

Este será o número de barras para o período necessário.

 
Boa gente, você pode me dar uma dica? Quando eu executo a EA, ela me faz automaticamente com um, dois ou três meses no máximo, dependendo do prazo. Eu estabeleço certas datas. O que eu estou fazendo de errado?