¿Qué buscan todos? - página 15

 
AlexEro писал(а) >>

Por favor.

Tanto de mi parte como de von Neumann....

...bueno, si es así, también de Eric Nyman (no lo conozco, pero sí a un par de personas de su círculo).


Clinique - No conozco al hombre pero le envía sus saludos. :)
Bueno, gracias por saludar. :)) Dile que yo también le mando saludos. :))
 

Ahí tienes - qué experto es este -

// Эксперт SUPPER-SMART-1 --  "SS1" :)
int init(){ return(0); }
int deinit()  {   return(0);  }

int sti=-1;
int bti=-1;

int start(){
  
   double sell_sig = iCustom ( 0, 0, "ideal", 60,15,60, 0, 0 );
   double buy_sig  = iCustom ( 0, 0, "ideal", 60,15,60, 1, 0 );
    
   if ( sell_sig != EMPTY_VALUE ){
      if ( bti > 0 ){
         OrderClose ( bti, 0.1, Bid, 0  );
         bti=-1;
      }  
      if ( sti < 0 )
         sti=OrderSend( Symbol(), OP_SELL, 0.1, Bid, 0, 0,0 );
   }
   if (  buy_sig != EMPTY_VALUE ){
      if ( sti > 0 ){
         OrderClose ( sti, 0.1, Ask, 0  );
         sti=-1;
      }
      if ( bti < 0 )       
         bti=OrderSend( Symbol(), OP_BUY, 0.1, Ask, 0, 0,0 ); 
   }  
   return(0);
}
 
#property indicator_chart_window

#property  indicator_buffers 2
#property  indicator_color1  Yellow
#property  indicator_color2  Red

extern int p1=60,p2=15,p3=60;

double Sales_buffer[];
double Buys_buffer[];

datetime times[];
double   signals[];
#define SALE_SIGNAL 1
#define BUY_SIGNAL 2

/*

некий абстрактный идеальный индикатор - который знает будущее и всегда показывает идеальные входы и выходы. 

Служит только для сравнения с рельными индикторами как единица отсчета. Все не совпадения с этим индикатором ухудшают 
показатели реального. Входные параметры теже что и у стандартоного зигзага.

Использовать надо так. 

1) На графике, не в тестере добавляем этот индикатор, который при своем первом запуске создаст файл данных и именем ideal_data.dat
2) Этот файл надо перенести в файлы тестера 
3) При тестировании из советника надо обратится к этому индикатору таким образом  

  double sell_sig = iCustom ( 0, 0, "ideal", 60,15,60, 0, 0 );
  double buy_sig  = iCustom ( 0, 0, "ideal", 60,15,60, 1, 0 );
  
4) Наличие сигнала на продажу или покупку определяется как не равенство пустому значению значения в соответствующем буфере .


Пример эксперта использующего этот псевдо-индикатор 


int init(){ return(0); }
int deinit()  {   return(0);  }

int sti=-1;
int bti=-1;

int start(){
  
   double sell_sig = iCustom ( 0, 0, "ideal", 60,15,60, 0, 0 );
   double buy_sig  = iCustom ( 0, 0, "ideal", 60,15,60, 1, 0 );
    
   if ( sell_sig != EMPTY_VALUE ){
      if ( bti > 0 ){
         OrderClose ( bti, 0.1, Bid, 0  );
         bti=-1;
      }  
      if ( sti < 0 )
         sti=OrderSend( Symbol(), OP_SELL, 0.1, Bid, 0, 0,0 );
   }
   if (  buy_sig != EMPTY_VALUE ){
      if ( sti > 0 ){
         OrderClose ( sti, 0.1, Ask, 0  );
         sti=-1;
      }
      if ( bti < 0 )       
         bti=OrderSend( Symbol(), OP_BUY, 0.1, Ask, 0, 0,0 ); 
   }  
   return(0);
}



*/

int init()
{
   SetIndexBuffer(0,Sales_buffer);
   SetIndexBuffer(1,Buys_buffer);
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(0,SYMBOL_STOPSIGN);
   SetIndexArrow(1,SYMBOL_STOPSIGN);
   
   int i;
   int h=FileOpen ( "ideal_data.dat", FILE_BIN | FILE_READ );
   if ( h >= 1 ){
      
      
      int s = FileSize(h) / (LONG_VALUE+LONG_VALUE);
      
      ArrayResize(times, s);
      ArrayResize(signals,s);
      
      for( i=0;i<s;i++){
         if (  FileIsEnding(h) ){
            Print("Err22");
            break;
         }
         
         times[i] = FileReadInteger(h,LONG_VALUE);
         signals[i]= FileReadInteger(h,LONG_VALUE );
   //      Print("i=",i,"t=",times[i],"s=",signals[i]);

      }
      
      FileClose(h);
      Print("Ok Read");
      
   }
   else{
      h=FileOpen ( "ideal_data.dat", FILE_BIN | FILE_WRITE ); 
      if ( h < 1 ){
         Print("Err");
         return;
      }
      int j=0;
      
      ArrayResize(times, Bars);
      ArrayResize(signals,Bars);
      
      for (  i=0;i<Bars;i++){
          double pr0=iCustom(0,0,"Zigzag",p1,p2,p3,0,i);
          double pr1=iCustom(0,0,"Zigzag",p1,p2,p3,1,i);
          double pr2=iCustom(0,0,"Zigzag",p1,p2,p3,2,i);
          
          if ( pr0 != 0.0 ){
            times[j]=Time[i];
            
            FileWriteInteger(h,Time[i],LONG_VALUE);
            if ( pr1 != 0.0 ){
               FileWriteInteger(h,SALE_SIGNAL,LONG_VALUE);
               signals[j]=SALE_SIGNAL;
            }
            else{
               FileWriteInteger(h,BUY_SIGNAL,LONG_VALUE);
               signals[j]=BUY_SIGNAL;
            }
            
//            Print("j=",j,",t=",times[j],",p=",signals[j],",p1=",pr1,",p2=",pr1,",p3=",pr2);
            j++;   
          }
      } 
      
      ArrayResize(times, j);
      ArrayResize(signals,j);
      
      FileClose(h);  
      Print("Ok write");
   }
   

   return(0);
}
int deinit()
{
   return(0);
}

int start()
{

   int j=0;
   
   int limit;

   int counted_bars = IndicatorCounted();

   if(counted_bars>0) 
      counted_bars--;
  
  limit = Bars-counted_bars;

  for(int i=0; i<limit; i++){
      
      while ( Time[i] < times[j] )
         j++;     
    
    //  Print("i=",i,",j=",j,",T[i]=",Time[i],",T[j]=",times[j],",s=",signals[j]);
      if ( times[j] == Time[i] ){
         if ( signals[j] == BUY_SIGNAL ){
            Buys_buffer [i]= Low[i];
            Sales_buffer[i]=EMPTY_VALUE;
         }
         else{
            Sales_buffer[i]= High[i];
            Buys_buffer [i]= EMPTY_VALUE;
         }
      }
      else{
         Sales_buffer[i]=EMPTY_VALUE;
         Buys_buffer[i]= EMPTY_VALUE;
      }            
   }
      
   return(0);
}
 
SProgrammer >>:


Уважаемый - я уже все сказал для тебя, Ты меня утомил, причем тут все эти твои сентенции про перерисовку и прочую ахинею. Твое мнение уже озвученно, спасибо - все прочитали. Думаю впечатление сложилось правильное. Мне же нечего тебе ответить - просто успокойся и не переживай - все хорошо.

Bueno, si me dicen que hoy es 5 de abril, creo que también estaré de acuerdo.
Y respecto al enfoque de los indicadores dije en el siguiente hilo: ".... En cualquier caso, si hablamos de indicadores, deberíamos hablar de la precisión con la que reflejan lo que queremos seguir.
Por eso no tengo nada en contra...))
Pero a la esencia de la rama, la esencia es la siguiente: el escritor de temas no necesita la opinión de alguien. O mejor dicho, sí lo necesita, pero sólo para convencerse una vez más de lo tonta que es la opinión de cualquier otra persona. Sin embargo, eso es cierto para la mayoría de sus incursiones en el foro.
Para participar en esto es ...)))
===
Lo siento, no me dirijo a ti, es mi error. Estaba respondiendo al post de AlexEro:

¿Qué? ¿Las medicinas no van a entrar de nuevo? Bueno, se dice que el Relenium ayuda.

Bueno, para calmarte y ser amable, te diré lo siguiente: estoy de acuerdo contigo (y con algunos otros compañeros de este foro) en la parte de la REFERENCIA.

Personalmente, no entiendo por qué casi todo el mundo aquí piensa que si un indicador sobregira, es "malo". Por el contrario, es "bueno". El entorno del mercado cambia constantemente, los modelos mecánicos simples no funcionan, por lo que la revalorización REAL significa que el indicador se está adaptando a los cambios del mercado.



 
Svinozavr писал(а) >>

Si me dicen que hoy es 5 de abril, creo que yo también estaría de acuerdo.
En cuanto al enfoque de los indicadores que dije en el siguiente hilo: "... En cualquier caso, si hablamos de indicadores, deberíamos hablar de la precisión con la que reflejan lo que queremos seguir.
Por eso no tengo nada en contra...))
Pero a la esencia de la rama, la esencia es la siguiente: el topiksaturter no necesita la opinión de nadie. O mejor dicho, sí lo necesita, pero sólo para convencerse una vez más de lo tonta que es la opinión de cualquier otra persona. Sin embargo, eso es cierto para la mayoría de sus incursiones en el foro.
Para participar en esto es ...)))




No juzgues por ti mismo. :)
 
Mathemat писал(а) >>

También había un hilo sobre esto. Un falso planteamiento del problema.

El problema es que estos focos-señales serán dependientes. Y aunque pongas un millón de ellas, no 100, la fiabilidad de la predicción compleja para una correlación dada de las señales de las bombillas será limitada y no será tan cercana a 1.

En Metastock todos los indicadores se dividen en grupos: tendencia, volatilidad, impulso, volumen, sobrecompra/sobreventa y algo más - un total de seis grupos. Se sospecha que se trata de indicadores independientes. El mismo Metastock afirma que un buen TS debe contener indicadores de cada grupo. Hace algún tiempo ya me resentí de que un conjunto de indicadores de metacitas está fuera de lugar, sin pensarlo. A uno de los autores le gusta y ya está. En consecuencia, toda la población de este quórum no está familiarizada con la idea de un conjunto ortogonal de indicadores.
 
faa1947 писал(а) >>


En Metastock todos los indicadores están divididos en grupos: tendencia, volatilidad, impulso, volumen, etc., seis grupos en total. Se sospecha que se trata de indicadores independientes. El mismo Metastock afirma que un buen TS debe contener indicadores de cada grupo. Hace un tiempo ya me molestaba que un conjunto de indicadores de metacitas estuviera fuera de la caja, sin pensar. A uno de los autores le gusta y ya está. En consecuencia, toda la población de este quórum no está familiarizada con la idea de un conjunto ortogonal de indicadores.


La cuestión es que debemos entender que si tenemos algún objeto y sólo tiene dos propiedades, entonces sólo son posibles, en principio, cuatro indicadores y todo lo demás sobra. Para el ojo - sí pueden ser útiles - pero para el ordenador no importa, por lo que hay que entender cuántas propiedades tenemos en nuestro objeto.

 



Es bueno para los ojos - estoy de acuerdo :)))

 
SProgrammer писал(а) >>


La cuestión es que debemos entender que si tenemos un objeto y sólo tiene dos propiedades, en principio sólo son posibles cuatro indicadores, el resto será redundante. Así que debemos pensar en cuántas propiedades tenemos para nuestro objeto.


Todos tenemos un objeto - BP, pero nadie se pregunta sobre el número de parámetros ortonormales para la identificación de este BP. En realidad no es necesario. Necesitamos un conjunto ortonormal de indicadores para el TS que tenga una propiedad de previsión para el número suficiente de barras para la retirada de beneficios. Pero la idea de ortonormalidad no es más que una cultura común de selección o elaboración de indicadores. Todos los que han trabajado en Metastock tienen este nivel, pero con las metacotizaciones no. No es la primera vez que escribo sobre esto. No me importa, aunque ya he implementado el algoritmo. En MQL5 en lugar de la ortonormalidad añadieron una mierda de programador y están contentos.
 

Pues BP tiene MUY pocas propiedades independientes. La primera derivada, y el espectro, bueno el espectro en sí mismo incluye la amplitud a una determinada frecuencia - por lo que tenemos esencialmente mashups (propiedades del espectro) y la primera derivada. Y eso es todo. La primera derivada se calcula como sigue: por precio medio ((Alta(i) + Baja(i))/2) - ((Alta(i-1) + Baja(i-1))/2). Pues bien, (Abrir-+Cerrar) es de hecho el valor más probable de BP. Y yo no tendría en cuenta lo de Abrir y Cerrar: está en la trampa de la espiga.