Catturare un'inversione o una correzione - pagina 30

 
tara:

Notate la linea di commento nell'angolo in alto a sinistra.

È il rapporto tra scambi negativi e positivi? Se no, mi dispiace :o)
 
No, non il rapporto. Profitto in punti.
 
Sei andato a tagliare dei cavoli?
 
Non proprio... Aspettando di vedere se c'è qualcosa su cui lavorare. Le uscite sono ancora sotto esame...
 

La mia opinione: gli indicatori con la media (in particolare i wizard) sono necessari, ma dovrebbero essere usati SOLO con una condizione (o indicatore) che mostra un cambiamento di prezzo istantaneo (attuale e senza ritardo)...

Volevo dire che tutti gli oscillatori e le scale di prezzo affondano! (l'ho trovato nel thread della pagina precedente...)

 
atik:

La mia opinione: gli indicatori con la media (in particolare i wizard) sono necessari, ma dovrebbero essere usati SOLO con una condizione (o indicatore) che mostra un cambiamento di prezzo istantaneo (attuale e senza ritardo)...

Volevo dire che tutti gli oscillatori e le scale di prezzo affondano! (l'ho trovato nel thread della pagina precedente...)

Qualsiasi mediazione richiede un'ottimizzazione costante in quanto lavora per frammenti. Sono d'accordo che Tumblers, per esempio, è uno strumento di lavoro, ma la varietà di impostazioni e timeframes uccide assolutamente qualsiasi attrazione. Se l'intero pianeta scambiasse su Н1 e usasse Ma con un periodo di 359.65 e uno shift di +38, tutti sarebbero in nero :o).
 
Ho il sospetto che ci sarà un prolungamento della tendenza sotto forma di correzione, e qui come al solito una situazione di stallo - l'uscita? Sicuramente sono scappato dall'eurik, sterlina e franco, ma sarebbe un peccato prendere solo una quinta parte.
 

Stamattina, per esempio, ho messo in vendita eurik, senza aspettare un pullback più ampio. Non c'è ancora uno stop o un profitto.

 

Ecco il chiarimento sui due obiettivi provvisori (161 e 200%), e la quota del trend dall'alto sul caso o.k. E quindi lo standard 1-2-3 sulla vendita.

 

extern int int_bars1=250; /numero minimo di estremi
extern double ch_max1=60; //altezza massima consentita del canale

Numero minimo di barre da cui si cerca il canale, e l'altezza del canale dovrebbe essere selezionata a seconda di TF

Il file è inserito, l'ho messo così

//+------------------------------------------------------------------+
//|                                          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); 
 }