[Archive !] ÉCRIRE UN PAYS ENSEMBLE ! !! - page 20

 

Je réalise que je suis resté bloqué à la page 19 après avoir lu la première, mais mettons les choses au clair :

1) il s'agit d'un conseiller expert basé sur une répartition

2) toutes les autres idées qui ne correspondent pas à la répartition sont rejetées ?

3) Ne devrions-nous pas classer les stratégies et ensuite construire 3-4 EAs ?

4) Je suis prêt à les soutenir avec des idées et du code

5) excusez-moi - je dois lire les 18 pages précédentes

 
aucune suggestion concrète pour l'instant... ni sur les pannes ni sur les autres... jusqu'à présent, l'auteur n'a fourni que des informations spécifiques sur l'analyse multidevise (couverture).
 

Alors la première suggestion de ma part :

définissons les modes de fonctionnement possibles (panne, non-rupture, etc.). Bon sang, j'ai vu des articles quelque part, alors si quelqu'un a des conseils, je serais reconnaissant si quelqu'un pouvait me donner un lien.

 
Je suppose que personne ne se soucie de la stratégie tant qu'il y a du profit...
 
sllawa3 >> :
Je suppose que personne ne se soucie du principe de la stratégie tant qu'elle est rentable...

Avec ce genre d'approche, ça peut être n'importe quoi.

En ce qui me concerne, l'essentiel est un codage soutenu par une thériaque compétente. Puisque l'auteur n'a plus d'enthousiasme, je propose - faisons les choses de manière mature ?????.

1) Il existe une stratégie de M. BookKeeper. Créons un conseiller expert basé sur ce modèle. Vous pouvez trouver la stratégie ici http://uploadbox.com/files/73dd564596/

2) Ne prêtons pas encore attention à sa rentabilité - le processus de mise en œuvre nous dira tout sur les goulots d'étranglement, ce qui peut être un point de départ pour de futurs projets.

3) Je propose de créer un nouveau fil de discussion (j'espère que les modérateurs n'y verront pas d'inconvénient) - Création de la stratégie 'Expert Advisor basé sur la stratégie de BookKeeper'.

 
caspermax >> :

Alors la première phrase est de moi :

Déterminons les méthodes de travail possibles (percée, pas de percée, etc.). Merde, je connaissais l'article quelque part, donc si quelqu'un me le dit - je serai reconnaissant, si quelqu'un jette un lien.

Au cas où quelqu'un n'aurait pas pris la peine de lire les 19 pages, je vais vous le dire brièvement ;)

L'idée de départ était en effet de franchir le haut/bas de la journée précédente. Nous entrons stupidement avec un stop et un profit fixes. À long terme, ce système fonctionne avec un facteur de profit approximativement égal à 1,0. C'est-à-dire qu'il perd autant de bénéfices qu'il en perd de 50/50. C'est pourquoi je suggère d'utiliser des outils supplémentaires pour augmenter la rentabilité du conseiller expert en utilisant la période de test de 2009. Rappelons qu'au départ, il n'y avait pas d'indicateur, pas d'oscillateur, pas de chalut, pas de règles de sortie du marché, c'est-à-dire rien...

Après quelques suggestions, j'ai décidé de publier mon propre indicateur multidevise. Je l'ai attaché à mon conseiller expert et j'ai obtenu les résultats depuis 2000. (P.9).

C'est pourquoi nous avons oublié l'idée initiale et avons commencé à discuter de l'indicateur)))) et à construire notre EA sur cette base. Alors, faisons une brève présentation :)

Je vais revenir à l'idée de la panne aujourd'hui et poster un expert. Je serai heureux d'en discuter ensemble...

 
RomanS >> :

Au départ, il y avait vraiment une idée de décomposition du haut/bas de la journée précédente... Mais pour une raison quelconque, ils ont oublié l'idée originale et ont commencé à discuter de l'indicateur lui-même )))).

Je suis toujours en train de gérer le mien. Mais je suis d'accord sur l'indicateur) Il devrait y avoir quelque chose comme un filtre de commerce...

 
ALex2008 >> :

Je suis encore en train de trier le mien... Mais pour ce qui est de l'indicateur, je vais vous rejoindre) Il devrait y avoir quelque chose comme un filtre de commerce...


Je vérifie ce fil de temps en temps...

C'est intéressant de voir le résultat final, je vois que vous avez presque tout préparé, mais c'est toujours une forêt dense ;)))

 

C'est le même Expert Advisor que sur la première page, mais il vérifie la divergence MACD, c'est-à-dire que s'il n'y a pas de divergence, nous ouvrons dans la direction de la rupture, s'il y en a une, c'est exactement le contraire. Voici un exemple de l'expert dans l'image

En même temps, le stop loss est fixé à 2 fois moins que le take profit.

Voici le code

//+-----------------------------------------------------------------------+
//|                                                     Крокодил ГЕНА.mq4 |
//|                                                         Крокодил ГЕНА |
//+-----------------------------------------------------------------------+

  // Внешние переменные
  extern double TakeProfit = 1100; 
  extern double Lot        = 1;    
  extern string SYMBOL     = "EURUSD";
  
  // Глобальные переменные
  int LastTradeTime = 0;      // Время последней открытой сделки
  
  // Поехали... :)
  int start() 
  {  
     int Ticket;
  double BID,
         ASK,
         SL=0,
         TP=0;                                  
    bool Ans         = false,
         Open_Bay_1  = false,
         Open_Sell_1 = false,
         Open_Bay_2  = false,
         Open_Sell_2 = false;

  // Критерии открытия позиций
    RefreshRates();                                             
    BID = MarketInfo( SYMBOL,9);
    ASK = MarketInfo( SYMBOL,10);
    if ( BID > iHigh ( SYMBOL,PERIOD_D1,1))
      {
       if (iMACD( SYMBOL,15,12,26,9,0,0,0)>iMACD( SYMBOL,15,12,26,9,0,0,iHighest( SYMBOL,15,MODE_HIGH,96,1))) Open_Bay_1 = true;
       if (iMACD( SYMBOL,15,12,26,9,0,0,0)<iMACD( SYMBOL,15,12,26,9,0,0,iHighest( SYMBOL,15,MODE_HIGH,96,1))) Open_Sell_2 = true;
      }
    if ( BID < iLow ( SYMBOL,PERIOD_D1,1))
      {
       if (iMACD( SYMBOL,15,12,26,9,0,0,0)<iMACD( SYMBOL,15,12,26,9,0,0,iHighest( SYMBOL,15,MODE_HIGH,96,1))) Open_Sell_1 = true;
       if (iMACD( SYMBOL,15,12,26,9,0,0,0)>iMACD( SYMBOL,15,12,26,9,0,0,iHighest( SYMBOL,15,MODE_HIGH,96,1))) Open_Bay_2 = true;
      } 
        
  // Открытие позиций 1
      if ( Open_Bay_1 == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                           
        {      
         SL = iLow( SYMBOL,PERIOD_D1,0);
         TP = ASK + TakeProfit*Point;
         Ticket=OrderSend( SYMBOL,OP_BUY, Lot, ASK,20, SL, TP);         
         LastTradeTime=TimeDay(TimeCurrent()); // задаем время сделки, чтобы сегодня больше не торговать 
        }
     if ( Open_Sell_1 == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                             
        {      
         SL = iHigh ( SYMBOL,PERIOD_D1,0);
         TP = BID - TakeProfit*Point;
         Ticket = OrderSend( SYMBOL,OP_SELL, Lot, BID,20, SL, TP);         
         LastTradeTime=TimeDay(TimeCurrent());  // задаем время сделки, чтобы сегодня больше не торговать
        }
        
  // Открытие позиций 2
      if ( Open_Bay_2 == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                           
        {      
         SL = BID - TakeProfit/2*Point; 
         TP = ASK + TakeProfit*Point;
         Ticket=OrderSend( SYMBOL,OP_BUY, Lot, ASK,20, SL, TP);         
         LastTradeTime=TimeDay(TimeCurrent()); 
        }
     if ( Open_Sell_2 == true && OrdersTotal()==0 && TimeDay(TimeCurrent())!= LastTradeTime)                                             
        {      
         SL = BID + TakeProfit/2*Point;                                            
         TP = BID - TakeProfit*Point;
         Ticket = OrderSend( SYMBOL,OP_SELL, Lot, BID,20, SL, TP);         
         LastTradeTime=TimeDay(TimeCurrent());   
        } 
   // Закрытие позиций
     for(int i=0; i<=OrdersTotal(); i++)   
      {  
       if (OrderSelect( i, SELECT_BY_POS)==true)  
         {                                        
          if (OrderSymbol() != SYMBOL) continue;
          if (OrderType()==0)
            {
             if (OrderProfit()>0 && TimeDay(TimeCurrent())!= LastTradeTime)
             Ans = OrderClose(OrderTicket(),OrderLots(), ASK,20);
            }
          if (OrderType()==1)
            {
            if (OrderProfit()>0 && TimeDay(TimeCurrent())!= LastTradeTime)
            Ans = OrderClose(OrderTicket(),OrderLots(), BID,20);
            }
         } 
      }        
   return;       
  }

Si le take profit n'est pas atteint dans la journée, mais qu'il y a du profit sur la position, nous fermons la position.

Ceci du 01.01.2009 à aujourd'hui.

À propos, la définition de la divergence est simple et même ridicule, mais elle fonctionne en quelque sorte. Quelqu'un a-t-il une idée d'une meilleure définition ?

 
le principe de la panne a été essayé par moi il y a environ un an dans de nombreuses variations différentes... je peux dire avec confiance qu'il n'est pas viable... quant au manque d'indicateurs, je peux aussi dire que de toute façon, le prix est déjà un indicateur... tous les autres en sont des dérivés... avec différents degrés de moyennage... délais, etc... Je propose d'écrire un système multi-devises sur un principe simple et efficace ... entrée lorsque 2 indicateurs sont trop élevés ... stochastique et Vp ... et en même temps sur plusieurs timeframes ( par exemple m1 et 5 et m15 ou 30)