Raffinement spectrométrique - page 6

 
Blondi_ >>:


Нет ну человека понять можно... Вот у Вас например в жизни крали идеи? :)

Ils volent tout le monde, moi, lui et vous aussi, si c'est arrivé sur Internet tout le monde pense que ce n'est plus à vous, et il n'y a aucune garantie que quelqu'un n'écrira pas votre nom sur votre création, mais j'ai vu beaucoup d'EA sous le nom d'autres personnes, vous regardez le code ha et il y a votre création))). - donc je suis d'accord avec ça.

 
qwerewq писал(а) >>

Ils volent tout le monde, moi et lui et vous aussi, si ça a été mis sur Internet tout le monde pense que ce n'est plus à vous, et il n'y a aucune garantie que quelqu'un n'écrira pas votre nom sur votre création, mais j'ai vu beaucoup de leurs conseillers sous le nom d'autres personnes, vous regardez le code ha et voilà votre création))). - donc je suis d'accord avec ça.

Question philosophique, cependant, abordée :)

 

Le bord gauche est rigidement lié à l'extremum, et l'indicateur entier "s'étire" avec l'arrivée de nouvelles barres et le changement d'amplitude des harmoniques. Ainsi, lorsque l'amplitude de la seconde harmonique atteint son maximum, dans son virage vers la tendance principale, nous devons rechercher le point d'entrée. Mais le problème est que les corrections n'ont pas toujours la "bonne" structure.

Pour ajouter un indicateur au graphique, installez d'abord une ligne verticale, copiez la date de liaison depuis ses propriétés, puis appliquez l'indicateur et collez cette date dans les paramètres.

Dossiers :
spectrometr.mq4  14 kb
 
qwerewq писал(а) >>

Ils volent tout le monde, moi, lui et vous aussi, si c'est arrivé sur Internet tout le monde pense que ce n'est plus à vous, et il n'y a aucune garantie que quelqu'un n'écrira pas votre nom sur votre création, mais j'ai vu beaucoup d'EA sous le nom d'autres personnes, vous regardez le code ha et il y a votre création))). - donc je suis d'accord avec ça.

Je m'en fous aussi.

 
Integer писал(а) >>

Je m'en fous aussi.

Nous devrions résoudre ça "à l'amiable" de toute façon. Ça laisse un "résidu désagréable"... dans TOUS les cas ... (au moins sur le forum)

 

Vous le mettez sur Internet, vous le rendez public. Anonymisé. // mot effrayant)))

C'est une question de but : soit vous envisagez d'acheter de la bière pour le prix Nobel (alors oui - la paternité !!!), soit pour autre chose. Sur le commerce, par exemple.))

(Je ne signe même pas les miens de cette façon - ceux qui en ont besoin le comprendront - sapienti-mutual-sat, et ceux qui ne le comprennent pas - eh bien, tant pis).

 

La physique, cependant ))))

 
Bonjour à tous ! Je suis arrivé à .... (Soupirs) Trafic :) Très bien, tout le monde ! Nous avons découvert que voler n'est pas bien, nous avons découvert que M. Integer ne sera pas offensé, mais moi, par exemple, je n'étais pas satisfait de )))). Il me semble que Indyk devrait être modifié pour sélectionner automatiquement les paramètres. Le meilleur résultat est obtenu avec deux extrema... Qu'en pensez-vous ?
 
MVV >>:

Там левый край имеет жесткую привязку к экстремуму, при этом весь индикатор "растягивается" с приходом новых баров и меняются амплитуды гармоник. Вот когда амплитуда второй гармоники станет максимальной, на её перегибе в сторону основного тренда и надо искать точки входа. Но вся беда в том, что коррекции не всегда имеют "правильную" структуру.

Для добавления индикатора к графику сначала установите вертикальную линию, из её свойств скопируйте дату привязки, а затем накладывайте индикатор и в настройках вставьте эту дату.


J'ai regardé, mais encore une fois, vous devez le déplacer avec vos mains et vous voulez une machine :))))
 

Aidez-moi à refaire une simple EA, je me bats depuis une semaine !!!!. Ou bien écrivez-le à nouveau, tous les EA sont trop compliqués et je ne peux pas le modifier pour moi !

Je veux ajouter à cet EA un indicateur MACD, qui envoie ses signaux d'achat et de vente et l'EA doit faire les deux en même temps. Il ne doit pas y avoir plus de trois ordres d'achat et trois ordres de vente ouverts. Tous les ordres doivent être fermés uniquement par le stoploss et le takeprofit, et non par la force du conseiller expert.

//--------------------------------------------------------------------
extern int     period_EMA           = 28,
               period_WMA           = 8 ,
               stoploss             = 50,
               takeprofit           = 50,
               risk                 = 10;
double  LOT;
//--------------------------------------------------------------------
double SL, TP;
int TimeBar; //глобальная переменная
//--------------------------------------------------------------------
int start()
{
   if ( TimeBar==Time[0]) return(0);
   if ( TimeBar==0) { TimeBar=Time[0];return(0);}//первый запуск программы
   double EMA0 = iMA(NULL,0, period_EMA,0,MODE_EMA, PRICE_OPEN,0);
   double WMA0 = iMA(NULL,0, period_WMA,0,MODE_LWMA,PRICE_OPEN,0);
   double EMA1 = iMA(NULL,0, period_EMA,0,MODE_EMA, PRICE_OPEN,1);
   double WMA1 = iMA(NULL,0, period_WMA,0,MODE_LWMA,PRICE_OPEN,1);
   if ( EMA0< WMA0&& EMA1> WMA1) //Buy
   {
      TimeBar=Time[0];                            
      TP  = Ask + takeprofit*Point;
      SL  = Ask - stoploss*Point;     
      LOT = LOT( risk,1);
      CLOSEORDER("Sell");
      OPENORDER ("Buy");
   }
   if ( EMA0> WMA0&& EMA1< WMA1) //Sell
   {
      TimeBar=Time[0];                            
      TP = Bid - takeprofit*Point;
      SL = Bid + stoploss*Point;            
      LOT = LOT( risk,1);
      CLOSEORDER("Buy");
      OPENORDER ("Sell");
   }
return(0);
}
//--------------------------------------------------------------------
void CLOSEORDER(string ord)
{
   for (int i=OrdersTotal()-1; i>=0; i--)
   {                                               
      if (OrderSelect( i, SELECT_BY_POS, MODE_TRADES)==true)
      {
         if (OrderSymbol()!=Symbol()) continue;
         if (OrderType()==OP_BUY && ord=="Buy")
            OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE);// Close Buy
         if (OrderType()==OP_SELL && ord=="Sell")
            OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE);// Close Sell
      }   
   }
}
//--------------------------------------------------------------------
void OPENORDER(string ord)
{
   int error;
   if ( ord=="Buy" ) error=OrderSend(Symbol(),OP_BUY, LOT,Ask,2, SL, TP,"", 1,3);
   if ( ord=="Sell") error=OrderSend(Symbol(),OP_SELL, LOT,Bid,2, SL, TP,"",-1,3);
   if ( error==-1) //неудачная покупка OK
   {  
      ShowERROR( error,0,0);
   }
return;
}                  
//--------------------------------------------------------------------
void ShowERROR(int Ticket,double SL,double TP)
{
   int err=GetLastError();
   switch ( err )
   {                  
      case 1:                                                                               return;
      case 2:   Alert("Нет связи с торговым сервером   "              , Ticket," ",Symbol());return;
      case 3:   Alert("Error  неправильные параметры   Ticket ",       Ticket," ",Symbol());return;
      case 130: Alert("Error близкие стопы   Ticket ",                 Ticket," ",Symbol());return;
      case 134: Alert("Недостаточно денег   ",                         Ticket," ",Symbol());return;
      case 146: Alert("Error Подсистема торговли занята ",             Ticket," ",Symbol());return;
      case 129: Alert("Error Неправильная цена ",                      Ticket," ",Symbol());return;
      case 131: Alert("Error Неправильный объем ",                     Ticket," ",Symbol());return;
      case 4051:Alert("Error Недопустимое значение параметра функции ", Ticket," ",Symbol());return;
      case 4105:Alert("Error Ни один ордер не выбран ",                Ticket," ",Symbol());return;
      case 4063:Alert("Error Ожидается параметр типа integer ",        Ticket," ",Symbol());return;
      case 4200:Alert("Error Объект уже существует ",                  Ticket," ",Symbol());return;
      default:  Alert("Error  " , err,"   Ticket ",                     Ticket," ",Symbol());return;
   }
}
//--------------------------------------------------------------------
double LOT(int risk,int ord)
{
   double MINLOT = MarketInfo(Symbol(),MODE_MINLOT);
   LOT = AccountFreeMargin()* risk/100/MarketInfo(Symbol(),MODE_MARGINREQUIRED)/ ord;
   if ( LOT>MarketInfo(Symbol(),MODE_MAXLOT)) LOT = MarketInfo(Symbol(),MODE_MAXLOT);
   if ( LOT< MINLOT) LOT = MINLOT;
   if ( MINLOT<0.1) LOT = NormalizeDouble( LOT,2); else LOT = NormalizeDouble( LOT,1);
   return( LOT);
}
//--------------------------------------------------------------------