反転や修正のタイミングをとらえる - ページ 30

 
tara:

左上のコメント欄にご注目ください。

マイナストレードとプラストレードの比率でしょうか。そうでない場合は、申し訳ありません:o)
 
いいえ、比率ではありません。ポイントでの利益。
 
キャベツを切りに行ったのか?
 
特になし・・・様子見中。アウトプットはまだ精査中ですが...。
 

私の意見:平均化された指標(特にウィザード)は必要です!しかし、彼らは唯一の瞬間的な(現在と遅延なし)価格変動を示す条件(または指標)と一緒に使用する必要があります...。

すべてのオシレーターと価格スケールが沈むと言う意味です。(前ページのスレッドで出会いました...)

 
atik:

私の意見:平均化された指標(特にウィザード)は必要です!しかし、彼らは唯一の瞬間的な(現在と遅延なし)価格変動を示す条件(または指標)と一緒に使用する必要があります...。

すべてのオシレーターと価格スケールが沈むと言う意味です。(前ページのスレッドで出会いました...)

どんな平均化も断片的に働くため、常に最適化が必要です。つまり、平均化は基本的に自己欺瞞であり、様々な設定や時間枠があると魅力が半減する。 もし地球全体がН1で取引し、359.65の周期と+38のシフトのMaを使えば、誰もが黒字になるだろう :o).
 
修正という形でトレンドの延長があるのではという疑念があり、ここでいつものようにデッドロック-出口? 確かにユーリック、ポンド、フランから逃げましたが、5分の1しかとれないのはもったいないです。
 

今朝、例えばユーリックを空売りしました。 より大きなプルバックを待たずに。 ストップも利益もまだありません。

 

ここでは、2つの暫定的なターゲット(161%と200%)を明確にし、o.k.の場合は上からのトレンドからのシェア。そして、売りの場合は標準的な1-2-3。

 

extern int int_bars1=250; //極値の最小数
extern double ch_max1=60; //許容されるチャンネルの最大高さ

チャンネルを探す最小のバー数、チャンネルの高さはTFによって選択する必要があります。

ファイルが挿入されているので、こんな風に置いてみました。

//+------------------------------------------------------------------+
//|                                          HL channel breakout.mq4 |
//|                      Copyright © 2010, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

extern int min_bars1=80;                   //минималльное число екстремумов
extern double ch_max1=35;                   //максимально разрешаемая высота канала

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----  
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
{
   int i, t,k=0;
   double zz_ch=0, new_zz_ch=0;                                                  // высота подщитаного канала
   double PriceHigh=0, PriceLow=0;                                                      //Максимум и минимум канала (цены)                                                                
                                                            //число уже существующих вершин           
   for(k=min_bars1; k<100000; k++)                                           //цикл проверяющий высоту канала
    {
         
        PriceHigh = High[Highest(NULL, 0, MODE_HIGH, k, 0)];
        PriceLow = Low [Lowest (NULL, 0, MODE_LOW , k,0)];                    //Время первого екстрмума 
            if(PriceHigh-PriceLow<ch_max1*Point)           
               {
                  SetTLine(Red, "DNLine", Time[k], PriceLow, Time[0], PriceLow, false, 0, 3);           // чертим нижнюю линию          
                  SetTLine(Blue,"UPLine", Time[k], PriceHigh, Time[0], PriceHigh, false, 0, 3);          // чертим верхнюю линию 
                  SetTLine(Red, "DN161Line", Time[k], PriceLow-((PriceHigh-PriceLow)*0.61), Time[0], PriceLow-((PriceHigh-PriceLow)*0.61), false, 0, 1);           // чертим нижнюю линию          
                  SetTLine(Blue,"UP161Line", Time[k], PriceHigh+((PriceHigh-PriceLow)*0.61), Time[0], PriceHigh+((PriceHigh-PriceLow)*0.61), false, 0, 1);          // чертим верхнюю линию 
                  if(GlobalVariableCheck("H"))         GlobalVariableSet("H",PriceHigh);
                  if(GlobalVariableCheck("L"))         GlobalVariableSet("L",PriceLow);  
               }
            else break;                  
    }            
              
return(0);
}
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 12.10.2007                                                     |
//|  Описание : Установка объекта OBJ_TREND трендовая линия                    |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    cl - цвет линии                                                         |
//|    nm - наименование               (  ""  - время открытия текущего бара)  |
//|    t1 - время открытия бара        (  0   - Time[10]                       |
//|    p1 - ценовой уровень            (  0   - Low[10])                       |
//|    t2 - время открытия бара        (  0   - текущий бар)                   |
//|    p2 - ценовой уровень            (  0   - Bid)                           |
//|    ry - луч                        (False - по умолчанию)                  |
//|    st - стиль линии                (  0   - простая линия)                 |
//|    wd - ширина линии               (  1   - по умолчанию)                  |
//+----------------------------------------------------------------------------+
void SetTLine(color cl, string nm="",
              datetime t1=0, double p1=0, datetime t2=0, double p2=0,
              bool ry=False, int st=0, int wd=1) {
  if (nm=="") nm=DoubleToStr(Time[0], 0);
  if (t1<=0) t1=Time[10];
  if (p1<=0) p1=Low[10];
  if (t2<=0) t2=Time[0];
  if (p2<=0) p2=Bid;
  if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_TREND, 0, 0,0, 0,0);
  ObjectSet(nm, OBJPROP_TIME1 , t1);
  ObjectSet(nm, OBJPROP_PRICE1, p1);
  ObjectSet(nm, OBJPROP_TIME2 , t2);
  ObjectSet(nm, OBJPROP_PRICE2, p2);
  ObjectSet(nm, OBJPROP_COLOR , cl);
  ObjectSet(nm, OBJPROP_RAY   , ry);
  ObjectSet(nm, OBJPROP_STYLE , st);
  ObjectSet(nm, OBJPROP_WIDTH , wd);
}

//---------------------------------------------------------------------
//  Vizualizacija
//  Визуализация для отладки програмы
//-------------------------------------------------------------------- 
 int VisualDoubleToText(string name, string text, int y,double param, int digit )
 {  
            ObjectCreate(name, OBJ_LABEL, 0, 0, 0);
            ObjectSetText(name, text,12, "Verdana", White );
            ObjectSet(name, OBJPROP_XDISTANCE, 20);
            ObjectSet(name, OBJPROP_YDISTANCE, y);
            ObjectSet(name, OBJPROP_CORNER, 0); 
            ObjectCreate(name+"skaicius", OBJ_LABEL, 0, 0, 0);
            ObjectSetText(name+"skaicius", DoubleToStr(param,digit),12, "Verdana", White );
            ObjectSet(name+"skaicius", OBJPROP_XDISTANCE, 200);
            ObjectSet(name+"skaicius", OBJPROP_YDISTANCE, y);
            ObjectSet(name+"skaicius", OBJPROP_CORNER, 0); 
 }
 
 
  int VisualTimeToText(string name, string text, int y,datetime param, int mode )
 {  
            ObjectCreate(name, OBJ_LABEL, 0, 0, 0);
            ObjectSetText(name, text,12, "Verdana", White );
            ObjectSet(name, OBJPROP_XDISTANCE, 20);
            ObjectSet(name, OBJPROP_YDISTANCE, y);
            ObjectSet(name, OBJPROP_CORNER, 0); 
            ObjectCreate(name+"skaicius", OBJ_LABEL, 0, 0, 0);
            ObjectSetText(name+"skaicius", TimeToStr(param,mode),12, "Verdana", White );
            ObjectSet(name+"skaicius", OBJPROP_XDISTANCE, 200);
            ObjectSet(name+"skaicius", OBJPROP_YDISTANCE, y);
            ObjectSet(name+"skaicius", OBJPROP_CORNER, 0); 
 }