[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 335

 

Há algum desenvolvedor aqui, por favor, comente:


Ou você deveria perguntar ao CD sobre isso?


void start()
  {
  double tickvalue = MarketInfo(Symbol(), MODE_TICKVALUE);

  for(int i = OrdersHistoryTotal()-1; i >= 0;i--)
    {
    if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY )) continue;
    if(OrderSymbol()!=Symbol() || OrderType() >= 2) continue;
    if(OrderType() == 0)
      {
      Alert((OrderClosePrice() - OrderOpenPrice())/Point*tickvalue*OrderLots()," <-Buy history-> ",OrderProfit());
      }
    if(OrderType() == 1)
      {
      Alert((OrderOpenPrice() - OrderClosePrice())/Point*tickvalue*OrderLots()," <-Sell history-> ",OrderProfit());
      }
    }
  }
 
fore-x:

Há algum desenvolvedor aqui, por favor, comente:


Ou você deveria perguntar a sua corretora sobre isso?



Sobre o arredondamento em décimos de centavos ou kopecks (qual é o valor de seu depósito) até mesmo crianças em idade escolar lhe responderão.

 
P_I_R_A_T_E:
Você poderia me dizer qual código colar na minha EA para que ela abra 2 ordens de compra e venda de uma só vez após uma certa quantidade de pontos ...
Você não pode. As ordens de compra e venda têm preços diferentes, portanto não é possível abri-las a um preço de uma só vez, ou seja, abri-las a um preço. De fato, um MT4 de uma única rosca não pode abrir pedidos pelo mercado simultaneamente, mesmo com preços diferentes.
 
Reshetov:
Não há como. As ordens de compra e venda têm preços diferentes, portanto não poderemos abri-las a um preço de uma só vez. De fato, um MT4 de uma única rosca não pode abrir pedidos pelo mercado simultaneamente, mesmo com preços diferentes.

Obrigado pela resposta... e se eu abrir ordens de parada pendentes? com uma grade tanto para cima quanto para baixo? com um lote fixo também é realista? quando um par abre, um novo par abre no espaço vazio antes do recém-aberto?

 
Roll:


Até as crianças em idade escolar podem dizer como arredondar um décimo de centavo ou um kopeck (qualquer que seja o seu depósito).

Se fosse arredondado, eu não perguntaria. Veja a captura de tela, você não pode arredondar alguns valores, em resumo, os resultados são diferentes. Aqui está, arredonde-o para cima:


double profit;
bool norm = false;

void start()
  {
  double tickvalue = MarketInfo(Symbol(), MODE_TICKVALUE);

  for(int i = OrdersHistoryTotal()-1; i >= 0;i--)
    {
    if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY )) continue;
    if(OrderSymbol()!=Symbol() || OrderType() >= 2) continue;
    if(OrderType() == 0)
      {
      profit = (Normalize(1, norm) - Normalize(2, norm))/Point*tickvalue*Normalize(3, norm);
      Alert(Normalize(4, norm)," <-Buy history-> ",OrderProfit());
      }
    if(OrderType() == 1)
      {
      profit = (Normalize(2, norm) - Normalize(1, norm))/Point*tickvalue*Normalize(3, norm);
      Alert(Normalize(4, norm)," <-Sell history-> ",OrderProfit());
      }
    }
  }
  
double Normalize(int x, bool z)
  {
  if(z == true)
    {
    if(x == 1) return(NormalizeDouble(OrderClosePrice(),Digits));
    if(x == 2) return(NormalizeDouble(OrderOpenPrice() ,Digits));
    if(x == 3) return(NormalizeDouble(OrderLots() ,2));
    if(x == 4) return(NormalizeDouble(profit ,2));
    }
  
  if(z == false)
    {
    if(x == 1) return(OrderClosePrice());
    if(x == 2) return(OrderOpenPrice());
    if(x == 3) return(OrderLots());
    if(x == 4) return(profit);
    }
  
  }

 
fore-x:

Há algum desenvolvedor aqui, por favor, comente:


Ou você tem que perguntar ao CD sobre isso?


Alerta e Comentário completam os números quando eles são exibidos, embora na verdade sejam mais precisos.
 
BeerGod:
Alerta e Comentário completam os números quando eles são exibidos, embora na verdade sejam mais precisos.
Eles só arredondam para cima se o número não couber, são permitidas quatro casas decimais, e eu só tenho três no máximo!
 
Sobre o que você está gritando?
 
fore-x:

Há algum desenvolvedor aqui, por favor, comente:


Ou você deveria perguntar ao CD sobre isso?



Então, qual é o problema? Os cinco e acima não são arredondados para cima? Isso confunde você, ou é outra coisa?
 
P_I_R_A_T_E:

Obrigado pela resposta... e se eu abrir ordens de parada pendentes? com uma grade tanto para cima quanto para baixo? com um lote fixo também é realista fazer? quando um par abre, um novo par abre no espaço vazio antes do recém-aberto?


É melhor usar o código que você mesmo escreveu. Para isso você precisa pelo menos de um desejo de começar a estudar a MQL4.