みんなは何を求めているのだろう? - ページ 15

 
AlexEro писал(а)>>

お願いします。

自分からも、フォン・ノイマンからも......。

...まあ、もしそうなら、Eric Nymanからも(私は彼を知らないが、彼のサークルの人たちを何人か知っている)。


クリニーク - 私はその人を知らないが、よろしくとのことだ。:)
そうですか、ご挨拶ありがとうございます。 :))私もよろしくと伝えてください。:))
 

ほらね、この人はなんと専門家なんだろう。

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


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

まあ、今日が4月5日だと言われれば、私もそう思いますけどね。
また、指標へのアプローチについては、次のスレッドで「・・・。いずれにせよ、指標について語るのであれば、私たちが追跡したいものをどれだけ正確に反映しているかを語るべきでしょう。
だからこそ、何の抵抗もないのですが・・・)))
しかし、枝葉末節の本質に、「topiksaturterは誰かの意見を必要としない。というか、必要なのだが、他人の意見など、いかに馬鹿なことか、もう一度自分に納得させるためだけのものである。それは、彼がこの掲示板に登場するほとんどの作品に言えることですが。
これに参加することは・・・・・・))))
===
ごめんね~、あなたに言ってるんじゃないよ~、私の勘違い。AlexEroの 投稿に反応したものです。

なんだ、また薬が入ってこないのか。まあ、リレニウムは効くらしいですけどね。

まあ、あなたを落ち着かせ、親切にするために、こう言っておきますが、REFERENCEの部分については、あなた(とこのフォーラムの他の仲間たち)と同意見です。

個人的には、ここにいるほぼ全員が、インジケータがオーバードローしたら「悪い」と思っているのが理解できない。逆に言えば、「良い」のです。市場環境は常に変化しており、機械的な単純モデルは通用しないため、REALの再上昇は、その指標が市場の変化に適応していることを意味します。



 
Svinozavr писал(а)>>

まあ、今日が4月5日だと言われれば、私もそう思うだろう。
次スレで言った指標へのアプローチとして、「...」。いずれにせよ、指標について語るのであれば、私たちが追跡したいものをどれだけ正確に反映しているかを語るべきでしょう。
だからこそ、何の抵抗もないのですが・・・)))
しかし、枝葉末節の本質に、「topiksaturterは誰かの意見を必要としない。というか、必要なのだが、他人の意見など、いかに馬鹿なことか、もう一度自分に納得させるためだけのものである。それは、彼がこの掲示板に登場するほとんどの作品に言えることですが。
これに参加することは・・・・・・))))




自分だけで判断しないでください。:)
 
Mathemat писал(а)>>

これに関するスレッドもありましたね。偽の問題文です。

問題は、この電球-信号が依存性を持つことです。また、100個ではなく100万個置いたとしても、与えられたバルブ信号の相関に対する複合予測の信頼性は限界があり、1には遠く及ばないでしょう。

Metastockでは、すべての指標は、トレンド、ボラティリティ、モメンタム、ボリューム、買われ過ぎ/売られ過ぎ、その他のグループに分かれており、合計6つのグループに分かれています。これらは独立した指標であることが疑われる。同じMetastockは、良いTSは、各グループからの指標を含むべきであることを述べています。少し前にすでにメタクォートのインジケーター一式が球場から外れていることを憤慨し、思考停止しています。著者の一人が気に入って、それで終わり。その結果、この定足数全体が、直交する指標の集合という考え方に馴染めないのです。
 
faa1947 писал(а)>>


Metastockでは、すべての指標はグループに分けられています:トレンド、ボラティリティ、モメンタム、ボリュームなど、合計6つのグループです。これらは独立した指標であることが疑われる。同じMetastockは、良いTSは各グループからの指標を含む必要があると主張しています。少し前に、私はすでにメタクォートの指標のセットがボックスの外にあることを憤慨し、何も考えなかった。著者の一人が気に入って、それで終わり。その結果、この定足数全体が、直交する指標の集合という考え方に馴染めないのです。


ある物体があって、それが2つの特性しか持っていない場合、原理的に可能な指標は4つだけで、残りはすべて余剰であることを理解する必要があるということです。しかし、コンピュータには関係ありませんから、オブジェクトにどれだけのプロパティがあるのかを理解する必要があります。

 



目に良い - 同感 :)))

 
SProgrammer писал(а)>>


要は、あるオブジェクトがあって、それが2つの特性しか持っていない場合、原理的に4つの指標しか可能でなく、残りは冗長になることを理解する必要があるのです。そこで、オブジェクトにいくつのプロパティを持たせるかを考える必要があります。


私たちは皆、BPという一つの物体を持っていますが、このBPを識別するための直交パラメータの数については、誰も質問しません。実はその必要はないのです。我々は、利益撤退のための十分な数のバーの予測特性を持つであろうTSのための指標の直交集合を必要とします。しかし、直交性という考え方は、指標の選択や精緻化という共通の文化に過ぎない。Metastockで仕事をしてきた人は皆このレベルを持っていますが、metaquotesではこのレベルはありません。このことは、今回初めて書いたことではありません。前の返信はロシュからで、叱られて終わりだけど、別に気にしてない。MQL5では直交性の代わりにプログラマーの戯言が追加され、満足しています。
 

BPは独立したプロパティをほとんど持っていません。一次微分と、スペクトル、つまりスペクトル自体にはある周波数での振幅が含まれているので、本質的にマッシュアップ(スペクトルの性質)と一次微分があるのです。そして、それだけです。一次導関数は、平均価格((高値(i)+安値(i))/2)-((高値(i-1)+安値(i-1))/2)により、以下のように算出されます。まあ、(Open-+Close)は、実はBPの最も確率の高い値なんですけどね。あと、Open and Closeは考慮しないですね、スパンクラップにありますから。