[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 469

 
chief2000 >>:

Идея простая - каждый раз когда выполняется условие

время для High[i+2] сохраняется в переменную Time_Extreme_Sell.

Затем, в каждом(!) подобном случае, на расстоянии до 10 свечек после свечки со временем Time_Extreme_Sell необходимо нарисовать вертикальные линии.

Но я вижу что эти линии рисуются только в самом конце, для Time[0] и только если от Time[0] до Time_Extreme_Sell меньше 10 свечек.





Vérifier les conditions pas un débutant )))) mais paresseux =)) pas à pas !


les conditions ne sont pas remplies !


 
costy_ >>:

Проверяй условия не новичек же ))) но ленивый =)) поэтапно проверяй!


условия не выполняются!



Сидит чукча, рыбачит. Подплывает американская подводная лодка выходит капитан и спрашивает:
- Heloo! Куда поплыл русский подлодка?
Чукча указал куда-то вбок.
- Nort-West! - Скомандовал капитан и подлодка уплыла.
Тут же выныривает русская подлодка из неё выходит капитан:
- Куда американская подлодка поплыла?
Чукча:
- Норт вест.
- Не умничай, пальцем покажи!

:)

 
costy_ писал(а) >>

Je suppose que ça ne marche pas sur le M1.

Tout va bien ici. Dans la fenêtre elle-même, le défilement dans le temps sur n'importe quelle période se fait en fonction de ce paramètre. Je ne l'ai pas dans le testeur. Je l'ai vérifié visuellement et par programme, par exemple, en testant n'importe quel conseiller expert avec visualisation sur n'importe quelle période - il n'y a pas de retour en arrière (en fait, il y en a un, mais d'un petit nombre de barres).

La question demeure -

Le testeur ne voit pas l'historique ? Que dois-je faire ?

Mon testeur ne voit pas l'historique téléchargé, le graphique lui-même montre tout depuis de nombreuses années (toutes les options sont remplies). Si je regarde, par exemple, 1000 barres en arrière dans le testeur (lorsque je commence à tester un conseiller expert), il est vide. Le terminal est Alpari Demo.

Je connais un moyen pervers de le faire : mettre la date du test beaucoup plus tôt et commencer le test à partir de la date requise dans le conseiller expert. Qu'est-ce que je fais de mal ?

 
sak120 писал(а) >>

Tout va bien ici. Dans la fenêtre elle-même, le défilement dans le temps sur n'importe quelle période se fait en fonction de ce paramètre. Je ne l'ai pas dans le testeur. Je l'ai vérifié visuellement et par programme, par exemple, en testant n'importe quel conseiller expert avec visualisation sur n'importe quelle période - il n'y a pas de retour en arrière (en fait, il y en a un, mais d'un petit nombre de barres).

La question demeure -

Le testeur ne voit pas l'historique ? Que dois-je faire ?

Mon testeur ne voit pas l'historique téléchargé, le graphique lui-même montre tout depuis de nombreuses années (toutes les options sont remplies). Si je regarde, par exemple, 1000 barres en arrière dans le testeur (lorsque je commence à tester un conseiller expert), il est vide. Le terminal est Alpari Demo.

Je connais un moyen pervers de le faire : mettre la date du test beaucoup plus tôt et commencer le test à partir de la date requise dans le conseiller expert. Qu'est-ce que je fais de mal ?

L'historique limité de 1000 barres est disponible dans le testeur.

 
Vinin писал(а) >>

Un historique limité à 1000 barres est disponible dans le testeur

>>Merci beaucoup.

 
Messieurs les programmeurs ! !! Expliquez-moi, si je ne sais pas, pourquoi le corps de l'opérateur else est exécuté, si (condition) est vrai ? Je me suis déjà creusé les méninges...
if (PRICEASK==OrderOpenPrice())                   // Если цена PRICEASK равна цене открытия выбранного ордера...
   {KRYTASK=false;}                               // ...значит, ордер уже выставлен. Критерий для открытия - ЛОЖЬ.
   else
   {KRYTASK=true;}                                // ...значит, ордер еще не выставлен. Критерий для открытия - ИСТИНА.
A propos de la virgule flottante. J'ai décidé de vérifier ces prix. J'ai ajouté la fonction Print() pour les vérifier. Puis j'ai ajouté ce code dans la fonction :
Print (NormalizeDouble(PRICEASK,Digits))
Et puis j'ai aussi ajouté le code suivant :
string value=DoubleToStr(PRICEASK,Digits);string value1=DoubleToStr(OrderOpenPrice(),Digits);
Print ( value," ",  value1);
.
J'ai donc essayé et tordu tout ça pour comprendre et trouver où se trouve l'erreur. Dans tous les cas, les prix restent égaux entre eux. Mais malgré cela, {KRYTASK=true} fonctionne toujours.
Une telle pagaille... Merci d'avance !
 
Messieurs, j'ai une question :

Dans le testeur, il y a un truc comme ça :
nMAValue = iMA (Symbol (), PERIOD_H1, 100, 0, MODE_SMA, PRICE_MEDIAN, 0); 
Print ("MA value: ", DoubleToStr (nMAValue, 4));

Le journal indique "0.0000".

Mais dans le terminal, en temps réel, il donne des valeurs correctes.

Comment faire face à cette situation ?
 
iliaalyoshin писал(а) >>
Messieurs les programmeurs ! !! Expliquez-moi, si je ne sais pas, pourquoi le corps de l'opérateur else est exécuté, si if (condition) est vrai ? Je me suis déjà creusé les méninges... À propos de la virgule flottante. J'ai décidé de vérifier ces prix. J'ai ajouté la fonction Print() pour les vérifier. Puis j'ai ajouté ce code à la fonction :
Et puis j'ai aussi ajouté ce code : Donc, j'ai tordu et tordu de différentes manières pour comprendre et voir où était l'erreur. Dans tous les cas, les prix restent égaux entre eux. Mais malgré cela, on exécute tout de même {KRYTASK=true}.
Un tel désordre... Merci d'avance !


Les prix ne sont pas égaux entre eux. Vous pouvez utiliser différentes astuces pour comparer les chiffres réels (pour l'égalité). Mais vous ne pouvez pas le faire directement.

 
Vinin >>:


Цены не равны друг другу. Для сравнения действительных числе (на равенство) можно использовать разные приемы. Но напрямую нельзя.


Des techniques différentes ? Par exemple ?
 
iliaalyoshin писал(а) >>


Des astuces différentes ? Par exemple ?


https://www.mql5.com/ru/articles/1561