[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 42

 
TarasBY:

Il manque une variable dans l'appel de l'indicateur - le tampon ! !!


Ça marche. Merci encore.
 

Question pour les connaisseurs.

Il y a un code sur le graphique réel, les commentaires sont corrects. Dans le testeur de stratégie, toutes les valeurs sont égales à 2147483647.

Qu'est-ce qui ne va pas ici ?

Ou devrions-nous ajouterEMPTY_VALUE à la vérification ?

Et doit-on toujours normaliser les données obtenues des indicateurs pour les comparer entre eux en 5 chiffres ?

double adxLastBuy,adxLastSell,adxLast;

for (int i=0; i<Bars; i++)
{
   adxLastBuy=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,0,i); if (adxLastBuy>0) break;
   
}
for (int j=0; j<Bars; j++)
{
   
   adxLastSell=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,1,j); if (adxLastSell>0) break;
}

for (int k=0; k<Bars; k++)
{
   adxLast=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,0,k); if (adxLast>0) break;
   adxLast=iCustom(NULL,0,"Adx_crossing",ADXbars,CountBars,1,k); if (adxLast>0) break;
}



 Comment("Цена последнего ADX Покупки: ", adxLastBuy, " Цена последнего ADX продажи: ", adxLastSell, " Последний сигнал ", adxLast );
 
Twilight:

Question pour les connaisseurs.

Il y a un code sur le graphique réel, les commentaires sont corrects. Dans le testeur de stratégie, toutes les valeurs sont égales à 2147483647.

Qu'est-ce qui ne va pas ici ?

Ou devrions-nous ajouter EMPTY_VALUE à la vérification ?

Et doit-on toujours normaliser les données obtenues des indicateurs pour les comparer entre eux en 5 chiffres ?

Il est obligatoire lorsque vous utilisez iCustom. Comme :
if(signal!=0 && signal!=EMPTY_VALUE){
   BuySignal=true;
}
 
mmm ...il y a aussi un problème ...le bip sonne parfois comme s'il était réglé dans le code News.wav et plus souvent il sonne Alert.wav

#property copyright "Copyright © 2012"
#property link      "Не ссать  против ветра "
 
 extern bool       Будильник      = true ;
 extern string SoundFile      =  "News.wav";
 
int start ()                                  
{
 double  a=iCustom(NULL,0,"HMA_Russian_Color",5,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0); 
 double  b=iCustom(NULL,0,"HMA_Russian_Color",8,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0); 
 
if (Будильник ==true)
{

  {
 if ( a > b ) 
       
 {  
  Alert("BUY
  PlaySound(SoundFile);
  Sleep(100000);
  }
 }
}


return(0);}
 
odiseif:
mmm ...il y a aussi un problème ...le bip sonne parfois comme s'il était réglé dans le code News.wav et plus souvent il sonne Alert.wav

Pourriez-vous me dire où se trouve l'erreur ?
 

S'il vous plaît, aidez-moi, dites-moi comment implémenter le code EA en deux ou trois lignes :

Lorsqu'un signal arrive (par exemple le croisement de deux MAs)

1. l'Expert Advisor détermine le temps du signal (en heures, minutes), le stocke ;

2. compte à rebours d'une minute.

Ensuite, la volonté de faire quelque chose (par exemple, ouvrir une commande).
 
Twilight:

Question pour les connaisseurs.

Il y a un code sur le graphique réel, les commentaires sont corrects. Dans le testeur de stratégie, toutes les valeurs sont égales à 2147483647.

Qu'est-ce qui ne va pas ici ?

Ou devrions-nous ajouter EMPTY_VALUE à la vérification ?

Et doit-on toujours normaliser les données obtenues des indicateurs pour les comparer entre eux en 5 chiffres ?

Le tampon indicateur a un concept de "valeur vide". Il est égal (par défaut) à EMPTY_VALUE, mais il peut être modifié à l'aide de la fonction SetIndexEmptyValue(). Il s'agit de la valeur que le tampon ne dessine pas dans le graphique (s'il le fait). C'est la valeur manquante qui doit être vérifiée, si nécessaire.
 
odiseif:
Mm ... il y a aussi un problème ... le bip sonne parfois comme le code News.wav et le plus souvent il sonne Alert.wav

Il y a des bêtises écrites ici :

 double  a=iCustom(NULL,0,"HMA_Russian_Color",5,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0); 
 double  b=iCustom(NULL,0,"HMA_Russian_Color",8,MODE_LWMA,PRICE_MEDIAN,"Uptrend[]",0);

Lisez à propos de iCustom().

 
Andrey-F:

S'il vous plaît, aidez-moi, dites-moi comment implémenter le code EA en deux ou trois lignes :

Lorsqu'un signal arrive (par exemple le croisement de deux MAs)

1. l'Expert Advisor détermine le temps du signal (en heures, minutes), le stocke ;

2. compte à rebours d'une minute.

Ensuite, il faut être prêt à effectuer une action (par exemple, ouvrir une commande).

Dans une variable globale, vous écrivez la valeur du temps au moment de la réception du signal :

    if (Signal) gdt_TimeSignal = TimeCurrent();

puis comptez vos minutes (vous pouvez le faire) :

    if (gdt_TimeSignal != 0) if (iBarShift (NULL, 1, gdt_TimeSignal) == 1)
    {
        //---- Открываете ордер
        OrderSend ();
        gdt_TimeSignal = 0;
    }

C'est une solution pour suivre le temps après qu'un événement s'est produit.

 
TarasBY:

Dans une variable globale, écrivez la valeur du temps au moment du signal :

puis comptez vos minutes (vous pouvez le faire) :

Il s'agit d'une solution pour suivre le temps après qu'un événement s'est produit.



Alternativement, vous pouvez définir n'importe quel moment après l'arrivée du signal
if (Signal) gdt_TimeSignal = TimeCurrent();
//
//
//
if (TimeCurrent()-gdt_TimeSignal >=60)
     {
     //
     }
Raison: