Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 831

 

Bonjour.


J'ai vu de nombreuses solutions pour envoyer des signaux à Telegram via un bot. Est-il possible de faire l'inverse ? Recevoir les signaux de Telegram pour les exécuter sur MT4 ? Veuillez m'envoyer le lien s'il existe quelque chose de similaire.

 
sahsa-777:
Et une question connexe - y a-t-il un moyen d'attacher le parabole à la nouvelle version, peut-être comme un filtre ?

S'il vous plaît, montrez-moi la nouvelle version du parabolique.

 
Le tirage au sort peut-il être réalisé en fonction ?
   prosadka=AccountProfit()*100/AccountBalance()*-1;
   if(prosadka>0) prosadka1=prosadka;
   else prosadka1=0;
 
Quelle est l'erreur n°1 lors de la modification d'une commande ? Dans l'aide, il est dit "pas d'erreur, mais le résultat n'est pas connu". Je ne comprends pas ce que je dois corriger
 
Alexandr Sokolov:
Quelle est l'erreur n°1 lors de la modification d'une commande ? L'aide indique "il n'y a pas d'erreur mais le résultat est inconnu". Je ne comprends pas ce que je dois corriger

cette erreur se produit si lors de la modification de la commande vous avez envoyé au serveur les mêmes valeurs que la commande, c'est-à-dire ТР new = ТР set et SL new = SL set.

N'oubliez pas que si vous comparez des valeurs réelles non normalisées sur l'égalité, vous risquez de ne pas obtenir le résultat escompté ;)

 
Igor Makanu:

cette erreur se produit si lors de la modification de l'ordre vous avez envoyé au serveur les mêmes valeurs que l'ordre, c'est-à-dire TRnova = TRsetted et SLnova = SLsetted

HH : n'oubliez pas que si vous comparez des valeurs réelles non normalisées pour l'égalité, vous n'obtiendrez peut-être pas le résultat escompté ;)

Et si ce n'est que l'un d'entre eux ? ou faut-il changer les deux en même temps ?

 
Alexandr Sokolov:

Et si ce n'est que l'un d'entre eux ? ou faut-il changer les deux en même temps ?

au moins un paramètre doit être modifié lors de la modification d'une commande, erreur n°1 - si rien ne doit être modifié après l'envoi d'une requête au serveur

Veuillez imprimer ce que vous avez envoyé au serveur et vous verrez tout de suite

 
Igor Makanu:

au moins un paramètre doit être modifié lors de la modification d'une commande, erreur n°1 - si rien ne doit être modifié après l'envoi d'une requête au serveur

désimprimez ce que vous envoyez au serveur, vous le verrez tout de suite.

Merci.

 

Bonjour les experts.

Il y a un problème, il y a un Indicateur(Enveloppes modifiées). Il est inséré dans le conseiller expert.

Je n'arrive pas à faire apparaître le rendu.

J'ai prescrit les valeurs de l'indicateur :

//************************************************************************************************/
#property indicator_chart_window
#property  indicator_buffers 4

#property  indicator_color1  Red
#property  indicator_color2  Blue
#property  indicator_color3  Red
#property  indicator_color4  Blue

#property  indicator_width1  2
#property  indicator_width2  2
#property  indicator_width3  1
#property  indicator_width4  1

#property  indicator_style1  0
#property  indicator_style2  0
#property  indicator_style3  1
#property  indicator_style4  1

double ExtSell_Buffer[];
double ExtBuy_Buffer[];
double ExtSell_2_Buffer[];
double ExtBuy_2_Buffer[];
//************************************************************************************************/

J'ai fait l'initialisation :

//************************************************************************************************/
int OnInit()
{
  //--- drawing settings-----------
   IndicatorBuffers(4);
   IndicatorDigits(Digits);
//--- 
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtSell_Buffer);
   SetIndexShift(0,Ma_Shift);
   SetIndexLabel(0,"Line_Sell");
//--- 
   SetIndexStyle(1,DRAW_LINE);
   SetIndexBuffer(1,ExtBuy_Buffer);
   SetIndexShift(1,Ma_Shift);
   SetIndexLabel(1,"Line_Buy");
   //------------------------------
//--- 
   SetIndexStyle(2,DRAW_LINE);
   SetIndexBuffer(2,ExtSell_2_Buffer);
   SetIndexShift(2,Ma_Shift);
   SetIndexLabel(2,"Line_Sell_2");
//--- 
   SetIndexStyle(3,DRAW_LINE);
   SetIndexBuffer(3,ExtBuy_2_Buffer);
   SetIndexShift(3,Ma_Shift);
   SetIndexLabel(3,"Line_Buy_2");
//------------------------------
   return(INIT_SUCCEEDED);
}
//************************************************************************************************/

Ensuite, j'essaie de remplir les tampons dans le code :

//************************************************************************************************/
void OnTick()
{
Paint ();
}

//************************************************************************************************/
void Paint()
{
//-----------------------------------------------
int limit; 
int counted_bars=IndicatorCounted(); 
//---- последний посчитанный бар будет пересчитан 
if(counted_bars>0) counted_bars--; 
limit=Bars-counted_bars; 
//---- основной цикл 
for(int i=0; i<limit; i++) 
   { 
      ExtSell_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation, 1, i); 
      ExtBuy_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation, 2, i);

      ExtSell_2_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation_2, 1, i); 
      ExtBuy_2_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation_2, 2, i);
   }
   return;
}
//-----------------------------------------------

La compilation se déroule sans erreur, mais au démarrage, il donne l'erreur "array out of range" et s'arrête (la passe de test s'est arrêtée à cause d'une erreur critique dans l'EA).

Aide pour réparer ...

p.s. L'indicateur séparé fonctionne sans erreur.

 
Alexander Layzerevich:

Bonjour les experts.

Il y a un problème, il y a un Indicateur (Enveloppes modifiées). Il est inséré dans le conseiller expert.

Je n'arrive pas à faire apparaître le dessin.

Les conseillers experts n'ont pas de tampons d'indicateurs et ne s'affichent pas dans le terminal.

lisez dans l'aide quelle est la différence entre les conseillers experts, les scripts et les indicateurs.

Raison: