[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 - 2. - page 135

 

Je ne comprends pas la question) Je considère le changement moyen

 
eddy:

Je ne comprends pas la question) je compte les changements moyens

Dans ce cas, le comptage de toutes les barres est obligatoire, indépendamment des changements survenant sur les barres individuelles.

Laissez-le jusqu'à demain. C'est mieux le matin...

 

S'il n'y a pas de changement dans la barre, il n'y a rien à compter, je compte la moyenne des changements existants).

 
eddy:

Je me demande simplement pourquoi une barre qui n'a jamais été échangée, c'est-à-dire si elle doit être incluse dans une série numérique.

ainsi que les mois où je n'ai pas négocié, dans le calcul des profits.

La différence est que si nous considérons toutes les barres indépendamment des changements qui s'y produisent, l'essentiel du calcul du point de vue du codage se résume à une simple addition dans une boucle et à une division par le nombre d'itérations de la boucle (très simple, simple et rapide), alors que si nous prenons en compte les barres qui n'ont pas changé, nous devons ajouter dans la boucle la vérification de l'absence de changements et une variable supplémentaire stockant le nombre de barres où ces changements se sont produits. En bref - pour les pionniers qui aiment les difficultés (pour ceux qui se tiennent dans un hamac pour améliorer la situation démographique...)
 
KabrGvin:


et comment tu t'es sorti de cette situation ?
 
eddy:

zéro est l'absence de changement, et non un changement égal à zéro.

Je considère la moyenne des changements existants, c'est-à-dire les changements qui sont

Il n'y a personne à bannir et rien à faire, je vais juste suivre l'opinion des mathématiciens. Le zéro est le même changement, et la même mesure, ainsi que d'autres. L'isoler, c'est du volontarisme.
 
granit77:
Comme il n'y a personne à bannir et rien à faire, je me contenterai de suivre le point de vue des mathématiciens. Le zéro est le même changement, et la même mesure, ainsi que d'autres. L'isoler, c'est du volontarisme.
Cela dépend vraiment de la tâche, il n'y a rien à redire. Si l'objectif est de calculer "la moyenne des cinq derniers changements positifs ", il ne faut évidemment pas prendre de zéros. Si "la moyenne des cinq dernières variations non négatives ", vous devez prendre zéro. C'est tout.
 
Je me demande pourquoi le testeur n'optimise pas le robot.
 
todem:
Je me demande pourquoi le testeur n'optimise pas le bot
.
La réponse se trouve dans le journal du testeur de stratégie
 
if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;
   }

comment pensez-vous qu'il y a des erreurs dans ce code ? comme le méta-éditeur montre - 0 (non), mais quand vous mettez des parenthèses après la ligne if (Hour()>=StartH && Hour()<=FinishH) { } - comme ceci :

if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)  {
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;}
   }
il n'ouvre pas les transactions et ne fonctionne pas ! quelqu'un sait-il quelle pourrait être la raison ?