[ATTENTION CLOSED] EA adaptatif UmnickTrader - page 26

 
VictorArt:

2. Je suis ici principalement par ennui et par intérêt sportif.

Est-ce pour la même raison, avez-vous pensé que quelqu'un a besoin de votre personne comme d'une personnalité brillante ou de votre algorithme d'ajustement primitif ?

3. vous voulez comprendre - vous devez utiliser votre cerveau, et non vous référer à l'"alphabétisation universelle".

Vous voulez encore jouer à la démagogie ?

Mathemat, veuillez demander la suppression du fil de discussion pour une autre déclaration aussi offensante.

 
paukas:
Je pense que le collègue inventeur est juste impoli.


Je suis d'accord à 158%. Le camarade "ne détient pas la réponse"... :-)))

Une branche boiteuse.
 
OK, je fais une motion pour supprimer la branche.
 

a fait des commentaires sur le code de base. Comme vous pouvez le voir, il utilise un simple flip après une perte comme fonction "marché".

Tout l'intérêt est dans le bloc surligné.

   double resultTransaction=AccountEquity()-equityPrev; equityPrev=AccountEquity(); 
   if(isOpenPosition) // если позиция была, то добавляем её результат в массив
   {
      isOpenPosition=false;
      if(resultTransaction>0 )  // если последняя сделка прибыльная
      {
         arrayProfit[currentIndex]=maxProfit-spred*3; //  задали значение будущего тейкпрофита
                                                      // в зависимости от ВОЗМОЖНОГО  достигнутого профита 
         arrayLoss[currentIndex]=StopBase+spred*7; // задали начальное значение размера стопа
      }
      else  // последняя сделка убыточная
      {
         arrayProfit[currentIndex]=StopBase-spred*3; //  задали значение требуемого тейкпрофита
         arrayLoss[currentIndex]=drawDown+spred*7; // задали значение будущего стопа
                                                   // в зависимости от ВОЗМОЖНОГО  убытка по истории
         currentBuySell=-currentBuySell; // изменяем направление сделок
      }
      if(currentIndex+1<8) currentIndex=currentIndex+1; else currentIndex=0; // увеличили счетчик сделок
   }
   // вычисляем лимиты и стопы
   sumProfit=0.; sumLoss=0.;
   for(i=0; i<8; i++)
   {
      sumProfit=sumProfit+arrayProfit[i]; // суммируем профиты
      sumLoss=sumLoss+arrayLoss[i]; // суммируем убытки
   }
   if(sumProfit>StopBase/2) limit=sumProfit/8; // ограничиваем размер профита, если суммарный больше 
   if(sumLoss>StopBase/2) stop=sumLoss/8; // ограничиваем размер стопа, если суммарный больше

   // открываем новую позицию
   if(currentBuySell == 1 ) action = "Buy"; else action = "Sell";
   ActionPosition(action, currentIdOrder, absAmount, limit, stop );

En d'autres termes, dans ce cas, nous ouvrirons des ordres aussi loin que possible dans une direction, en changeant constamment la taille du TP/SL (nous augmentons toujours le TP), en fonction des paramètres MaxProfit / DrawDown, jusqu'à ce que nous attrapions une perte (à une perte, nous augmentons le SL).

Les deux paramètres MaxProfit / DrawDown sont calculés(adaptés) au marché à partir du moment où le dernier ordre est ouvert jusqu'à sa fermeture, de sorte que les stops de l'ordre sont fixés au maximum des profits et pertes antérieurs possibles.
Dans la fonction :

void CalcDrawDown( string idSignal )

Dans le même temps, nous déplaçons le SL de 7 spreads et fermons le TP de 3 spreads (comme à coup sûr).


Bon sang. Qu'y a-t-il à discuter ici ?

D'après ce que j'ai compris, toutes les œuvres multiples (multiplications) sont des variations de chaînes différentes. Quand faire le saut, etc.

Vous pouvez adapter n'importe quoi au marché de cette façon.

 
sergeev:

a fait des commentaires sur le code de base. Comme vous pouvez le voir, il utilise un simple flip après une perte comme fonction "marché".

Tout l'intérêt est dans le bloc surligné.

En d'autres termes, dans ce cas, nous ouvrirons des ordres dans une seule direction, en réduisant constamment la taille du TP et en augmentant la taille du SL, jusqu'à ce que nous capturions une perte.


Victor, quelle est l'adaptabilité ici ?
 
LeoV:

Victor, quel est l'intérêt de l'adaptabilité ?
J'ai mis à jour mon post, j'ai écrit plus en détail.
 
sergeev: J'ai mis à jour mon post avec plus de détails

OK, alors est-ce que le fait d'adapter SL et TA compte comme de l'adaptabilité ?
 
LeoV:

OK, alors est-ce que le fait d'adapter SL et TA compte comme de l'adaptabilité ?
Il s'avère que c'est le cas. Le nouvel ordre s'ouvrira avec des arrêts plus "corrects".
 
Mathemat:

Victor, vous avez vous-même écrit que l'essence de l'OTT est de synchroniser la "fonction propre" avec la "fonction marché".

Qu'est-ce que une fonction de marché ?

Une fonction de marché est une séquence de prix, c'est-à-dire un graphique de prix.

Leonid a posé une question sur une sorte de "formule de marché", c'est-à-dire qu'il semble faire référence à une sorte de formule mathématique utilisée pour calculer quelque chose pour une raison quelconque. De toute façon, il n'y a pas de "formule de marché" - je n'utilise pas ce terme.

 
Mathemat:

Victor, vous avez vous-même écrit que l'essence de l'OTT est de synchroniser la "fonction propre" avec la "fonction marché".

Quelle est la fonction du marché ?

Et, au fait, dans quelle variable ou fonction est écrite votre "propre fonction" ?


J'ai déjà répondu ci-dessus. La fonction propriétaire utilisée dans l'EA adaptatif est la plus primitive - elle est écrite comme un algorithme (il y avait deux variantes de code), pas dans une variable ou un tableau ou autre.

Raison: