[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 790

 
obla4ko:

それは変ですね。Momentumのことですね、マシュカと何の関係があるんですか?

これはどうでしょう?

doubleiMomentum() 文字列 symbol, int timeframe, intperiod, int applied_price, int shift)
 
artmedia70:

それは変ですね。Momentumのことですね、マシュカと何の関係があるんですか?

これはどうでしょう?

doubleiMomentum() 文字列 symbol, int timeframe, int period, int applied_price, int shift)
私は実際に同じことを言っている - MT4-モメンタム(上記のコードを参照してください)のみ NO(!!!)。
doubleiMomentum())

......そして問題は、それをどこに、どのように入れるかである。

文字列記号
がない場合は、既存のmt4-motroomのコードに追加してください。
doubleiMomentum())

...

に基づいて書き直す

doubleiMomentum()

それとも、既存のコードに書き込むことができるのでしょうか!

 
obla4ko:
私は実際に同じことを意味する - MT4-モメンタム(上記のコードを参照してください)のみ NO(!!!)。

正直、私も質問の意味がわかりません。

double iMomentum( string symbol, int timeframe, int period, int applied_price, int shift) 
効かないのか、何なのか。
 
Abzasc:

正直なところ、私も質問の意味がよくわかりません。

効かないのか?

Poundの窓にかけるEuraのモメンタムが欲しいです!- で、シンボルを別に書かないと、ウィンドウに添付されている通貨がデフォルトになる......。なるほど、なぜこんなにも必要なのか :))?
 
コードのどこに記号があるのか、一緒に考えてみましょう。よく見ると、Close[i] 以外に価格パラメータが使われていないことがわかります。Close[]の 参照を調べると、この時系列は現在の シンボルでの終値 であることがわかります。しかし、別の時系列であるiClose( string symbol, int timeframe, int shift) では、指定した シンボルからデータを取得することができます。そこで、コード中のClose[i]iClose( _Symbol, 0, i) に置き換え、外部変数extern string_Symbol="EURUSD" を入力し、そこに必要なシンボルの値を設定して結果を楽しむことができるのです。テストはしていませんが、うまくいくはずです。
 
granit77:
コードのどこに記号が存在するのか、一緒に考えてみましょう。ざっと見たところ、Close[i] 以外の価格パラメータは使用されていないことがわかります。リファレンスのClose[] を見て、この時系列が現在の シンボルでの終値であることを確認しましょう。しかし、別の時系列であるiClose( string symbol, int timeframe, int shift) では、指定したシンボルからデータを取得することができます。そこで、コード中のClose[i]iClose( _Symbol, 0, i) に置き換え、外部変数extern string_Symbol="EURUSD" を入力し、そこに必要なシンボルの値を設定して結果を楽しむことができるようにします。確認はしていませんが、動作するはずです。


なかなかこうはいきませんね。いつもながら、「悪魔はニュアンスの中にいる」ですね。

現在のシンボル上にある別のシンボルのバーを基にインジケータを表示しようとする場合、バーを一致させるように注意する必要があります。

つまり、異なるシンボルの同じ時刻のバーナンバーは同じでない場合があります。

 
obla4ko:
パウンドウィンドウにかけるエウラモーメンタムが欲しいです!- で、シンボルを別に書かないと、ウィンドウに添付されている通貨がデフォルトになる......。なるほど、だからこんなにも必要なのか :))?

あ、データの引き出しが必要なんだっけ...。

インジケータを作って、iMomentum 経由でデータを引き込むとか...。 または iMomentumOnArrayかも しれません。

 
PapaYozh:


そうでもないんです。いつもながら「悪魔はニュアンスの中にいる」ですね。

現在のシンボル上にある別のシンボルのバーを基にインジケータを表示しようとする場合、バーを一致させるように注意する必要があります。

つまり、異なるシンボルの同じ時刻のバーナンバーは一致しない場合があります。

以前はどこにいたのですか?その通りです。追加しました、動作しています。

//+------------------------------------------------------------------+
//|                                                     Momentum.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net/"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- input parameters
extern int     MomPeriod = 14;
extern string  _Symbol   = "EURUSD"; 
//---- buffers
double MomBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   string short_name;
//---- indicator line
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,MomBuffer);
//---- name for DataWindow and indicator subwindow label
   short_name="Mom("+MomPeriod+")";
   IndicatorShortName(short_name);
   SetIndexLabel(0,short_name);
//----
   SetIndexDrawBegin(0,MomPeriod);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Momentum                                                         |
//+------------------------------------------------------------------+
int start()
  {
   int i,counted_bars=IndicatorCounted();
   
//----
   if(Bars<=MomPeriod) return(0);
//---- initial zero
   if(counted_bars<1)
      for(i=1;i<=MomPeriod;i++) MomBuffer[Bars-i]=0.0;
      
//----
   
   i=Bars-MomPeriod-1;
   if(counted_bars>=MomPeriod) i=Bars-counted_bars-1;
   while(i>=0)
     {
      int baropen =iBarShift(_Symbol,0,Time[i]);
      int barclose=iBarShift(_Symbol,0,Time[i+MomPeriod]);
      MomBuffer[i]=iClose(_Symbol,0,baropen) *100/iClose(_Symbol,0,barclose);
      i--;
     }
   return(0);
  }
 
granit77:

以前はどこにいたのですか?その通りです。追加しました、動作しています。


よくやった、Victor!
そして、雲は沈黙する...。:))
 
granit77:

以前はどこにいたのですか?それはそうですね。追加しました、動作しています。


まあ、このスレッドを片目で見ながら、時々返信しています。

だから「失礼します」と、いわば可能な限りの手助けをする。

:)