[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 - 2. - page 230

 
doon:

Quelle pourrait être la cause de l'erreur (prix erroné) ?


Quelque part dans le code, la variable n'est pas initialisée correctement. Ou option 2 - vous avez oublié de normaliser le prix(NormalizeDouble())
 
drknn:

Quelque part dans le code, la variable est initialisée de manière incorrecte. Ou option 2 - vous avez oublié de normaliser le prix (NormalizeDouble())

Je doute que ce soit le cas, car cela ne se produit pas toujours, rarement et pas systématiquement. Il est dû à un certain facteur de prix, mais lequel ?

 
doon:

Je doute que ce soit le cas, car cela ne se produit pas toujours, rarement et pas systématiquement. Cela arrive à cause d'un certain facteur de prix, mais lequel ?


Alors quel est le problème ? Dès que le numéro d'erreur tel ou tel se produit, imprimez (" MaValeur = ",MaValeur) ;) et vous verrez immédiatement ce qu'il représente.
 

Quelle est la valeur de MaValeur ?

 
doon:

Quelle est la valeur de MaValeur ?


Comment puis-je savoir à quoi correspond votre variable ? :) Laissez l'imprimante vous montrer ses égalités.
 
doon:

Quelle est la valeur de MaValeur ?


Quelqu'un peut-il m'aider ? Indicateur MACD ZeroLag. Je dois faire en sorte que l'arrière-plan au-dessus de la ligne 0.00 soit d'une couleur et en dessous d'une autre. Voici le code

//+------------------------------------------------------------------+
//| ZeroLag MACD.mq4 | |
//| RD |
//| marynarz15@wp.pl |
//+------------------------------------------------------------------+
#property copyright "RD"
#lien de propriété "marynarz15@wp.pl"
//----

#propriété indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 blue
#property indicator_color2 Red
//---- paramètres d'entrée
extern int FastEMA = 12 ;
extern int SlowEMA = 24 ;
extern int SignalEMA = 9 ;
//---- tampons
double MACDBuffer[] ;
double SignalBuffer[] ;
double FastEMABuffer[] ;
double SlowEMABuffer[] ;
double SignalEMABuffer[] ;
//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int init()
{

//---- indicateurs
IndicatorBuffers(5) ;
SetIndexBuffer(0, MACDBuffer) ;
SetIndexBuffer(1, SignalBuffer) ;
SetIndexBuffer(2, FastEMABuffer) ;
SetIndexBuffer(3, SlowEMABuffer) ;
SetIndexBuffer(4, SignalEMABuffer) ;
SetIndexStyle(0, DRAW_HISTOGRAM) ;
SetIndexStyle(1, DRAW_LINE,EMPTY) ;
SetIndexDrawBegin(0, SlowEMA) ;
SetIndexDrawBegin(1, SlowEMA) ;
IndicatorShortName("ZeroLag MACD(" + FastEMA + "," + SlowEMA + "," + SignalEMA + ")") ;
SetIndexLabel(0, "MACD") ;
SetIndexLabel(1, "Signal") ;
//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| Fonction de désinitialisation de l'indicateur de dépôt |
//+------------------------------------------------------------------+
int deinit()
{
//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| Fonction d'itération de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int start()
{
int limite ;
int counted_bars = IndicatorCounted() ;
si(barres comptées < 0)
retour(-1) ;
if(counted_bars > 0)
barres comptées.. ;
limite = Barres - barres comptées ;
double EMA, ZeroLagEMAp, ZeroLagEMAq ;
for(int i = 0 ; i < limite ; i++)
{
FastEMABuffer[i] = iMA(NULL, 0, FastEMA, 0, MODE_EMA, PRICE_CLOSE, i) ;
SlowEMABuffer[i] = iMA(NULL, 0, SlowEMA, 0, MODE_EMA, PRICE_CLOSE, i) ;
}
for(i = 0 ; i < limite ; i++)
{
EMA = iMAOnArray(FastEMABuffer, Bars, FastEMA, 0, MODE_EMA, i) ;
ZeroLagEMAp = FastEMABuffer[i] + FastEMABuffer[i] - EMA ;
EMA = iMAOnArray(SlowEMABuffer, Bars, SlowEMA, 0, MODE_EMA, i) ;
ZeroLagEMAq = SlowEMABuffer[i] + SlowEMABuffer[i] - EMA ;
MACDBuffer[i] = ZeroLagEMAp - ZeroLagEMAq ;
}
for(i = 0 ; i < limite ; i++)
SignalEMABuffer[i] = iMAOnArray(MACDBuffer, Bars, SignalEMA, 0, MODE_EMA, i) ;
for(i = 0 ; i < limite ; i++)
{
EMA = iMAOnArray(SignalEMABuffer, Bars, SignalEMA, 0, MODE_EMA, i) ;
SignalBuffer[i] = SignalEMABuffer[i] + SignalEMABuffer[i] - EMA ;
}
retour(0) ;
}
//+------------------------------------------------------------------+

 

Le compilateur affiche : 'MyValue' - variable non définie.

 
doon:

Le compilateur affiche : 'MyValue' - variable non définie.

Vous devez utiliser une ancienne version du terminal.

Dans la version 388, cette variable devrait déjà être compilée normalement. Veuillez mettre à jour votre version du terminal.

 
sergeev:

vous devez utiliser une ancienne version du terminal.

Dans la version 388, cette variable devrait déjà être compilée normalement. Mettez à jour votre version du terminal.


Comment cela peut-il être fait ?

 
doon:

Comment cela peut-il être fait ?

Vous devez écrire une lettre officielle à votre société de courtage, en indiquant les détails de votre passeport et les numéros de compte sur lesquels vous travaillez pour cette société de courtage.

Dans les trois jours ouvrables, vous devriez recevoir par courrier recommandé un disque contenant le fichier d'installation de la mise à jour et les instructions d'installation.