[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 470

 
hoz:

ドキュメントには、SetIndexEmptyValue 関数は「空の」値を指定するために使用されると書かれています。つまり、どの値までなら何も描画する必要がないかを指定するのである。全てのバーでシグナルが発生するわけではないので、私たちの場合は非常に便利です。仕組みは次の通りです。現在のバー上に矢印を描く必要がないときは、データバッファの該当する項目に「空」の値(この例では0)を代入します。

理解できないことがある。信号によって描画されるものは、信号がなければ描画されない。では、一般的にこの機能は何のためにあるのでしょうか?


コンピュータは、値がないことを明示的に示すのが通例である。それなら、まったくゼロということはなさそうです。バッファを描画することを想像してください。ここでは、1.2903、1.2905、1.2904...の値を持っています。そして、いきなり0になる。この霧の中で、指標線は 突然窓の下に潜らなければならなくなる!!!!
 
hoz:

ドキュメントには、SetIndexEmptyValue 関数は「空の」値を指定するために使用されると書かれています。つまり、どの値までなら何も描画する必要がないかを指定するのである。全てのバーでシグナルが発生するわけではないので、私たちの場合は非常に便利です。仕組みは次の通りです。現在のバー上に矢印を描く必要がないときは、データバッファの該当する項目に「空」の値(この例では0)を代入します。

わからないことがある。信号によって描画されるものは、信号がなければ描画されない。では、一般的にこの機能は何のためにあるのでしょうか?

この関数は、配列(この場合、インジケータバッファ)を空の値EMPTY_VALUE= 0x7FFFFFF で埋めます。
 
drknn:


実際には、言語の変数の特殊なタイプがあります - 色が呼び出されます。例えば、こんな感じです。

ダブルベリシナ

マイライン

ベリシナ=2.569。

MyLine=Redです。


こんな感じで持ってました。
  OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits),   NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, 00 FF33);  }
           
そこに色を書いてどうするんだ?
 
Dimka-novitsek:

私はこのように考えていました。 そこに何を書けばいいのか、特別な色なのか、それとも何なのか。

いや、00FF33の代わりに単に赤と書いてもいいし、Web-colors table(このリンクを開いてください)にあるどの色でもいいのですが、16進数のコードを使わなくても十分な色があります。
 
ロボット
//+------------------------------------------------------------------+
//|                                                     советник.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"


  extern double  lot=1;                          
  extern int taymfreym=0 ;                           
  extern double  stoplos=20 ;                          
  extern double  takeprofit=50 ; 
  extern double  magicnumber=350//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
            double strela1 = iCustom(NULL, taymfreym, "индикатор", 0, 1);
            double strela2 = iCustom(NULL, taymfreym, "индикатор", 1, 1);
            int BUY=0,SELL=0;int ticket; 
            Print (  " strela1 " , strela1 , "   strela2  " , strela2  );
            
    
            
            for(int i=1; i<=OrdersTotal(); i++) {  
            if (OrderSelect(i-1,SELECT_BY_POS)==true) // Если есть следующий
        {                                       // Анализ ордеров:
         if (OrderSymbol()!=Symbol( ) )continue;      // Не наш фин. инструм
         if (OrderMagicNumber( ) !=magicnumber)continue;
         if (OrderType()==0){ BUY++; ticket=OrderTicket( );}
         if (OrderType()==1) {SELL++;ticket=OrderTicket( );}    } }
         
   if (strela1>strela2&&BUY==0&&SELL==0){               
            
           OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits), 
  NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE);  }
           
           
   if (strela1<strela2&&BUY==0&&SELL==0){  
   
            OrderSend( NULL, OP_SELL, lot, Bid, 3, NormalizeDouble( Ask- (stoplos*Point),Digits), 
  NormalizeDouble( Bid+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE) ; }
            
            
  if (strela1>strela2&&BUY==0&&SELL!=0){ 
   OrderSelect(ticket, SELECT_BY_TICKET);
   OrderClose(  ticket , OrderLots( ) , OrderOpenPrice( ) , 3, CLR_NONE);                 
   OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits),  
 NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE);  }         
      
  if (strela1<strela2&&SELL==0&&BUY!=0){ 
   OrderSelect(ticket, SELECT_BY_TICKET);
   OrderClose(  ticket , OrderLots( ) , OrderOpenPrice( ) , 3, CLR_NONE);                 
   OrderSend( NULL, OP_SELL, lot, Bid, 3, NormalizeDouble( Ask- (stoplos*Point),Digits),  
 NormalizeDouble( Bid+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE) ; }
      
            
            
//----
   return(0);
  }
//+------------------------------------------------------------------+
それは、ある場所
 double strela1 = iCustom(NULL, taymfreym, "индикатор", 0, 1);
 double strela2 = iCustom(NULL, taymfreym, "индикатор", 1, 1);

strela2が動作しない、値が-1になっている。矢印が上向きならタスク、逆なら買い注文。というか、全然うまく書けてない!!!!

今回、初めてこのiCustomを使用 します。このようにstrela1とstrela2を比較することは正しい のでしょうか?どのような価値観があるのか--つまり、それは

第1、第2バッファを使用し、それ以上は使用しない。

矢印は何で描くのですか?

 

インジケーター

/*ДЕКОМПИЛ УДАЛЕН, ВАМ ПРЕДУПРЕЖДЕНИЕ*/

ところで、矢印は何で描くのですか?

 

トラリピとはどういう意味ですか?

引用文の全文はこのようなものです。

<Advisor>は、入力に「Alligator」指標シグナルを使用し、Breakevenまでポジションを移動させ、設定したステップでトロールを 行います。

 
意味がわからない!インジケーターを郵送で送ってもらった。どこから逆コンパイルしたのだろう?そうですね、かなり似たような指標を見たことが何度もあります。元の場所に戻してください
 
はい、セリフが入りましたね。
 
Dimka-novitsek:
意味がわからない!インジケーターを郵送で送ってもらった。どこから逆コンパイルしたのだろう?そうですね、かなり似たような指標を見たことが何度もあります。元の場所に戻してください

デコンパイルは、プログラムコードの盗用によるものです。盗品が送られてきた取り返しがつかなくなる。スクリーンショットの矢印は、Expert Advisorではなく、インジケータによって描かれたもので、そのコードはあなたが示したものです。