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

 
MosheDayan:

Mes amis, j'ai besoin de conseils... s'il vous plaît.

Je trace une ligne entre la dernière barre et le niveau "blanc" que je souhaite. Le niveau "blanc" est placé du début d'une session de trading(00:01) à sa clôture (23:59). Comment puis-je forcer cette ligne à ne pas tracer directement vers le bas, mais vers la fin du jour (23:59), c'est-à-dire vers la fin de la ligne "blanche" ? Y a-t-il un moyen de réparerBuffer1[1]... ou je suis en train de jouer avec les tampons pour rien...

Merci.


Pour DRAW_LINE, vous avez besoin de valeurs de prix sur chaque barre. Utilisez un autre type de dessin au trait - vous trouverez celui qui vous convient, je pense. Il suffit de placer le curseur sur DRAW_LINE et d'appuyer sur F1.

 
buyanov:


message avant le début du segment

"somma echrested"

qu'est-ce que cela signifie ?

que faire ?


Cela pourrait être le problème.

 Alert(Delta,Digits()));
 
buyanov:


message avant le début du segment

"somma echrested"

qu'est-ce que cela signifie ?

que faire ?


Cela pourrait être le problème.

 Alert(Delta,Digits()));
 
buyanov:


C'est peut-être ça le problème.


Non, malheureusement. Je me suis trompé dans le fragment de texte. Ça devrait être comme ça.

//---------------------------------------------------------------------------------------------------------------------------

void OnTick()

{

//*********************************

Alert("beg OnTick") ;

FastMA=NormalizeDouble(iMA(NULL,0,Period_FastMA,0,MODE_SMA,PRICE_CLOSE,1),Digits());//Period_FastMA=4

SlowMA=NormalizeDouble(iMA(NULL,0,Period_SlowMA,0,MODE_SMA,PRICE_CLOSE,1),Digits());//Period_SlowMA=8

GetNext(NextTick) ;

Alert(NextTick) ;

Alert("NextTick=",NextTick) ;

Delta=NormaliserDouble(FastMA-SlowMA,Digits()) ;

Alert(Delta,Digits()) ;

Alert("FastMA=",DoubleToStr(FastMA)),Digits(), "SlowMA=",DoubleToStr(SlowMA,Digits()), "Delta=",DoubleToStr(Delta,Digits()) ;


//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


//-----------------------------------------------------------------------------------------------------------------------

Alert("end OnTick()") ;

}


 
buyanov:

Non, je suis désolé. J'ai mal orthographié une partie du texte. Ça devrait être comme ça.




Corrigez l'erreur sur cette ligne.

Alert("FastMA=",DoubleToStr(FastMA)),Digits(),"SlowMA=",DoubleToStr(SlowMA,Digits()),"Delta=",DoubleToStr(Delta,Digits());

Utilisez le bouton SRC pour insérer le code

 
STARIJ:
Le message contient les numéros de ligne et les positions où le compilateur pense qu'une virgule doit être placée. Très probablement la ligne ci-dessus

plus simple - le support n'est pas fermé... :-)

 

Le terminal dispose d'une fonction de clic droit appelée "Rafraîchir". Il met à jour les données sur le graphique.

Comment puis-je effectuer une action similaire à partir de l'EA ?

 
Dmitriy Voevodkin:

Le terminal dispose d'une fonction de clic droit appelée "Rafraîchir". Il met à jour les données sur le graphique.

Comment effectuer une action similaire à partir d'une EA ?


ChartRedraw() essayer. Mais il ne s'agit pas d'une analogie complète.

 
Dmitriy Voevodkin:

Le terminal dispose d'une fonction de clic droit appelée "Rafraîchir". Il met à jour les données sur le graphique.

Comment pouvez-vous effectuer une action similaire à partir de l'EA ?

Que voulez-vous mettre à jour à partir de l'EA ?

 
Dmitriy Voevodkin:

Le terminal dispose d'une fonction de clic droit appelée "Rafraîchir". Il met à jour les données sur le graphique.

Comment puis-je effectuer une action similaire à partir d'une EA ?

L'analogue le plus proche est ChartRedraw - il redessine le graphique.

Mais qu'est-ce qui se passe d'autre quand "Refresh", c'est inconnu. Certainement les RefreshRates et la fenêtre de données est plutôt rafraîchie et WatchList aussi. C'est-à-dire qu'il y a manifestement de nombreuses actions.

Raison: