[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 228
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
Quel est le meilleur endroit pour déclarer un type de variable (int, double, etc.) en termes de réduction de la consommation de ressources lors de l'exécution du programme. Par exemple, int i peut être déclaré globalement ou dans int start() ... for (int i=OrdersTotal()-1 ; i>=0 ; i--) ... J'ai l'impression que déclarer à chaque tick est plus coûteux que de déclarer une fois au niveau global, juste après les paramètres externes. Ou la différence en termes d'intensité de ressources est-elle la même ?
Toutes les variables (emplacements mémoire) sont créées une fois au début du programme et doivent ensuite être initialisées à l'endroit où elles apparaissent dans le texte(déclaration de variable), mais cela ne se produit pas toujours, donc si vous voulez que cela fonctionne correctement, n'oubliez pas de les initialiser explicitement lors de la déclaration.
J'ai corrigé le code pour qu'il corresponde au vôtre.
Lors du test, quatre ordres se sont fermés par ordre de mise en place sur le premier tick, le cinquième s'est fermé sur le tick suivant. Il y a probablement quelque chose d'autre qui ne va pas ici, comme je l'ai testé à plusieurs reprises.
Je colle le code du programme et les journaux du testeur.
Sincèrement. Shurkin
C'est clair. Remplacer
à .
La situation est la suivante :
J'ai montré un morceau de code où il y a un malentendu. Toutes les variables sont déclarées globales. Dans la fonctionIsObjectFound(), je récupère les valeurs du premier et du deuxième point de prix de l'objet, le nom et la valeur du prix de l'objet sur la barre actuelle. Si l'objet est trouvé, il doit quitter la fonction en mode vrai, sinon en modefaux .
Au départ, j'ai prescrit une condition selon laquelle si l'objet n'est pas trouvé, je quitte la fonction :
Je l'ai lancé dans le testeur, je n'ai dessiné aucun objet, il n'y a rien - un graphique nu. Néanmoins, la fonction ne se termine pas et n'est pas imprimée en conséquence :
La fonction de démarrage se poursuit. De quoi s'agit-il ?
Lesvariables globales sont des recherches globales. Que pouvez-vous dire de l'algorithme sans voir le modèle de données ?
Je retracerais exactement les données. Et isObj vraiment booléen, et tout ça ...
Les variables globales sont des recherches globales. Que pouvez-vous dire de l'algorithme sans voir le modèle de données ?
Je retracerais exactement les données. Et isObj vraiment booléen, et tout ça ...
isObj est un int. Renvoie la fenêtre dans laquelle se trouve l'objet, s'il y en a une. S'il n'existe pas, je comprends qu'il renvoie -1. Selon la doc, la fenêtre principale commence à 0 et ensuite les sous-fenêtres... Jusqu'à présent, il s'agit de l'ébauche d'un conseiller expert en trading, purement signalétique. Mais il diffuse des messages quand il le souhaite.