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
J'ai compris que j'ai utilisé la nouvelle description - les anciennes
ne sont pas dans la description, mais sont tout de même mis en évidence par l'éditeurLors de l'utilisation de cette fonction il y a une erreur "2012.11.28 09:58:32 4194304 bytes not available", aide à comprendre, augmenté le fichier swap à 10GBt.
Yedelkin:
А лог-файл случайно алёртами не забивается?
Je l'ai vérifié, le journal est de 10 kBt, il y en a eu plus,
Erreur "MemoryException 09:36:12 4194304 bytes not available", elle se répète souvent.
Remarqué (par le code précédent) :
// Sélection de la période dans le tableau par indice (de PERIOD_M5 (indice - 5) à PERIOD_D1 (indice - 19)).
Si moins de périodes (par exemple PERIOD_M5 à PERIOD_M6) sont prises pour l'énumération, aucune erreur ne se produira.
// Sélection d'une période dans un tableau par indice (de PERIOD_M5 (indice - 5) à PERIOD_D1 (indice - 19)).
1. De quel type de tableau s'agit-il ?
2. Quelle valeur est contenue dans ce tableau sous l'indice - par exemple 19 ?
1. De quel type de tableau s'agit-il ?
2. Quelle valeur est contenue dans ce tableau par l'indice, par exemple 19 ?
Je pense que c'est plus facile à faire, j'ai écrit la fonction comme un expert séparé, vous pouvez l'exécuter et voir par vous-même.
Si vous avez le temps et le désir d'aider. (L'erreur est la même).
Code en double :
Le fichier est joint. Paramètres du testeur (juste au cas où)
EURUSD.e
H1
OHLC
2012.1.1 - 2012.4.1
Mettant à jour une question, je suis intéressé par deux erreurs :
1. 2012.11.28 11:45:18 4194304 octets non disponibles
Je ne peux pas encore les résoudre, mais si au lieu d'énumérer les périodes m_period = PERIOD_INDEX[iperiod], on met par exemplePERIOD_H1, il n'y aura pas d'erreur,
mais j'ai besoin de toutes les périodes.
2. 2012.11.28 11:45:49 2012.01.01 00:00:00 Alerte : Erreur CopyBuffer - numéro d'erreur : 4806
pour résoudre cette erreur, je vais décommenterSleep(1000) ; elle disparaîtra et les données du tampon seront copiées normalement.
question : pourquoi ? est-il possible de se passer deSleep(1000), pour éviter une perte de temps supplémentaire ?
Malheureusement, je n'ai pas de testeur sous la main.
Un peu d'anecdote. Sur le côté gauche de la ligne, vous avez
il y a une variable de type int à gauche et une valeur de type ENUM_TIMEFRAMES à droite. Pourquoi ne pas déclarer 'ENUM_TIMEFRAMES m_period;'à la cinquième ligne?
2. vous avez une triple boucle imbriquée où un seul et même indicateur est appelé dans un temps assez court. Seulement pour un symbole, environ 1400 appels se produisent. Les indicateurs utilisés n'ont tout simplement pas le temps de libérer la mémoire. Recherchez les fils de discussion du forum sur la fonction IndicatorRelease(). On a dit un jour que l'utilisation de cette fonction dans le code est déjà une erreur.
Un changement rapide d'indicateurs dans le code explique également l'apparition de l'erreur 4806. Le nouvel indicateur n'a tout simplement pas le temps de charger les données nécessaires.
Pouvez-vous me dire comment me débarrasser de la terminaison anormale?
L'EA cesse de fonctionner et cela ne peut être vu que dans le journal, il est vert sur le graphique.
J'ai modifié le code en tenant compte de vos commentaires :
(corrigé m_period = PERIOD_INDEX[iperiod] ;, l'erreur n'est pas significative dans ce cas - mais merci, je l'ai corrigée)
problème avec l'erreur (Error CopyBuffer - numéro d'erreur : 4806) - supprimé, je l'ai soigné par Sleep(1000) ; - je l'ai mis sur le compte du manque de temps pour créer l'indicateur.
Le problème de l'erreur (4194304 octets non disponibles) demeure.
La remarque sur IndicatorRelease() - prise en compte dans le traitement.
Si quelqu'un a des idées, merci de les partager.