Les régularités des mouvements de prix : 2ème partie. Série de barres - page 19

 
Aleksander:



Mishek... et vous êtes un homme bâtard... Je ne poste plus ici... Je suis personnellement dégoûté de chier sur le même terrain qu'un tel homme...

C'est ça le problème, tu viens ici pour chier.
 


Mince alors, je pensais que rien ne me surprendrait après l'occupation de Niroba et l'invasion de Loker, mais il y a quand même des cas cliniques surprenants. Cependant, la pathologie de la martingale et du catcher est apparemment proche de celle des ruineurs de casino.

 
kosolap:
Procréer par bourgeonnement ?
 
Aleksander:

Eh bien... Le jeu est bon... mais les vaisseaux ne sont pas correctement (sous-optimalement) disposés... bien que... dans 2-3 jeux... ça n'aura pas d'importance...

En 2 ou 3 fois, oui, c'est ça. Il y a en fait un cinq-étages. Sans entraînement, le premier n'arrivera pas à la fin.
 

Ce n'est pas très sportif...

 
HideYourRichess:

Ce n'est pas très sportif...


C'est très sportif, on profite de son temps pour chier dans un maximum de fils avant d'être banni.
 
alsu:
En deux ou trois fois, oui. Il y a en fait un cinq-étages. Sans entraînement, le premier n'arrivera pas à la fin.

Je ne sais pas... un ami et moi avons vu une fois un film sur la chasse :-) Les spécialités... et on a bu un verre de tous les toasts qu'il y avait dedans. .... - rien... six bouteilles pour deux... et voici quelques navires :-)

phew phew phew... la vodka ne me donne jamais mal à la tête :-) mais je ne bois pratiquement pas (seulement de la chaleur) et je n'ai aucun respect pour le vino... mais la vodka... facile

 
Eh bien, je me trompe probablement, mais répondre sérieusement à ces crises de colère enfantines est un peu, je ne sais pas, drôle pour moi...
 

Dans la continuité du thème de la série de bars ...

Il existe des modèles de mouvements de prix que beaucoup de gens connaissent, mais que peu savent utiliser correctement. L'un de ces modèles est la règle suivante :
Le prix recule jusqu'au milieu du bar dans la plupart des cas.
.

Cela se passe comme suit (dans l'un des pires cas) :

Un pullback se produit sur l'une des barres suivantes. Dans ce cas, il s'agit de la deuxième barre.

J'ai décidé de calculer les statistiques en pourcentage pour cette règle et j'ai découvert qu'elle fonctionne plus de 99 % du temps. Cependant, cela ne signifie pas
il est très facile de gagner de l'argent avec cette règle.

J'ai écrit un script pour calculer les statistiques :

// Скрипт для подсчёта вероятности отработки 50% HL бара на последующих барах //
// Skript 50 pro otkat, июнь 2012
#property  copyright "Copyright © Svinotavr-2000"
#property  link      "DmitriyN"
#property show_inputs                      // Показываем окно параметров 
extern string NameFileSave="Rezultat.txt"; // Имя файла для записи данных 
extern double Glubina=100;                 // Глубина исследования, бар 

int start()
 { 
   // Декларация переменных
   double DliPer;           // Длительность периода исследования, лет
   double CenaCentra;       // Цена центра бара - 50%
   int    Massiv[1000];     // Массив результатов
   double KolCikl;          // Количество циклов расчёта
   double progr;            // Переменная прогресс-индикатора (доля единицы)
   
   // Вычисляем длительность периода истории исследования (календарная)
   DliPer = Bars*Period()/(1440*365);
   // Формируем строки шапки для печати в файл
   string S0 = "\n" + "================= Результаты расчётов ================="+ "\n";  
   string S1 = "Исследовано бар = " + DoubleToStr(Bars,0)+ " шт";
   string S2 = "Длительность периода исследования = " + DoubleToStr(DliPer,1)+ " лет";
   string S3 = "Период исследуемого графика = " + Period() + " мин." + "\n";
   // Выводим строки в файл - шапка    
   SaveLineInFile(S0); 
   SaveLineInFile(S1); 
   SaveLineInFile(S2); 
   SaveLineInFile(S3);
   // Цикл по всем барам начиная с n и заканчивая предпоследним минус глубина
   Comment("Ждите, идёт расчёт");             // На мелких ТФ скрипт подвисает
   for(int j = Bars; j > Glubina+1; j--)
     { 
        KolCikl=KolCikl+1;
        // Цикл по глубине  
        for (int NomerBara=1; NomerBara < Glubina+1; NomerBara++)
        {             
               // Считаем среднюю цену начального бара
               CenaCentra=(High[j]-Low[j])/2+Low[j];
               // Проверяем дошла ли цена текущего бара (J+NomerBara) до середины бара (J)                                        
               if (CenaCentra >= Low[j-NomerBara])  { // 1-е условие
               if (CenaCentra <= High[j-NomerBara]) { // 2-е условие
               Massiv[NomerBara]=Massiv[NomerBara]+1;
               // Досрочно выходим из цикла, если нашли бар
               continue;     
               }}
        }                                   
        // Прогресс-индикатор ======================================
        progr=(KolCikl/Bars)*1000 - MathFloor((KolCikl/Bars)*1000);
        if (progr>0.9999)                     // Частые комменты тормозят расчёты, _
        {                                     // _ поэтому ограничим число изменений
        Comment("Ждите, идёт расчёт, выполнено: ", (KolCikl/Bars)*100 , " %");
        } //========================================================            
     }
     // Печать массива в файл
     string S5 = "Номер бара" +"\t"+ "Количество бар" +"\t" + "Процент бар";
     SaveLineInFile(S5); 
     for(int ii = 1; ii < Glubina+1; ii++)
     {
     string S6 = ii +"\t"+ Massiv[ii]+ "\t"+ DoubleToStr(Massiv[ii]/KolCikl*100,3); 
     SaveLineInFile(S6); // Печать строки
     }
   // Сообющение о завершении работы скрипта
   Comment("Работа скрипта полностью завершена, результаты находятся в файле /experts/files/", NameFileSave);         
   }
 
  
// Процедура записи строки в файл - строки дописываются в конец файла                                             
void SaveLineInFile(string text)
{
int file_handle=FileOpen(NameFileSave, FILE_READ|FILE_WRITE, " ");
   if (file_handle>0)
   {
   FileSeek(file_handle, 0, SEEK_END);  
   FileWrite(file_handle, text);        // Записываем в файл строку
   FileClose(file_handle);              // Закрываем файл
   }
}
Toute critique de la partie calcul du scénario est la bienvenue.
 

Suivant ...
Ce script parcourt l'historique et calcule le nombre de pullbacks qui ont eu lieu et les pourcentages à classer.
Ça ressemble à ça :

C'est une partie du dossier. La profondeur est définie dans les données initiales du script.
Dans ce cas, nous pouvons voir que 73.3% des kickbacks se produisent sur la 1ère barre après la barre initiale, 51.8% des kickbacks sur la 2ème barre, 42.5% sur la 3ème barre et ainsi de suite...

À partir de ces données, nous pouvons calculer, par exemple, à l'aide d'Excel, quelle est la probabilité que le prix revienne à la barre centrale sur les dix premières barres après la première barre :

Dans ce cas, nous avons transféré les données dans Excel, calculé dans la colonne E la probabilité d'un pullback sur chaque barre, puis calculé dans la colonne F la probabilité que cet événement ne se produise pas, et enfin multiplié ces probabilités dans la colonne G et obtenu la probabilité qu'un pullback ne se produise pas dans 10 barres.

Comme résultat, nous avons obtenu que statistiquement, la probabilité du retour en arrière sur les barres 1 à 10 est de 100-0,7=99,3%.

Bien entendu, cette règle ne peut pas être appliquée au trading dans sa forme pure puisque les pertes sur les barres inachevées seront suffisantes pour couvrir tous les profits, malgré la très forte probabilité que la position soit dans le plus.