Un pour tous. Exeprt général. - page 8

 
Vita писал (а):

coefline - donne un aperçu de l'avenir, il s'agit donc d'un "indicateur avancé".

coefline_true - ne fait pas de piquet, donc ne prédit rien, et n'est pas fondamentalement différent de, par exemple, AO


Où se trouve cet indicateur, j'aimerais jeter un coup d'œil au code.
 
ExpertTrader писал (а):
Vita a écrit (a) :

coefline - donne un aperçu de l'avenir, il s'agit donc d'un "indicateur avancé".

coefline_true - ne fait pas de piquet, donc ne prédit rien, et n'est pas fondamentalement différent de, par exemple, AO


Où se trouve cet indicateur, j'aimerais jeter un coup d'œil au code.

Juste ici.
 
projectX писал (а):

Je sais tout cela, mais je n'ai rien trouvé de mieux, pouvez-vous me conseiller. ! !!!!


Malheureusement, je ne peux pas vous donner de conseils. Tout d'abord, il est inapproprié d'utiliser des indicateurs "peek-a-boo". Deuxièmement, je ne trouve pas coefline_true meilleur que AO, même dans votre cas particulier. Hélas.
 
Vita
Comment le lire, comment lire les signaux ?
 
ExpertTrader писал (а):
Vita
Comment le lire, comment lire les signaux ?

Je ne suis pas vraiment intéressé. Ça ressemble beaucoup à un AO. Ces indicateurs présentent un intérêt dans la mesure où ils sont tournés vers l'avenir. :) En soi, il n'apporte rien de nouveau, c'est pourquoi il n'est pas particulièrement populaire et n'est pas utilisé. Regardez ici. Vous trouverez peut-être quelque chose d'utile.
 
projectX писал (а):
voici comment mon Expert Advisor a évolué sur coefline pendant la période de test du 01.08.06 au 01.10.06 un fort drawdown en fin de graphique est dû à
il peut ne pas fonctionner correctement s'il y a un mouvement de tendance pendant cette période. Je l'ai essayé avec un lot de 0,1, tous les ticks proviennent de la paire eurodollar du 01.08.06. Pas d'utilisation de stop lots, seulement orderclose. Comme il n'y a pas de lots d'arrêt, je pense ajouter une fonction de moyenne sur la perte...

Veuillez afficher le code du conseiller expert.
 
projectX писал (а):
L'idée est la suivante : la fermeture d'une position est souvent décisive à mon avis, car vous pouvez ouvrir et même si vous avez calculé ou deviné correctement la direction du mouvement, vous ne pouvez pas toujours fermer au bon moment et donc vous ne pouvez pas toujours prendre le profit. Je l'ai déjà remarqué lorsque je regarde la formation des barres. En bref :
C'est à dire ouvrir sur l'indicateur coefline (il y a une base) au take profit, la position suivante nous ouvrons si le prix revient d'un certain nombre de points du prix de clôture (je l'ai fait) mais il faut considérer si le prix va monter brusquement et à ce niveau ne reviendra pas, donc si du prix de clôture passe le même nombre de points égal au take profit, il faut que le niveau auquel le prix est revenu se soit déplacé.
Je crois que je comprends l'idée, mais je ne suis pas sûr. Que dois-je faire ?
 

Supposons que par tout indicateur ou ouvrir une position de baie à 1.2000 prendre profit mettre 1.Si le prix monte, fermez sur le Take Profit. Si le même indicateur ou quelque chose d'autre nous dit d'acheter à nouveau, mais acheter immédiatement je pense que non, et qu'il faut attendre que le prix baisse jusqu'à un certain nombre de points (je suggère que ce nombre soit lié à la valeur du Take Profit par exemple tp*70%) par exemple faites la valeur 10 points et le prochain achat devrait être à 1.Par exemple, disons que nous achetons avec un prix de 1,2005 et dans ce cas, le take profit pour cette position sera égal à 1,2020 et ainsi de suite.

 
Vers ExpertTrader

Désolé de faire irruption, ce n'est pas pratique pour commenter dans CodeBase.
L'indicateur de ventilateur a été repris du forum MasterForex - avant que les guérisseurs ne s'y battent. L'auteur n'est pas donné dans le corps (semble être Pupel, mais pas sûr), essayez de chercher la description par le nom FanSimple8-1a.
Il peut construire un éventail de jusqu'à 8 muwings, les modes peuvent être réglés pour chaque muwing, le nombre de vérifications simultanées et quel TF est également réglé.

Si vous ne trouvez pas l'original, vous pouvez le copier à partir de ma collection : http://forexter.land.ru/FanSimple8-1a.htm.
 
Voici un autre expert.



Je ne ferai pas de commentaire, voyez le code.

//+------------------------------------------------------------------+
//|                             Copyright © 2006, Victor Chebotariov |
//|                                      http://www.chebotariov.com/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, Victor Chebotariov"
#property link      "http://www.chebotariov.com/"
 
#define MAGIC 041020060
 
extern double Lots               = 0.1;
extern int    period             = 106;
extern int    ma_method          = 2;//0-3
extern int    applied_price_ma   = 2;//0-6
extern int    period1            = 93;
extern int    ma_method1         = 2;//0-3
extern int    applied_price_ma1  = 5;//0-6
extern int    period2            = 17;
extern int    ma_method2         = 3;//0-3
extern int    applied_price_ma2  = 6;//0-6
extern int    period3            = 12;
extern int    ma_method3         = 0;//0-3
extern int    applied_price_ma3  = 1;//0-6
extern int    period4            = 13;
extern int    ma_method4         = 0;//0-3
extern int    applied_price_ma4  = 4;//0-6
 
 
bool symbolOrders()
   {
   int orders = OrdersTotal();
   for(int i=orders-1; i>=0; i--)
      {
      if(!OrderSelect(i, SELECT_BY_POS ))
         {
         Print("OrderSelect( ", i, ", SELECT_BY_POS ) - Error #", GetLastError());
         continue;
         }
         if(OrderSymbol()==Symbol())
            {
            if(OrderMagicNumber()==MAGIC)
               {
               return(true);
               }
          }
     }
    return(false);
}
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----     
   int cnt, ticket, total;
   double close  = iClose(NULL,PERIOD_D1,1);
   double open   = iOpen(NULL,PERIOD_D1,1);
   double MA_0   = iMA(NULL,PERIOD_D1,period,0,ma_method,applied_price_ma,1);
   double MA_1   = iMA(NULL,PERIOD_D1,period1,0,ma_method1,applied_price_ma1,2);
   double MA_2   = iMA(NULL,PERIOD_D1,period2,0,ma_method2,applied_price_ma2,3);
   double MA_3   = iMA(NULL,PERIOD_D1,period3,0,ma_method3,applied_price_ma3,4);
   double MA_4   = iMA(NULL,PERIOD_D1,period4,0,ma_method4,applied_price_ma4,5);
   
   bool Buy  = close>open && MA_0>MA_1 && MA_1>MA_2 && MA_2>MA_3 && MA_3>MA_4;
   bool Sell = close<open && MA_0<MA_1 && MA_1<MA_2 && MA_2<MA_3 && MA_3<MA_4;
//----
   total=OrdersTotal();
   if(!symbolOrders()) 
     {
      if(AccountFreeMargin()<(1000*Lots)){Print("We have no money. Free Margin = ", AccountFreeMargin());return(0);}
      if(Buy)
        {
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,0,MAGIC,0,Green);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
           }
         else Print("Error opening BUY order : ",GetLastError()); 
         return(0); 
        }
      if(Sell)
        {
         ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,0,MAGIC,0,Red);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
           }
         else Print("Error opening SELL order : ",GetLastError()); 
         return(0); 
        }
      return(0);
     }
   for(cnt=0;cnt<total;cnt++)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if(OrderType()<=OP_SELL &&   // check for opened position 
         OrderSymbol()==Symbol())  // check for symbol
        {
         if(OrderType()==OP_BUY)   // long position is opened
           {
            if(Sell)
                {
                 OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position
                 return(0); // exit
                }
           }
         else // go to short position
           {
            if(Buy)
              {
               OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
               return(0); // exit
              }
           }
        }
     }
//----
   return(0);
  }
//+------------------------------------------------------------------+