[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 472

 
StatBars >>:

Вы не моглы бы весь скрипт выложить? Я имею ввиду вместе с объявлениями переменных массивов и т.д.

Voici le script, vérifié qu'il fonctionne, il se lit bien à la fois dans la barre latérale et dans la double barre.

 
Dans l'ensemble, je suis un bon gâchis, qu'est-ce que je peux dire !
Le spécialiste m'a immédiatement dit de regarder les tableaux, et non les conversions de type...

StatBars, Vinin, tous ceux qui ont répondu, merci beaucoup.

Le problème était que mes tableaux étaient dynamiques. Et il y a une certaine spécificité de la conversion de type là.
ajusté à des tableaux de longueur déterministe, et la conversion de type avec StrToDouble a fonctionné comme une horloge.

Merci beaucoup encore.
Travailler avec des fichiers est une chose utile
. J'essaie de comprendre maintenant.
 
Bicus >>:
Джентльмены, вопрос такой:

В тестере вот такая штука:

в журнале выдает "0.0000".

А в терминале в реал-тайме выдает правильные значения.

Как с этим бороться?

А ?

 
Bicus писал(а) >>

А ?


>> sortez le code, et donnez-moi tous les détails.
 
Techno >>:

выкладывай код, и все подробней

double nMAValue;

... парам-парам ...

nMAValue = iMA (Symbol (), PERIOD_H1, 100, 0, MODE_SMA, PRICE_MEDIAN, 0); 
Print ("MA value: ", DoubleToStr (nMAValue, 4));

... парам-парам ...
 
Bicus писал(а) >>

Cela fonctionne pour moi correctement, la valeur dans le testeur est correcte. voici le code si quelque chose, vous avez probablement une erreur dans le reste du code quelque part
Dossiers :
001.mq4  1 kb
 

Vinin, Bicus.
Merci pour la mise à jour sur le .csv.
J'ai été un peu... ...mélangés.)

 
Chers Messieurs, j'ai rencontré un problème avec la fonction OrderSend, à savoir que ma commande ne s'ouvre pas.
Par exemple, si j'attache cet EA à un graphique -
extern double StopLoss = 30 ;
extern double TakeProfit = 30 ;
extern double lot = 0.1 ;
double SL,TP ;
string Symb ;
int start()
{
Symb=Symbol() ;
SL =Bid - (StopLoss*Point) ;
TP =Bid + (TakeProfit*Point) ;
OrderSend(Symb,OP_BUY,lot,Ask,3,SL,TP) ;
if(OrdersTotal()>0) Alert("Buy order opened") ;
if(OrdersTotal()==0) Alert("Buy order failed because.error #",GetLastError()) ;
Alert("Point = ",Point) ;
return ;
}
le terminal affichera l'erreur #130 (arrêts erronés) et la valeur du Point sera 0.
Je pense que c'est à cause de la valeur des points rendus (mais qui sait).
En général, qui sait "où le chien est enterré" aide.
Au fait, la valeur du point doit-elle être égale à 0 ou non ?
Dossiers :
 
159753 писал(а) >>
Chers Messieurs, j'ai rencontré un problème avec la fonction OrderSend, à savoir que ma commande ne s'ouvre pas.
Par exemple, si j'attache cet EA à un graphique -
extern double StopLoss = 30 ;
extern double TakeProfit = 30 ;
double externe lot = 0.1 ;
double SL,TP ;
string Symb ;
int start()
{
Symb=Symbole() ;
SL =Bid - (StopLoss*Point) ;
TP =Offre + (TakeProfit*Point) ;
OrderSend(Symb,OP_BUY,lot,Ask,3,SL,TP) ;
si(OrdersTotal()>0) Alert("Ordre d'achat ouvert") ;
if(OrdersTotal()==0) Alert("L'ordre d'achat n'a pas pu être ouvert en raison de l'erreur #",GetLastError()) ;
Alert("Point = ",Point) ;
retour ;
}
alors le terminal affichera l'erreur #130 (arrêts erronés) et la valeur du point sera =0.
Je pense que c'est à cause de la valeur des points rendus (mais qui sait).
En général, qui sait "où le chien est enterré" aide.
Au fait, la valeur du point doit-elle être égale à 0 ou non ?


Tout fonctionne bien. Du moins pour moi
Dossiers :
 
159753 >>:
Уважаемые господа, я столкнулся с проблемой, связанной с функцией OrderSend, а именно у меня не открывается ордер.
К примеру, если присоединить этот советник к графику -
extern double StopLoss = 30;
extern double TakeProfit = 30;
extern double lot = 0.1;
double SL,TP;
string Symb;
int start()
{
Symb=Symbol();
SL =Bid - (StopLoss*Point);
TP =Bid + (TakeProfit*Point);
OrderSend(Symb,OP_BUY,lot,Ask,3,SL,TP);
if(OrdersTotal()>0) Alert("Ордер Buy открыт");
if(OrdersTotal()==0) Alert("Ордер Buy открыть не удалось т.к. возникла ошибка №",GetLastError());
Alert("Point = ",Point);
return;
}
то терминал выдаст ошибку № 130 (неправильные стопы), а значение Point будет = 0.
Я думаю, что всё из-за возвращаемого значения Point (хотя кто его знает).
В общем кто знает "где собака зарыта " помогите.
Кстати, значение Point должно = 0 или нет?

Le point ne peut pas être 0, vous avez probablement le 5ème chiffre, donc quand vous imprimez (Alert) vous obtenez 0 (print (Alert) sort jusqu'à 4 tsnacks, à moins que vous ne le convertissiez en une chaîne DoubleToStr...)
essayez TakeProfit et StopLoss multipliés par 10