Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
De toute façon, cela ne fonctionnera pas dans une seule boucle, puisque tous les indicateurs ont le même fil, que ce soit avec ou sans timer. Ou je ne comprends pas votre idée.
Pour télécharger et vérifier l'historique, comme sur MT5 : https://www.mql5.com/ru/docs/series/timeseries_access
Je répète la question, savez-vous comment obtenir cette date au moyen de l'ancienne mql4 ?
... Transférabilité des programmes de MT4 à MT5 et inversement.
De 4 à 5 - compréhensible. Dans l'autre sens, pas vraiment.
Disons qu'il existe un indicateur1. Il appelle l'indicateur2. L'indicateur2 manque de données sur certains symboles/TF. Il envoie ces données à l'indicateur1 et il a téléchargé les données requises dans le timer. Après avoir reçu la confirmation que toutes les données requises sont téléchargées, nous essayons à nouveau de télécharger les données de l'indicateur2 et dès que toutes les données requises sont disponibles, nous calculons l'indicateur1.
La mémoire est allouée 5 fois. Sous l'espace d'adressage des commandes pour la même chose.
Qu'est-ce que vous pleurez à propos de la libération agressive de la mémoire de l'espace d'adressage des données ? Au moins les extents y sont présents.
J'attends l'arbitrage depuis très longtemps. Troisième semaine (ils m'ont demandé d'attendre la deuxième semaine, d'accord).
Je sais. Temps [Barres-1].
Vous avez tort. J'ai déjà écrit ci-dessous que la construction que vous avez donnée donnera la première date non pas sur le serveur, mais sur le tableau.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Service Desk. Plaintes, suggestions.
Alexey Kozitsyn, 2015.10.30 16:42
En utilisant iTime( _Symbol, period, Bars( _Symbol, period )-1 ) nous pouvons obtenir l'heure de la première bougie disponible sur le graphique.
Mais pour obtenir l'heure de la première bougie sur le serveur, je n'ai pas décidé quelle construction utiliser.
Tout se fait simplement en utilisant SeriesInfoInteger : SeriesInfoInteger( _Symbol, period,SERIES_SERVER_FIRSTDATE);
La mémoire est allouée 5 fois. Sous l'espace d'adressage des commandes pour la même chose.
Qu'est-ce que vous pleurez à propos de la libération agressive de la mémoire de l'espace d'adressage des données ? Au moins, il y a des extensions.
D'une manière générale, il existe très probablement une solution normale au problème iCustom que j'ai mentionné.
Si MT5 a déjà chargé le handle de l'indicateur avec les paramètres spécifiés pour ce symbole/tf, alors, si je comprends bien, lorsque vous l'appelez depuis un autre endroit, le calcul du même indicateur n'est pas refait, mais le handle existant est utilisé.
Et puisque le premier "niveau d'imbrication" avant l'appel de iCustom, l'appel de OnTimer fonctionne, nous pouvons attendre un calcul séquentiel de tous les indicateurs, en commençant par les plus basiques, puis ceux qui les utilisent, et ainsi de suite jusqu'à n'importe quel niveau d'imbrication, en créant leurs poignées seulement lorsque tous les indicateurs et séries temporelles déjà utilisés dans celles-ci ont été calculés. Dans ce cas, la nécessité du bouton "Rafraîchir" disparaît probablement. J'aurais aimé le deviner il y a une semaine...
P.S. Lorsque vous utilisez OnTimer, notez que les tampons des indicateurs ne seront pas affichés sur le graphique et la fenêtre de données jusqu'à ce que le OnCalculate, appelé par le terminal, renvoie une valeur différente de 0. Et le terminal n'appelle OnCalculate qu'une seule fois, juste après Inite, lorsque les séries chronologiques et les indicateurs n'ont pas encore été calculés. Lorsque OnCalculate est appelé depuis Ontimer, quelle que soit la valeur qu'il renvoie, si le tout premier retour est 0, alors l'indicateur ne sera pas affiché sur le graphique jusqu'à ce que le prochain tick arrive ou que vous appuyiez sur "Refresh".
Le deuxième problème est d'un type similaire. L'indicateur est sur TF MN1. J'essaie de recevoir des données via la fonction SeriesInfoInteger() du TF M5. La fonction renvoie des valeurs correctes pendant un certain temps, puis cesse de le faire et commence à renvoyer des zéros.
O modérateurs tout-puissants, regardez le problème :)