[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 483

 

Tarde

Alguém pode me dizer se é possível abrir uma posição com um volume de 0,0001 ao invés de 0,01 em MT4?

 
Vasia_Pu:

Tarde

Alguém pode me dizer se é possível abrir uma posição com um volume de 0,0001 ao invés de 0,01 em MT4?

Depende da etapa de lote do seu corretor. Talvez você não possa...
 
FOReignEXchange:

Isto seria mais correto. Mas só funcionará corretamente na M30, mas mostra sinais da M60.

Se você fizer um detalhado e universal, você tem que cavar ao redor. Quem desenvolveu o código? As barras_contagem não são usadas em nenhum lugar, embora estejam configuradas.


Eu baixei o código fonte, então pedi ao guru local para fazer os sinais aparecerem na barra no indicador quando o raio ZZ aparecer.

(há muito tempo, mas eu me lembro do Integer e ajudei) e exibia as barras alta e baixa sobre as quais o raio é desenhado ZZ.

"Se você fizer uma escavação detalhada e universal - precisa cavar" - Se você não se importa?! Obrigado pelo seu feedback.

 
Funciona apenas em M30. Você coloca o indicador original. Para ver o sinal na M60, você precisa colocar um segundo indicador.
 
Funciona apenas em M30. Você coloca o indicador original. Para ver o sinal na M60, você precisa colocar um segundo indicador.
 
FOReignEXchange:
Funciona apenas em M30. Você coloca o indicador original. Para ver o sinal na M60, você precisa colocar um segundo indicador.

Somente a compilação _m__Dinapwtar.ezigwzag_2e1s.ex4 funciona corretamente na M30
 

Aqui está o universal. Eu não consertei os pontos. E por que você precisa deles, eles só atrapalham. As dobras (picos) são visíveis sem elas.

O cronograma é definido nas configurações.

Arquivos anexados:
 
FOReignEXchange:

Aqui está o universal. Eu não consertei os pontos. E por que você precisa deles, eles só atrapalham. As dobras (picos) são visíveis sem elas.

O cronograma é definido nas configurações.



Na barra de fechamento (sinal tchk acima dela) abaixo/abaixo do nível (desde que sejam níveis de dinápolis em operação) para concluir

Não consigo ver a inversão de preços .

Obrigado pela ajuda!

 

Boa tarde!

Eu encontrei um problema com a modificação do Stop Loss de uma ordem pendente. O registro mostra o erro OrderModify 3.

В торговую функцию переданы неправильные параметры, например, неправильный символ, неопознанная торговая операция, отрицательное допустимое отклонение цены, несуществующий номер тикета и т.п. Необходимо изменить логику программы.

Aqui está um pequeno exemplo de como estou tentando implementá-lo:

void Modify_Orders_All_Series_SP(double Timeframe,double plus_point,double global_trailing_SP,int Magic,double Level)

{  int    count;
   double Open_0      = NormalizeDouble(iOpen(Symbol(),Timeframe,0),Digits);
   double Low_1       = NormalizeDouble(iLow(Symbol(),Timeframe,1),Digits);
   double High_1      = NormalizeDouble(iHigh(Symbol(),Timeframe,1),Digits);
   double new_val     = NormalizeDouble(Low_1 - plus_point*Point,Digits);

   for(count = OrdersTotal()-1; count >= 0; count--)
      {  
         OrderSelect(count,SELECT_BY_POS,MODE_TRADES);

         double Op_Price = NormalizeDouble(OrderOpenPrice(),Digits);
         double Stp_Loss = NormalizeDouble(OrderStopLoss(),Digits);
         
         if(OrderMagicNumber() == Magic)
            {  if(OrderType() == OP_SELLSTOP)
                  {  if(Low_1 < Level && new_val > Op_Price && new_val < Open_0)  
                        {  OrderModify(OrderTicket(),new_val,0,0,0,DeepPink);
                           OrderSelect(count,SELECT_BY_POS,MODE_TRADES);
                           Print("02_Modify_Orders_All_SP:"," Magic_SP: ",OrderMagicNumber(),", Ticket: ",OrderTicket(),
                                 ", Op_Price: ",DoubleToStr(OrderOpenPrice(),5),", global_trailing_SP: ",DoubleToStr(global_trailing_SP,5),
                                 ", Stp_Loss: ",DoubleToStr(OrderStopLoss(),5));
                        }
                           
                     if(global_trailing_SP < Stp_Loss && global_trailing_SP > High_1)  
                        {  OrderModify(OrderTicket(),0,global_trailing_SP,0,0,DeepPink);
                           Print("Magic_SP01: Условие Trailing_OP_SELLSTOP = TRUE");
                        }
                     
                  }
               if(OrderType() == OP_SELL)
                  {  if(global_trailing_SP < Stp_Loss && global_trailing_SP > High_1)  
                       {  OrderModify(OrderTicket(),0,global_trailing_SP,0,0,DeepPink);
                          Print("Magic_SP01: Условие Trailing_OP_SELL = TRUE");
                       }
                  }
            }
      }
}

O registro mostra que o problema está neste local:

if(global_trailing_SP < Stp_Loss && global_trailing_SP > High_1)  
  {  OrderModify(OrderTicket(),0,global_trailing_SP,0,0,DeepPink);
     Print("Magic_SP01: Условие Trailing_OP_SELLSTOP = TRUE");
  }

-------------------------------

Onde eu estou errado?

 
tol64:

Onde eu estou errado?

ter o hábito de imprimir todos os parâmetros que possam ser relevantes para o erro.

se (!OrderModify(...)) { Print(GetlastError()+.... OrderModify parameter list ); }

Razão: