コーディングのヘルプ - ページ 764

 
こんにちは、友人たち、私はこのインディを使った新しい戦略に取り組んでいます、私は他のインディケータとそれを結合したい、ICustomを使用して、インディケータは2つのバッファを持っています、それで問題はない、しかし、インディケータは12と15の極値レベルを持っています、どのようにして私は私のカスタムインディケータで そのレベルをコーディングすることができます、ありがとう。
ファイル:
SDA v 3.2.mq4  8 kb
 
Sanz50:
こんにちは、友人、私はこのインディと新しい戦略に取り組んで、私は他の指標とそれを結合したい、ICustomを使用して、指標はそれで問題ない2つのバッファを持っていますが、indicadorは極端なレベル12と15を持って、どのように私は私のカスタムインジケータでそのレベルをコードすることができます、ありがとうございまし た。
iCustom()が返す値を12と15と比較してみてください。
 
mladen:
iCustom()が返す値を12と15で比較します。

私はコードを学ぶために、価格がレベル15以上である場合にのみ、私は興味がある、この中で何を変更する必要があり、あなたの reply sirのためにそんなにありがとうございます?

ダブルSDA(int i)

{

double up = iCustom(Symbol(),0, "SDA v 3.2",1,i+1)!=EMPTY_VALUE.Double dn = iCustom(Symbol(),0, "SDA v 3.2",1,i+1)!=EMPTY_VALUE;

double dn = iCustom(Symbol(),0, "SDA v 3.2",0,i+1)!=EMPTY_VALUE.DN = iCustom(Symbol(),0, "SDA v 3.2",0,i+1)!=EMPTY_VALUE;

if(up)

{

return(1);

}

if(dn)

{

return(-1);

}

return(0);

}


ファイル:
SDA v 3.2.mq4  8 kb
 
SDA V 3.2__2.MQ4
コーディング?
これは、"反転/ダンプ "されたインジケータです。
 

私はこのコードを使って、添付のインジケータからサポートとレジスタンスを読み取っています。

私のコードは正しいですか?

//global variables
   double            m_SupResvalS[1];
   double            m_SupResvalR[1];
   double            m_SupRescl[1];
   int               shift=0;
   bool  buyreg,sellreg=false;

bool getSinal()
  {
          if(CopyBuffer(m_SupResHand,0,Shift,1,m_SupResvalS)==-1 ||
             CopyBuffer(m_SupResHand,1,Shift,1,m_SupResvalR)==-1 ||
             CopyClose(_Symbol,CURRENT_PERIOD,Shift,1,m_SupRescl)==-1
            ) return(false);


          buyreg=m_SupRescl[0]>m_SupResvalR[0] && m_SupRescl1[0]<=m_SupResvalR1[0];
               // Crossing the line of resistance up.                    
          sellreg=m_SupRescl[0]<m_SupResvalS[0] && m_SupRescl1[0]>=m_SupResvalS1[0];
               // Crossing the line of support down.                      

   return(true);
}
ファイル:
 
CHARTNEXT()関数

皆さん、こんにちは。

私のEAでこれを使おうとしています。

//--- variables for chart ID
   long currChart,prevChart=ChartFirst();
   int i=0,limit=100;
   Print("ChartFirst =",ChartSymbol(prevChart)," ID =",prevChart);
   while(i<limit)// We have certainly not more than 100 open charts
     {
      currChart=ChartNext(prevChart); // Get the new chart ID by using the previous chart ID
      if(currChart<0) break;          // Have reached the end of the chart list
      Print(i,ChartSymbol(currChart)," ID =",currChart);
      prevChart=currChart;// let's save the current chart ID for the ChartNext()
      i++;// Do not forget to increase the counter
     }
mql4 docsに あるものです。しかし、しばらくすると、あるいはeaが取り付けられているタイムフレームを切り替えると、2回目の印刷でChartSymbol(currChart)の値が得られません。だから、ChartNext関数に何か問題があると思うのです。なぜかインジケータでは動作するのですが、EAで使いたいのです。

どなたか助けていただけませんか?

よろしくお願いします。

ジョー
 
mladen:
iCustom()が返す値を12と15で比較します。

SDAがレベル15を超えたら、iCustom()にどのようにコード化するか興味があります。

ありがとうございました。

 
Sanz50:

SDAがレベル15を超えたら、iCustom()にどのようにコード化するか興味があります。

ありがとうございました。

そのコードをデコンパイルすると...
 
これは、2つのバッファを持つイコールインジケーターなので、iCustomで動作させることができます。
ファイル:
my filter.ex4  9 kb
 
Sanz50:
これは2つのバッファを持つイコールインジケータなので、iCustomで動作させることができます。
:)

バッファ1とバッファ2を確認- 他に確認できることは?)