初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 212

 
paladin800:

インジケーターのリンクをたどると、8つの入力パラメーターがあることがわかります。そのうちの2つの文字列(s1とs2)は、インジケータに値を渡しませんが、何らかの方法でハンドラに含める必要があります。次のことを行ってください。

これは効きますね!ありがとうございました。
 

私のEAのチャートウィンドウでは、利益は、両方のフォントサイズが 小さく、フォントの色がそう碑文の残りの部分と合併している場所に表示され、コードでは、次のようになります。

コメント(利益)

プログラマーさん、コードのフォントサイズを変更したいのですが、色を変更することもできますか?

 
rus-lot:

私のEAのチャートウィンドウでは、利益は、両方のフォントサイズが 小さく、フォントの色がそう碑文の残りの部分と合併している場所に表示され、コードでは、次のようになります。

コメント(利益)

プログラマーさん、コードのフォントサイズを変更したいのですが、色を変更することもできますか?

テキストマークが 効かない?
 
皆さん、助けてください。現在、不明確な注文がぶら下がっているため、急募しています...。もし、シグナルの作者がいくつかの取引を成立させているのに、私の取引は成立していないとしたら、それは何かがうまく機能していないということですよね?このような場合、手動で取引を終了してもよいのでしょうか?
 
Silent:
テキストマーク ではダメなのでしょうか?
下手くそながらやってみますが、一見するとテキストの動かし方が書いてあり、私のテキストは利益の状態、つまり変化しやすい値です。
 
rus-lot:
私はこれらの問題で非常に遠いですが、私はそれを試してみますが、一見、テキストを移動する方法を示し、私のテキストは、いわば変数の値を利益の状態です。

profitを文字列にして、この文字列をラベルに入れる。

このスクリプトは そのように書かれています。

 
Silent:

を文字列にして、このテキストをラベルに入れます。

このスクリプトは そのように書かれています。

私の利益は、2つの通貨ペアで計算されていることです。
 
rus-lot:
私の利益は、2つの通貨ペアで計算されていることです。

利益を足し算して、換算(演算結果を出力)する。

または行を追加する(詳細はこちら)(1行に2値出力)。

または2点、それぞれprofit1、profit2)...。

どっちを出力しても同じです。

 
Silent:

利益を足し算して、換算(演算結果を出力)する。

または行を追加する(詳細はこちら)(1行に2値出力)。

または2つのマーク、それぞれprofit1、profit2)...。

出力することで何が変わるのでしょう。

初心者には難しいのですが、こんな風にウィンドウに利益が表示されたらと思い

コメント(profit1+profit2)

であれば、1行分低くするために、次の記号"˶‾‾‾"を付けます。

Comment("\n", profit1+profit2)

だから、フォントサイズを大きくするには、この行に別の記号を追加することが可能であろうと思ったし、あなたが言うことは、私のためにそれは複雑だろうと私はそこに何かを理解していない再びそれを行うことはありません。

 
paladin800:

インジケーターのリンクをたどると、8つの入力パラメーターがあることがわかります。そのうちの2つの文字列(s1とs2)はインジケータに値を渡しませんが、何らかの方法でハンドラに含める必要があります。こんな風にしたらいいんじゃない?

このインディケータ(https://www.mql5.com/ru/code/1806) からは、ダイバージェンスを見つけたときに、市場に参入するシグナルを得ることができません。

 MACD_Divergence__Handle=iCustom(NULL,0,"MACD_Divergence",
                                "---",
                                MACD_Divergence__fastEMA,
                                MACD_Divergence__slowEMA,
                                MACD_Divergence__signalMA,
                                "---",
                                drawIndicatorTrendLines,
                                drawPriceTrendLines,
                                displayAlert);
   if(MACD_Divergence__Handle==INVALID_HANDLE)                               
     {
      Print(" Не удалось получить хендл индикатора MACD_Divergence");
      return(INIT_FAILED);
     }
......................................
void OnDeinit(const int reason)
  {
IndicatorRelease(MACD_Divergence__Handle);

......................................
void OnTick()
  {
  ArraySetAsSeries(bullishDivergenceBuffer,true);
   ArraySetAsSeries(bearishDivergenceBuffer,true);
   ArraySetAsSeries(macdBuffer,true);
   ArraySetAsSeries(signalBuffer,true);
......................................
   if(CopyBuffer(MACD_Divergence__Handle,0,0,30,bullishDivergenceBuffer)<0 || CopyBuffer(MACD_Divergence__Handle,1,0,30,bearishDivergenceBuffer)<0)
      
           {
      Alert("Ошибка копирования значений индикаторных буферов индикатора MACD_Divergence :",GetLastError(),"!!");
      return;
           }
    if(
       CopyBuffer(MACD_Divergence__Handle,2,0,3,macdBuffer)<0 ||CopyBuffer(MACD_Divergence__Handle,3,0,3,signalBuffer)<0 )
           {
      Alert("Ошибка копирования значений индикаторных буферов индикатора MACD_Divergence :",GetLastError(),"!!");
      return;
           }       
           
           
Print(" !!!!!!!!!!!!!!!! bullishDivergenceBuffer =  ",bullishDivergenceBuffer[0]);
Print(" !!!!!!!!!!!!!!!! bearishDivergenceBuffer =  ",bearishDivergenceBuffer[0]);
Print(" !!!!!!!!!!!!!!!! macdBuffer =  ",macdBuffer[0]);
Print(" !!!!!!!!!!!!!!!! signalBuffer =  ",signalBuffer[0]);

技術的には問題ないようで、どの段階でもGetLastErrorやINVALID_HANDLEの ようなエラーはありません。

2014.03.14 19:34:15 コア1 2014.03.03 16:00:00 !!! bullishDivergenceBuffer = 1.797693134862316e+308
2014.03.14 19:34:15 コア1 2014.03.03 16:00:00 !!!!!!! bearishDivergenceBuffer = 1.797693134862316e+308
2014.03.14 19:34:15 15 コア1 2014.03.03 16:00:00 !!! signalBuffer = 0.001566958632905211
2014.03.14 19:34:15 Core 1 2014.03.03 16:00:00 !!! macdBuffer = 0.001471813911680497

これらの値を取得するにはどうしたらよいですか?インジケータ自体に値があり、Printで 出力してみたところ、極値の値が表示されましたが、なぜEAに渡らないのでしょうか?

いろいろなバリエーションを試しましたが、結果は同じです。CopyBufferの リクエストは別のものにすべきかもしれませんが、どのように?検索しても何も出てこない。

それともEAのバー0の値とインジケータの[currentExtremum]の値が相関していないのでしょうか?どうすれば両立できるのか?

MACD Divergence
MACD Divergence
  • 投票: 24
  • 2013.11.04
  • Alain Verleyen
  • www.mql5.com
Индикатор выводит линии дивергенции индикатора MACD и отображает сигналы на покупку и продажу при помощи стрелок.
理由: