Cosa stanno cercando tutti? - pagina 15

 
AlexEro писал(а) >>

Per favore.

Sia da me che da von Neumann....

...beh, se è così, allora anche da Eric Nyman (non lo conosco, ma conosco un paio di persone della sua cerchia).


Clinique - Non conosco l'uomo ma ti manda i suoi saluti. :)
Beh, grazie per avermi salutato. :)) Digli che lo saluto anch'io. :))
 

Ecco - che esperto è questo -

// Эксперт 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 >>:


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

Beh, se mi dicono che oggi è il 5 aprile, penso che sarò d'accordo anch'io.
E per quanto riguarda l'approccio agli indicatori ho detto nel thread successivo: ".... In ogni caso, se stiamo parlando di indicatori, dovremmo parlare di quanto accuratamente essi riflettano ciò che vogliamo tracciare.
Per questo non ho nulla contro di essa...)))
Ma all'essenza del ramo, l'essenza è la seguente: il topicwriter non ha bisogno dell'opinione di qualcuno. O meglio, ne ha bisogno, ma al solo scopo di convincersi ancora una volta di quanto sia stupida l'opinione degli altri. Questo vale per la maggior parte delle sue incursioni nel forum, però.
Per partecipare a questo è ...)))
===
Scusa - non sto parlando con te - errore mio. Stavo rispondendo al post di AlexEro:

Le medicine non arrivano più? Beh, si dice che il Relenium aiuti.

Beh, per tranquillizzarti ed essere gentile, ti dirò questo - sono d'accordo con te (e alcuni altri colleghi di questo forum) sulla parte di RIFERIMENTO.

Personalmente, non capisco perché quasi tutti qui pensano che se un indicatore va in overdraws, è "cattivo". Al contrario, è "buono". L'ambiente di mercato cambia costantemente, i modelli meccanici semplici non funzionano, e quindi il rialzo del REAL significa che l'indicatore si sta adattando ai cambiamenti del mercato.



 
Svinozavr писал(а) >>

Beh, se mi si dice che oggi è il 5 aprile, penso che sarei d'accordo anch'io.
Per quanto riguarda l'approccio agli indicatori ho detto nel thread successivo: "... In ogni caso, se stiamo parlando di indicatori, dovremmo parlare di quanto accuratamente essi riflettano ciò che vogliamo tracciare.
Per questo non ho nulla contro di essa...)))
Ma all'essenza del ramo, l'essenza è la seguente: il topiksaturter non ha bisogno dell'opinione di qualcuno. O meglio, ne ha bisogno, ma al solo scopo di convincersi ancora una volta di quanto sia stupida l'opinione degli altri. Questo vale per la maggior parte delle sue incursioni nel forum, però.
Per partecipare a questo è ...)))




Non giudicare da solo. :)
 
Mathemat писал(а) >>

C'era anche un thread su questo. Una falsa dichiarazione del problema.

Il problema è che queste lampadine-segnali saranno dipendenti. E anche se ne mettete un milione, non 100, l'affidabilità della previsione complessa per una data correlazione di segnali di lampadine sarà limitata e non sarà così vicina a 1.

In Metastock tutti gli indicatori sono divisi in gruppi: tendenza, volatilità, momentum, volume, ipercomprato/ipervenduto e qualcos'altro - un totale di sei gruppi. Si sospetta che questi siano indicatori indipendenti. Lo stesso Metastock afferma che un buon TS dovrebbe contenere indicatori di ogni gruppo. Qualche tempo fa mi ero già risentito del fatto che una serie di indicatori metaquote è fuori dal campo, senza pensiero. A uno degli autori piace e questo è tutto. Di conseguenza, l'intera popolazione di questo quorum non conosce l'idea di un insieme ortogonale di indicatori.
 
faa1947 писал(а) >>


In Metastock tutti gli indicatori sono divisi in gruppi: trend, volatilità, momentum, volume e così via - sei gruppi in totale. Si sospetta che questi siano indicatori indipendenti. Lo stesso Metastock sostiene che un buon TS deve contenere indicatori di ogni gruppo. Qualche tempo fa mi ero già risentito del fatto che una serie di indicatori metaquote è fuori dalla scatola, senza pensiero. A uno degli autori piace e questo è tutto. Di conseguenza, tutta la popolazione di questo quorum non conosce l'idea di un insieme ortogonale di indicatori.


Il fatto è che dobbiamo capire che se abbiamo qualche oggetto e ha solo due proprietà, allora solo quattro indicatori sono possibili in linea di principio e tutto il resto è in eccesso. Per l'occhio - sì, possono essere utili - ma per il computer non importa, quindi è necessario capire quante proprietà abbiamo nel nostro oggetto.

 



Buono per gli occhi - sono d'accordo :)))

 
SProgrammer писал(а) >>


Il fatto è che dobbiamo capire che se abbiamo un oggetto e ha solo due proprietà, allora solo quattro indicatori sono possibili in linea di principio, il resto sarà ridondante. Quindi dovremmo pensare a quante proprietà abbiamo per il nostro oggetto.


Abbiamo tutti un oggetto - BP, ma nessuno si pone la domanda sul numero di parametri ortonormali per l'identificazione di questo BP. In realtà non è necessario. Abbiamo bisogno di un insieme ortonormale di indicatori per il TS che abbia una proprietà di previsione per il numero sufficiente di barre per il ritiro del profitto. Ma l'idea di ortonormalità è solo una cultura comune di selezione o elaborazione di indicatori. Tutti quelli che hanno lavorato in Metastock hanno questo livello, ma con i metaquote questo livello non c'è. Non è la prima volta che scrivo di questo. La mia risposta precedente era di Roche, mi ha rimproverato e questo è tutto, ma non mi interessa molto. In MQL5 invece dell'ortonormalità hanno aggiunto qualche cazzata da programmatore e sono contenti.
 

Beh la BP ha MOLTO poche proprietà indipendenti. La derivata prima, e lo spettro, beh lo spettro stesso include l'ampiezza ad una certa frequenza - quindi abbiamo essenzialmente mashup (proprietà dello spettro) e la derivata prima. E questo è tutto. La prima derivata è calcolata come segue: per prezzo medio ((Alto(i) + Basso(i))/2) - ((Alto(i-1) + Basso(i-1))/2). Bene, (Open-+-Close) è infatti il valore più probabile di BP. E non prenderei in considerazione Open and Close - è nella spanktrap.

Motivazione: