Calcul du lot par Vince - page 5

 
MaxZ:
Soit je me suis encore trompé, soit les résultats de l'exécution de l'EA dans le testeur pour la première et la deuxième fois sont identiques. Le seul "mais" : la deuxième fois, le conseiller expert calcule toujours le paramètre optimal f...


C'est exact - ce paramètre est utilisé pour calculer le volume du lot dans l'enchère suivante. La méthode est la moyenne géométrique. Voir la page 31 du livre. 31 du livre et l'exécuter dans n'importe quel tableau et essayer de le calculer.

Je suis moi-même maintenant vos conseils depuis la première page et je décompose le produit jusqu'aux racines, afin d'éviter de trop remplir.

 

Alors pourquoi refaire le test ? Si nous pouvons trouver le trade le moins rentable dans la fonction deinit(), également le nombre de trades, au lieu d'entrer ces paramètres manuellement ? C'est-à-dire calculer le f optimal après le premier test.

Ou le testeur ne permet pas de le faire ?

 
MaxZ:

Alors pourquoi refaire le test ? Si nous pouvons trouver le trade le moins rentable dans la fonction deinit(), également le nombre de trades, au lieu d'entrer ces paramètres manuellement ? C'est-à-dire calculer le f optimal après le premier essai.

Ou le testeur ne vous permet-il pas de le faire ?


Théoriquement, c'est possible, mais ... Elle peut être mise en œuvre de différentes manières. Mais ce serait un pur ajustement. Vous devez calculer sans connaître l'avenir
 
Vinin:

Théoriquement, c'est possible, mais ... Il existe différentes façons de la mettre en œuvre. Mais ce serait un pur ajustement. Nous avons besoin d'un calcul sans connaître l'avenir.


Le point est que c'est R.Vince - voir les postes de remorque au-dessus de pp. 31-32. Il n'y a aucun moyen de contourner ce problème - il suffit de prendre un échantillon représentatif pour chaque cas et c'est tout, puis de trouver une valeur arrondie de la perte maximale vers le haut, pas même arrondie, mais augmentée d'un facteur de 1,5 et c'est tout... Tout va bien ici. Deals - également moins de 500 et c'est tout... Je peux déjà calculer le f optimal avec les tolérances nécessaires à droite/gauche.

La question est différente : comment éviter le dépassement de la variable TWR ?


 
Roman.:


Le fait est que c'est R. Vince - voir les messages de la bande-annonce au-dessus de pp. 31-32. Il n'y a aucun moyen de contourner ce problème - il suffit de prendre un échantillon représentatif pour chaque cas, puis de danser à partir de là, et d'arrondir les valeurs de la perte maximale, pas même d'arrondir, mais de l'augmenter de 1,5 fois et c'est tout... Tout est normal ici.

La question est différente : comment éviter la surreprésentation de la variable TWR ?



Limiter la profondeur des calculs
 
Vinin:

Limiter la profondeur des calculs

Comment ?
 
Roman.:

Comment ça ?

Je veux simplement dire le nombre de transactions analysées. Réel ou virtuel.
 

Quelque chose a commencé à émerger - comme les valeurs absolues des variables ne sont pas importantes, mais seulement leur comparaison sur plus, moins à une certaine valeur de f, j'aiajouté la racine du troisième degré de TWRsur la recommandation de MaxZ : la première page, dans ce bloc - cela fonctionne bien, sans débordement:

for (f = 0.01; f<=1.0; f=f+0.01)//цикл перебора переменной f для поиска оптимального ее значения,при котором TWR-максимально
     {  
          
          for ( orderIndex = 1;orderIndex<Qnt; orderIndex++) //при заданной f проходим по всем закрытым ордерам
            {                                                // и считаем относительный конечный капитал (TWR)
             TWR = MathPow(TWR*(1+f*(-Mas_Outcome_of_transactions[orderIndex]/(D))),0.33); // TWR - это произведение всех HPR                    
            }
          if (TWR>TWR_Rez) {
              TWR_Rez = TWR;
              G=MathPow (TWR_Rez, 0.001988); // 1/503 сделки по данной торговой системе, как в книжке: в степени 1/N 
              Print(" TWR = ",TWR_Rez," G = ",G, " при f = ", f);} // если текущий TWR > результирующего, 
              else break;    // то результирующий делаем равным текущему, иначе переходим на след итерацию цикла по f                                  
      }      
             
   Print("Закрытых позиций = ", Qnt, " Нетто Профит/лосс = ", SUMM, " У последней ",Qnt, " закрытой позы профит/лосс = ", 
        Mas_Outcome_of_transactions[Qnt]);     
  

Dans le journal :

 
Vinin:

Je ne parle que du nombre de transactions analysées. Réel ou virtuel


J'effectue tous les calculs dans le testeur en utilisant les prix d'ouverture, les transactions de 2002 à ce jour 2011 - 503, les transactions à perte maximale = -628.

Les résultats sont ci-dessus. Je suis en train de tester d'autres variantes de conseillers experts.

Voici le texte de l'approche de la résolution de ce problème à partir du code source - p. 31.

Nous avons vu que le meilleur système de trading est celui dont la moyenne géométrique est la plus élevée. Pour calculer la moyenne géométrique, nous devons connaître f. Décrivons donc nos actions étape par étape.

1. Prenez l'historique des transactions dans le système de marché donné.

2. Trouvez la valeur optimale de f en examinant différentes valeurs de f entre 0 et 1. La valeur optimale de f correspond à la valeur la plus élevée de TWR.

3. Une fois que vous avez trouvé f, prenez la racine du degré N TWR (N est le nombre total de transactions). C'est votre moyenne géométrique pour ce système de marché. Vous pouvez maintenant utiliser la moyenne géométrique obtenue pour comparer ce système avec d'autres. La valeur f vous indiquera le nombre de contrats à négocier dans ce système de marché. Une fois que f est trouvé, il peut être converti en équivalent monétaire en divisant la plus grosse perte par l'optimum négatif/. Par exemple, si la perte la plus importante est égale à 100 $, et que le f optimal = 0,25, alors -100 $ / -0,25 = 400 $. En d'autres termes, vous devez miser 1 unité pour chaque compte de 400 $. Pour simplifier, vous pouvez tout calculer sur une base unitaire (par exemple, un jeton de 5 $ ou un contrat à terme, ou 100 actions). Le nombre de dollars à allouer à chaque unité peut être calculé en divisant votre plus grosse perte par le f optimal négatif. Lef optimal est le résultat de l'équilibre entre la rentabilité du système (sur la base de 1 unité) et son risque (sur la base de 1 unité). De nombreuses personnes pensent que la fraction fixe optimale est le pourcentage du compte qui est alloué à

.

 
Roman.:

Quelque chose a commencé à émerger - comme les valeurs absolues des variables ne sont pas importantes, mais seulement leur comparaison sur plus, moins à une certaine valeur de f, j'aiajouté la racine du troisième degré de TWRsur la recommandation de MaxZ : la première page, dans ce bloc - cela fonctionne bien, sans débordement:

Dans le journal :

Ce n'est pas exactement le genre de recommandation que je faisais. C'est plutôt votre approche. L'important, c'est qu'il s'agisse aussi de la bonne.