Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 331

 
Sepulca:

Vamos começar com o principal, não é realmente sensato rever os pedidos a partir do zero. É melhor começar com o último

Para que não entremos na situação em que fechamos/eliminamos a ordem zero e há mais ordens sobre ela. Quando você age na última ordem da conta, nada de ruim acontece.

Você pode estar usando as funções de Igor Kim sem olhar.
 

As pessoas ajudam, por favor....

Não consigo entender por que este indicador funciona bem no H4, mas ele está atrasado em outros prazos...

Eu já reinstalei o terminal, mas ainda não entendo qual é o problema.

Arquivos anexados:
test3v2.mq4  4 kb
 
clubsmi:

As pessoas ajudam, por favor....

Não consigo entender por que este indicador funciona bem no H4, mas ele está atrasado em outros prazos...

Eu já reinstalei o terminal, mas ainda não entendo qual é o problema.


Tenho que contar muitas barras, ou não há citações na história para todos os símbolos, é por isso que eu tenho atrasos; o que o terminal tem a ver com isso? Tente limitar a profundidade de desenho a 1000 barras, digamos.
 
evillive:

Você tem que contar muitas barras, ou não há citações na história para todos os símbolos, então você fica desfasado; o que o terminal tem a ver com isso? Tente limitar a profundidade de desenho a 1000 barras, digamos.

Muito obrigado pela dica. Fixou-o. Obrigado novamente!
 
Olá a todos! Quando ocorre uma determinada condição, o Consultor Especialista abre um negócio e o fecha no Take or Stop Loss em conformidade. Isso é tudo, o Expert Advisor não abre mais negócios, apesar do fato de que as condições para a abertura de negócios estão preenchidas. Por favor, informe qual é a razão? Eu realmente apreciaria isso.
 
alexey1979621:
Olá a todos! Quando ocorre uma determinada condição, o Consultor Especialista abre um negócio e o fecha no Take or Stop Loss em conformidade. Isso é tudo, o Expert Advisor não abre mais negócios, apesar do fato de que as condições para a abertura de negócios estão preenchidas. Por favor, informe qual é a razão? Eu realmente apreciaria isso.
Se você não tem código fonte, vá a um telepata...
 

Eu preciso de uma coruja martin, no histórico (teste) dá 10-15% por mês com um drawdown médio de 15% no máximo. Máximo de drawdown = 50%, assim drena metade do depoimento uma vez em um ano ou ano e meio, e antes disso a cada mês dá 10-15%.
O destaque da coruja está na filtragem do movimento. A coruja procura um movimento sem falhas, recalculando as últimas barras X na M1, e se encontrar um movimento>50 pips, aplica os seguintes filtros:
1) não deve haver nenhuma vela M15 com um alcance superior a 25 pips (a notícia já saiu)
2) não deve haver um pullback de mais de 40% do impulso atual (fórmula - valor de pullback/valor de impulso*100% - se mais de 40%, cancelamento de pedidos)
3) Não houve um apartamento prolongado, ou seja, todos os hava foram quebrados em nada menos que X número de velas na M15 (não entrarei em detalhes aqui)
Se todas as condições forem atendidas, a colher coloca uma ordem de compra, então a uma distância de 20 pontos dela mais uma ordem de compra com um lote 2 vezes maior, 20 pontos mais tarde mais uma com um lote 4 vezes maior do que a primeira ordem. E alguns pontos mais técnicos
Como resultado, temos uma coruja que começa a trabalhar somente quando vê um longo movimento sem parar e sem notícias, portanto seria muito difícil se perder.

 
evillive:
Sem o código fonte, vá para os telepatas...

Fonte

int start()
{
 double SL,TP;
 int slv=MarketInfo(Symbol(),MODE_STOPLEVEL);
 if(Step<=slv || StepOtl<=slv) {Print("Step или StepOtl слишком мал"); return(0);}
 
 CountTrades();   //подсчет ордеров по типам.
 BU();
 
 //если нет рыночных ордеров-----------------------------------------
 if(bs+ss+bsts+ssts+blms+slms==0)                                     
 {
  if (Open[1]>Close[1] && Open[2]<Close[2] && High[1]>High[2] && Low[1]<Low[2])  // продажа
  {
   TP=NormalizeDouble(Bid - TakeProfit * Point, Digits);  
   SL=NormalizeDouble(Bid + StopLoss*Point,Digits);
   if(TakeProfit==0) TP=0;
   if(StopLoss==0) SL=0;                       
   ticket1=OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,SL,TP,"Pattern_1",Magic,0,Red);//Сразу с тейк-профитом, магик в настройках
   if(OrderSelect(ticket1,SELECT_BY_TICKET,MODE_TRADES)) price1=OrderOpenPrice();//цена первого ордера
   SL=NormalizeDouble(Bid+StepOtl*Point-StopLoss*Point,Digits);
   if(StopLoss==0) SL=0;
   ticket2=OrderSend(Symbol(),OP_BUYSTOP,Lots,NormalizeDouble(Bid+StepOtl*Point,Digits),0,SL,0,"Pattern_1",Magic,0,Blue);//тикет для BuyStop
   if(OrderSelect(ticket2,SELECT_BY_TICKET,MODE_TRADES)) price2=OrderOpenPrice();//цена второго ордера
  }
  
  if (Open[1]<Close[1] && Open[2]>Close[2] && High[1]>High[2] && Low[1]<Low[2]) // покупка
  {
   TP=NormalizeDouble(Ask + TakeProfit * Point, Digits); 
   if(TakeProfit==0) TP=0;
   SL=NormalizeDouble(Ask-StopLoss*Point,Digits);
   if(StopLoss==0) SL=0;
   ticket1=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,SL,TP,"Pattern_1",Magic,0,Blue);//с тейком, магик в настройках 
   if(OrderSelect(ticket1,SELECT_BY_TICKET,MODE_TRADES)) price1=OrderOpenPrice();//цена первого ордера
   SL=NormalizeDouble(Bid-StepOtl*Point+StopLoss*Point,Digits);
   if(StopLoss==0) SL=0;
   ticket2=OrderSend(Symbol(),OP_SELLSTOP,Lots,NormalizeDouble(Bid-StepOtl*Point,Digits),0,SL,0,"Pattern_1",Magic,0,Red);//тикет для SellStop
   if(OrderSelect(ticket2,SELECT_BY_TICKET,MODE_TRADES)) price2=OrderOpenPrice();//цена второго ордера
  }
 }
 

 return(0);
}
     
 //+------------------------------------------------------------------+
void CountTrades() // количество открытых ордеров
   {
    for(int i=OrdersTotal()-1; i>=0; i--) 
    {
     if (OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
     { 
      if (OrderSymbol()!=Symbol() && OrderMagicNumber()!=Magic) continue;//отделяем свои ордера. Магик задается в настройках
      int typ=OrderType();      //однократный вызов функции ускоряет работу
      switch (typ)
      {
       case 0: bs++;
       case 1: ss++;
       case 2: blms++;
       case 3: slms++;
       case 4: bsts++;
       case 5: ssts++;
       default: break;
      }        
     }
    }
    return;  
   }
 //+------------------------------------------------------------------+
 
Frangatic:

Eu preciso de uma coruja martin, no histórico (teste) dá 10-15% por mês com um drawdown médio de 15% no máximo. Máximo de drawdown = 50%, assim drena metade do depoimento uma vez em um ano ou ano e meio, e antes disso a cada mês dá 10-15%.
O destaque da coruja está na filtragem do movimento. A coruja procura um movimento sem falhas, recalculando as últimas barras X na M1, e se encontrar um movimento>50 pips, aplica os seguintes filtros:
1) não deve haver nenhuma vela M15 com um alcance superior a 25 pips (a notícia já saiu)
2) não deve haver um pullback de mais de 40% do impulso atual (fórmula - valor de pullback/valor de impulso*100% - se mais de 40%, cancelar o pedido)
3) Não houve um apartamento prolongado, ou seja, todos os hava foram quebrados em nada menos que X número de velas na M15 (não entrarei em detalhes aqui)
Se todas as condições forem atendidas, a colher coloca uma ordem de compra, então a uma distância de 20 pontos dela mais uma ordem de compra com um lote 2 vezes maior, depois de 20 pontos mais uma ordem de compra com um lote 4 vezes maior do que a primeira ordem. E alguns pontos mais técnicos
Como resultado, temos uma coruja que começa a trabalhar somente quando vê um longo movimento sem parar e não há nenhuma reversão, portanto seria muito difícil se retirar.

É aqui que você consegue o trabalho! Fá-lo-á bem, rápido e barato!
 
borilunad:
Este é o lugar certo para você ! É bom, é rápido e é barato!
Bem, isso é um pouco exagerado. E se for rápido, é um tiro no escuro... E se for barato, veja o ponto 1.