Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 1045

 
Igemon:
Quel est le problème ? Je n'ai pas inséré le reste du code car tout est correct ici. La boucle est nécessaire pour ne pas dépendre des ticks, lors de la définition des événements, pour ne pas redémarrer le PC est en sommeil à 100mlsec.

OnTimer() et OnChartEvent() ne vous disent rien ?, bien... désolé, Ygemon...

Et comment allez-vous arrêter la boucle ?

 
artmedia70:


Comment allez-vous arrêter le cycle ?

Pourquoi l'arrêter ? Sur l'ordinateur, maintenez le bouton pendant 4 secondes et ça s'arrête...
 
AlexeyVik:
Pourquoi l'arrêter ? Sur un ordinateur, vous maintenez le bouton pendant 4 secondes et ça s'arrête...
Vous pouvez aussi verser de l'eau dessus...
 
Bonjour, pourriez-vous me dire quelle fonction peut renvoyer un chiffre spécifique après la virgule pour les nombres fractionnaires, par exemple le prix est 1.54321, j'ai besoin que la fonction renvoie le dernier chiffre, ou toute autre virgule ?
 
Rogoza:
Bonjour, Pourriez-vous me dire quelle fonction peut retourner un chiffre particulier après la virgule pour un nombre fractionnaire, par exemple le prix est 1.54321, j'ai besoin que la fonction retourne le dernier chiffre, ou tout autre virgule ?

1. Vous pouvez traduire en une chaîne de caractères, prendre un numéro de caractère par position et le retraduire en un numéro.

2. Multipliez par 10 à la puissance requise, éliminez la partie fractionnaire et obtenez le reste de la division par 10.

int result = int(1.54321 * 100000) % 10;
 
artmedia70:

Est-ce que OnTimer() et OnChartEvent() vous disent quelque chose ?

Et comment allez-vous arrêter la boucle ?

Je ne connais pas ces fonctions... Je vais me documenter.

Le cycle est fait pour que l'Expert Advisor ne dépende pas des ticks. Il n'est pas nécessaire de l'arrêter. Si je veux arrêter le robot, il suffit de l'éteindre.

 

Bon après-midi.

Comment déterminer le nombre d'éléments dans un tableau de séries chronologiques, par exemple dans iClose.

La fonction iBars renvoie la valeur 2048, c'est-à-dire qu'il ne s'agit pas du nombre total de barres de l'instrument pour la période donnée, mais des barres qui tiennent dans la fenêtre du graphique...

Merci.

 
AlexeyVik:

1. Vous pouvez traduire en une chaîne de caractères, prendre un numéro de caractère par position et le retraduire en un numéro.

2. Multipliez par 10 à la puissance requise, éliminez la partie fractionnaire et obtenez le reste de la division par 10.

Merci beaucoup !
 

Bonjour à tous. J'optimise un EA en utilisant le testeur de stratégie intégré dans MT4 avec la fonction "algorithme génétique". 1280 passages en 36 heures. J'ai cherché sur Internet et je suis tombé sur un article qui décrit comment sauvegarder toutes les passes calculées pendant l'optimisation à l'arrêt normal dans un fichier cache. Mais je m'inquiétais du fait qu'après avoir repris l'optimisation, à en juger par la barre d'état, l'optimisation ne se poursuit pas à partir de l'exécution où l'optimisation a été arrêtée comme décrit dans l'article. Au total, j'ai exécuté les 30 heures et le fichier cache augmente de taille, mais chaque fois que je lance l'optimisation, je vois les mêmes 36-40 heures et l'état de passage 1/1280.

En même temps, il y a un record dans les registres.

2016.05.16 11:55:47.103 Tester: cache file "C:\Users\*****\AppData\Roaming\MetaQuotes\Terminal\1FC724C8C211BFE8ECF8B599A855301E\tester\caches\Ilan Dynamic New.EURUSD15.0" found and can be used for further optimization

De temps en temps, l'entrée suivante apparaît également dans les journaux, ce qui signifie qu'une correspondance a été trouvée dans le cache, ce qui sera pris en compte dans les résultats. Mais ces cas sont très rares, malgré le fait que dans un cache, toutes les passes possibles devraient déjà être écrites.

2016.05.17 09:21:18.547 Optimization cacher: pass 11450 skipped due test limit 'maximal drawdown %=50' reached with inputs: risk=0.55; MaxTrades=15; LotExponent=1.55; LockLotExponent=1.6; 

Question : Comment faire pour que l'optimisation continue à partir du dernier arrêt (passage) après un arrêt et un redémarrage de routine ? Bien entendu, je n'ai pas modifié les paramètres d'optimisation ni la période d'essai de quelque manière que ce soit. J'ai appuyé sur "Stop" ; le cache a été écrasé ; j'ai fermé le terminal ; j'ai éteint l'ordinateur ; je l'ai redémarré ; j'ai démarré le terminal ; j'ai lancé les derniers paramètres d'optimisation (qui sont automatiquement sauvegardés) en utilisant le bouton "Start".

Citation de l'article :

При генетической оптимизации промежуточные результаты сохраняются в кэше после расчета каждого поколения (файл папка_данных_платформы/tester/cache/*.gen). Таким образом, процесс генетической оптимизации можно прерывать в любой момент. Даже если процесс генетической оптимизации будет прерван из-за внешних причин (например, отключения электричества), оптимизация будет автоматически продолжена с последнего рассчитанного поколения при последующем запуске. Кэш генетической оптимизации хранится до изменения настроек оптимизации или до завершения процесса оптимизации.

Lorsque l'optimisation est arrêtée normalement (avec le bouton "Stop"), toutes les passes calculées précédemment sont sauvegardées. Lorsque l'optimisation reprend, le processus reprend là où il a été arrêté.

Source : https://www.metatrader5.com/ru/terminal/help/strategy_optimization

 

comment déplacerFileMove() du dossier Alpari Limited MT4\tester\files vers Alpari Limited MT4\MQL4\Files\ ? ?????????? est-ce possible du tout ????????

ou comment lire le fichier de Alpari Limited MT4\tester\files ? ????????? - ça ne marche pas parce qu'il veut manger du Alpari Limited MT4\MQL4\Files.