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

 

インジケータライン val1[]に時間を代入する方法を教えてください。もしくは、やり方や使い方が分からないので教えてください。ラゲール指標。

i=CountBars-1;
   while(i>=0)
   {
      L0A = L0;
      L1A = L1;
      L2A = L2;
      L3A = L3;
      L0 = (1 - gamma)*Close[i] + gamma*L0A;
      L1 = - gamma *L0 + L0A + gamma *L1A;
      L2 = - gamma *L1 + L1A + gamma *L2A;
      L3 = - gamma *L2 + L2A + gamma *L3A;

      CU = 0;
      CD = 0;
      
      if (L0 >= L1) CU = L0 - L1; else CD = L1 - L0;
      if (L1 >= L2) CU = CU + L1 - L2; else CD = CD + L2 - L1;
      if (L2 >= L3) CU = CU + L2 - L3; else CD = CD + L3 - L2;

      if (CU + CD != 0) LRSI = CU / (CU + CD);
      val1[i] = LRSI;
          i--;
        }
         

   if(counted_bars>0)
      counted_bars--;
   
   limit=Bars-counted_bars;
   
   if(limit>CountBars)
      limit=CountBars;
  
   for(int c=1;c<limit;c++)
        
{if(val1[c]>0.45)
  // присваиваем время;}

例えば、線分val1[c]が0.45を上方向に横切った時はTimeBeginに、下方向に横切った時はTimeEndに時間値が設定されます。といった具合に、チャート全体を通して

考え方としては、線が0.45を上に、0.45を下に横切った後、この期間、チャート上のポイントを数える(このシグナルに対して、インジケータは最大何ポイント与えたか)ということです。説明できたでしょうか。

ファイル:
 
VeyRON123:
パソコンのインターネットをオフにせずに、MT4自体をインターネットから切り離す方法はありますか?
hrenfx 2011.03.20 16:18

端末設定の「プロキシ」チェックボックスで、ブローカーとの接続を解除します。一挙手一投足で、オフラインかオンラインか。

 
こんにちは、標準のOrderSend 関数が動作しない理由を教えていただけませんか? このサイトのチュートリアルからソースコードを取っただけですが、何も起こりません。エラー出力を追加すると、「4109 -配列内の 初期化されていない文字列」と表示されました...。
 
ヒントありがとうございます!調べてみます・・・。
 
Golden-dark:
こんにちは、標準のOrderSend 関数が動作しない理由を教えていただけませんか? このサイトのチュートリアルからソースコードを取っただけですが、何も起こりません。エラー出力を追加すると、「4109 - 配列内の初期化されていない文字列」と表示されました...。
フルコードを表示する
 

同志の皆さん、ごきげんよう。

以下のコードで何がエラーになるのか、教えていただけませんか?

//+------------------------------------------------------------------+
//|                                                         BB_k.mq4 |
//|                                                     |
//|                                                          no link |
//+------------------------------------------------------------------+
#property copyright "123"
#property link      "no link"

#property indicator_separate_window
#property indicator_buffers 1

#property indicator_color1 MediumSpringGreen

#property indicator_width1 1

double   buf_0[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {

   SetIndexBuffer (0, buf_0);
   SetIndexStyle (0, DRAW_LINE);
   SetIndexLabel (0, "Koefficient");
   SetIndexShift (0, 0);

   return;
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int i;
   int    counted_bars=IndicatorCounted();
//----
   i = Bars - counted_bars - 1;
   
   while (i>=0)
   {
      double x1 = iBands(NULL, 0, 20, 2, 0, PRICE_LOW, 1, i); //Верхняя полоса
      double x2 = iBands(NULL, 0, 20, 2, 0, PRICE_LOW, 2, i); //Нижняя полоса
   
      buf_0[i] = x1 / x2;
      i--;
   }
//----
   return(0);
  }
//+------------------------------------------------------------------+

要は、ボリンジャーバンドの上限を下限で割った値のラインを表示するインジケータが欲しいということです。

しかし、結果が出ない。

インジケーターウィンドウは空です。

どなたかお分かりになる方がいらっしゃいましたら、よろしくお願いします

 
ramirez17:

同志の皆さん、ごきげんよう。

以下のコードで何がエラーになるのか、教えていただけませんか?

要は、ボリンジャーバンドの上限を下限で割った値のラインを表示するインジケータが欲しいということです。

しかし、結果が出ない。

インジケーターウィンドウは空です。

どなたかお分かりになる方がいらっしゃいましたら、よろしくお願いします

buf_0[i] = x1 / x2;

は、左端のバーがx2=0になっていますね。そして、ゼロで割るというのは、あまり良いことではありません...。

 
ilunga:

は、左端のバーがx2=0になっていますね。そして、ゼロで割るというのは、あまり良いことではありません...。


例えば、どのようなことをすればいいのでしょうか。
 
ramirez17:

例えば、どのようなことをすればいいのでしょうか。
if (x2 == 0) buf_0[i] = 0;
else buf_0[i] = x1 / x2;
全く発生しない方が良いのです。
 
ヒントを教えてください。買いと売りの2つの条件があります。売りに偽の信号をキャッチした後、例えば購入するには、エキスパートアドバイザーは、この偽の信号によって再び次の位置を開くために開始し、再び偽のものをキャッチします。損切り後に反対方向のシグナルを待ち、再び偽のシグナルで開かないようにするにはどうしたらよいでしょうか。ありがとうございました。