Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 591

 
Artyom Trishkin:

Copiado. E quanto é copiado é verificado?

Se você estiver usando um indicador com suavização, ele requer algumas barras a mais do que você espera calcular. Portanto, só porque você copiou, não significa que os dados sejam copiados e estejam totalmente disponíveis.

É mais fácil verificar o tamanho da matriz e sair OnTick() se ela não tiver o tamanho exigido.

E como fazer isso, se no modo otimização não for dada nenhuma saída, mas no modo normal tudo funciona?
saída para arquivo funcionará?

 
Sergey Likho:
Você pode me dar uma fórmula universal para calcular o preço de breakeven se houver comissões e swaps em uma negociação?

Há uma fórmula simples que funciona para cotações com 5 dígitos e depósito em usd

Lote x lucro em pips = lucro em $.

Se for comprado, e houver swaps e comissões no negócio, então o preço breakeven será um pouco mais alto do que o preço aberto
(Se não houver swaps e comissões, o breakeven é o preço de abertura)

Mas se o instrumento for exótico ou a cotação for de 4 ou 2 dígitos ou a moeda de depósito for libra esterlina. A fórmula acima não é útil.
Existe uma fórmula universal?

Se você estiver interessado, aqui está um grande código que leva tudo em conta - https://www.mql5.com/ru/forum/58229#comment_1603761

Как получить усредненную цену позиции по двум (или более) лотам с разными ценами?
Как получить усредненную цену позиции по двум (или более) лотам с разными ценами?
  • 2015.05.01
  • www.mql5.com
Другими словами среднюю цену открытия позиции, при наличии нескольких лотов по разной цене.
 
Por favor, diga-me por que a ordem mais aberta não está fechada? Fiz tudo o que deveria ter feito, mas isso só tira a ordem da lista
int TimeSec;
//+------------------------------------------------------------------+
void start(){
if(NewSecRun()==false){return;} 
fOrderClose();}
//+------------------------------------------------------------------+
bool NewSecRun(){
if(TimeSec!=TimeSeconds(TimeCurrent())){
    TimeSec=TimeSeconds(TimeCurrent());
return (true);}   return (false);}  
//+------------------------------------------------------------------+
int fMarketOrders(int type){
   int c=0,aBuyCount=0,aSellCount=0;
     for(int i=0;i<OrdersTotal();i++){
       if(OrderSelect(i,SELECT_BY_POS)){
            switch(OrderType()){
               case OP_BUY:aBuyCount++;break;
               case OP_SELL:aBuyCount++;break;
              }}else{return(-1);}}
   if(type==OP_BUY)c=aBuyCount;if(type==OP_SELL)c=aSellCount;
   return(c);}
//+------------------------------------------------------------------+
void fOrderClose(){     Comment("       ",fMarketOrders(OP_BUY)+fMarketOrders(OP_SELL) );
      if((fMarketOrders(OP_BUY)+fMarketOrders(OP_SELL))>=500){
          for(int i=0;i<OrdersTotal();i++){
          if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
          if(OrderType()==OP_SELL || OrderType()==OP_BUY){
    if( OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE) || OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE)){return;} }}} }  }
    
 
void fOrderClose()...
for
(int i=0;i<OrdersTotal();i++){           if(OrderSelect(i

Aqui, eu acho.

 
Galim_V:

Aqui, eu acho.

esta função parece selecionar a primeira transação. É assim que eu quero. Há algo errado?

 
Rustam Bikbulatov:

esta função parece selecionar a primeira transação. É assim que eu quero. Há algo errado?

Eu não sou mestre, mas não vejo nenhum outro fechamento aqui. Selecionando da Total.
 
            switch(OrderType()){
               case OP_BUY:aBuyCount++;break;
               case OP_SELL:aBuyCount++;break;

É aqui que umBuyCount se acumula "fortemente" e umSellCount não se acumula de forma alguma.

 
Vladimir:

É aqui que umBuyCount se acumula "fortemente" e umSellCount não se acumula de forma alguma.

Obrigado! Eu nem notei! Acho que não, mas talvez seja por isso!

 

Boa tarde!

Comprei um indicador no site do mql5, para o terminal MT4, instalei-o, tudo funcionou... mas há algum tempo atrás ele parou de funcionar... Estive falando com o desenvolvedor, suporte técnico do Forex Club (tenho seu terminal), eles não puderam me ajudar. Eles não puderam me ajudar. O suporte técnico me enviou para o fórum mql.5.

 
paka76:

Boa tarde!

Comprei um indicador no site do mql5, para o terminal MT4, instalei-o, tudo funcionou... mas há algum tempo atrás ele parou de funcionar... Estive falando com o desenvolvedor, suporte técnico do Forex Club (tenho seu terminal), eles não puderam me ajudar. Eles não puderam me ajudar. O suporte técnico me enviou para o fórum mql.5.

Para o vendedor deste indicador.