[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 399

 
kolyango:

リンク先は必ず見ますので...。

Criterion.mqh.

プラグインの内容を書き込むと、それだけで何も開かず、ダウンロードもされません


そして、そう前のページから、試してみました: "トレーラー上でマウスを右クリックし、メニューで "名前を付けて保存"?

試してみたところ、ちゃんとダウンロードされています。


 
Roman.:


前ページの「予告編を右クリックし、メニューの "リンクとして保存"」から、この方法を試されましたか?

試してみたところ、私の場合は問題なく使えています。



ダウンロードしました。なぜ.mq4ではなく、.mqhなのか?
 

インジケーターの追加ウィンドウの背景色を 変更する方法、またはプロファイルで追加ウィンドウの背景色を指定する方法を教えてください。

//+------------------------------------------------------------------+
//|                                                  Custom MACD.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property  copyright "Copyright © 2004, MetaQuotes Software Corp."
#property  link      "http://www.metaquotes.net/"
//---- indicator settings
#property  indicator_separate_window
#property  indicator_buffers 2
#property  indicator_color1  Silver
#property  indicator_color2  Red
#property  indicator_width1  2
//---- indicator parameters
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
//---- indicator buffers
double     MacdBuffer[];
double     SignalBuffer[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- drawing settings
   SetIndexStyle(0,DRAW_HISTOGRAM);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexDrawBegin(1,SignalSMA);
   IndicatorDigits(Digits+1);
//---- indicator buffers mapping
   SetIndexBuffer(0,MacdBuffer);
   SetIndexBuffer(1,SignalBuffer);
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName("MACD("+FastEMA+","+SlowEMA+","+SignalSMA+")");
   SetIndexLabel(0,"MACD");
   SetIndexLabel(1,"Signal");
//---- initialization done
   return(0);
  }
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence                           |
//+------------------------------------------------------------------+
int start()
  {
   int limit;
   int counted_bars=IndicatorCounted();
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
//---- macd counted in the 1-st buffer
   for(int i=0; i<limit; i++)
      MacdBuffer[i]=iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i);
//---- signal line counted in the 2-nd buffer
   for(i=0; i<limit; i++)
      SignalBuffer[i]=iMAOnArray(MacdBuffer,Bars,SignalSMA,0,MODE_SMA,i);
//---- done
   return(0);
  }
//+------------------------------------------------------------------+
 
kolyango:

ダウンロードしました。なぜ.mq4ではなく、.mqhなのか?


プラグインファイルであるため、例えば。

#include <stdlib.mqh>
#include <stderror.mqh>
//#include <dynamic_channel.mqh>             // динамический канал
#include <TrailingByFractals.mqh>          // trailing
チュートリアルを 読む - これが#includeディレクティブです。
 

こんにちは。

サブウィンドウ(グラフィカルオブジェクト)に0から4までの縦棒(ヒストグラム)を描く方法(例)を教えてください。

ポイントは、インジケーターサブウィンドウに0ラインがあり、その両側にブレイクダウンシグナル(売り下がり、買い上がり)が表示される点です。

バッファでやる方法は知っているが、使えるバッファがなく、使い果たした。

ありがとうございます。

 
LOA:

こんにちは。

サブウィンドウ(グラフィックオブジェクト)に0から4までの縦棒(ヒストグラムなど)を描く方法を教えてください。


ObjectCreate
 
sergeev:
ObjectCreate

ObjectCreate 関数 、信号4や-4の
ゼロ線に対する 方向によって、グラフィックオブジェクトにどのように値を割り当てるかが難しいことは明らかである。
 
artmedia70:

というくらいにシンプルです。フラグをセマフォとして使ってみよう。3つのコードブロックがあり、各ブロックは前のブロックがすでに実行されている場合にのみ実行されます。

初期状態ではすべてのフラグが==falseです。

1つ目のコードブロックが実行されると同時に、1つ目のフラグ=trueとし、2つ目のコードブロックが実行される。その条件が満たされると同時に、2番目のフラグをtrueに設定する。
今度は3番目のコードブロックが実行されます。その条件を満たすと同時に、3番目のフラグをtrueに設定する; といった具合である。



国旗の作用や使い方の例など、国旗についてもっと詳しく知るためのリンクを教えてください。
 
LOA:

これはObjectCreate 関数で理解することができる
が、難しいのは、ゼロ線に対する信号の方向が4か-4かによって、グラフィックオブジェクトにどのように値を割り当てるかです。

バッファがなくなった ))

#property indicator_separate_window
#property indicator_minimum -8
#property indicator_maximum 8
void start()  {
   ObjectsDeleteAll(1);
   for(int i=0;i<WindowBarsPerChart();i++){
         if(Open[i]>iMA(0,0,5,1,1,4,i))
            double xz=4;
         else xz=-4;
         ObjectCreate(i+" f",OBJ_TREND,1,iTime(0,0,i),0,iTime(0,0,i),xz);
         ObjectSet(i+" f", OBJPROP_RAY, 0);
   }
   WindowRedraw();
}
 
costy_:

バッファが足りません ))

なぜ、間違ったプログラミングを教えるのですか?

ObjectsDeleteAll(1);

このインジケーターウィンドウの記述子==1であることをどうやって確認するのですか?