値動きの規則性:その2。バーシリーズ - ページ 19

 
Aleksander:



ミシェイク...そして、あなたはろくでなし男...。もうここに書き込まないで...。個人的にはこんな奴と同じ土俵で糞するのさえ嫌なんだが...。

それが問題なんだよ、ここに来て駄々をこねてるんだから。
 


やばい! 男、ニローバの占領とローカーの侵攻で何も驚かなくなったと思っていたが、やはり驚くような臨床例があるんだな。しかし、マーチンゲールやキャッチャーの病態は、どうやらカジノ破滅論者のそれに近いようだ。

 
kosolap:
出芽による子孫繁栄?
 
Aleksander:

まあゲームは良いのですが・・・。が、船のレイアウトがきちんと(最適以下)されていない...。とはいえ...2-3試合では...ですが。かまいません

2-3回に分けて、ですね。実は5階建てがあるんです。練習しないと、最初の1枚が最後までいかない。
 

あまりスポーティーではないのですが.

 
HideYourRichess:

あまりスポーティーではないのですが.


BANされる前にできるだけ多くのスレッドでうんこするために時間を有効活用する、とてもスポーツ的なことだ。
 
alsu:
2~3回に分けて、ね。実は5階建てがあるんです。練習しないと、最初の1枚が最後までいかない。

どうだろう...友人と一緒に狩猟の映画を見たことがあります :-)特番は...で、その中にあった乾杯を全部一杯ずつ飲んだんです...。- 6本で2人分ですそして、ここにいくつかの船があります :-)

ふっふっふっふっふっふっふっふっふっふっふっふっふっふっふっふっふっウォッカは決して頭痛を起こさない :-) が、私はほとんど酒を飲まないし(暑さのせいだけ)、ヴィノには敬意を払わないが...ウォッカは...」と。造作もない

 
まあ、私が悪いんだろうけど、こういう子供じみた癇癪に真面目に対応するのは、なんだか、可笑しいというか
 

バーシリーズに引き続き...

多くの人が知っていても、正しい使い方を知っている人は少ない値動きのパターンがあります。そのようなパターンの1つに、次のようなルールがある。
価格は、ほとんどの場合、バーの真ん中に反動で移動します。

このようなことが起こります(最悪のケースの一つ)。

その後の1本のバーでプルバックが発生する。この場合、2本目の小節である。

このルールのパーセンテージ統計を計算してみると、99%以上の確率でうまくいくことがわかりました。しかし、だからといって
このルールで儲けるのはとても簡単なことです。

統計値を計算するスクリプトを書きました。

// Скрипт для подсчёта вероятности отработки 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);              // Закрываем файл
   }
}
スクリプトの計算部分に対する批評も歓迎します。
 

次のページ ...
このスクリプトは履歴を実行し、発生したプルバックの回数とファイルへのパーセンテージを計算します。
こんな感じです。

これはファイルの一部です。深さは、スクリプトの初期データに設定されています。
この場合、最初のバーから1本目のバーでキックバックが73.3%、2本目のバーでキックバックが51.8%、3本目のバーで42.5%...と発生することが分かります。

このデータから、例えば、最初のバーから10本目のバーで、価格が真ん中のバーまで引き戻される確率はどのくらいか、エクセルで計算することができます。

この場合、データをエクセルに移し、E列で各バーでプルバックが発生する確率を計算し、F列でこの事象が発生しない確率を計算し、G列でこれらの確率を掛け合わせて、10バーでプルバックが発生しない確率を求めたことになります。

その結果、統計的に1〜10のバーでロールバックする確率は100-0,7=99,3%であることがわかりました。

もちろん、ポジションがプラスになる確率が非常に高いにもかかわらず、未完成のバーでの損失がすべての利益をカバーするのに十分であるため、このルールを純粋な形でのトレードに適用することはできません。