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

 

こんばんは。

面白いアドバイザー「Frank_ud」がいます、質問 - アルパリ用にシャープにするにはどうしたらいいですか?

 
volshebnik:
アレクセイ、君の言うとおりだ。EAを確認したところ、MA期間=6とした場合 ...10 ... 私のExpert Advisorは、1ヶ月のテストの後にハングアップします...テストが停止し、ハングアップする。 Expert Advisorは単に取引を開始しないだけでした。テスターがハングアップするのはなぜですか?

ゼロディバイドが ログブックに書かれていれば、もっと簡単なんですけどね。

しかし、この方法では、各ブロックにプリントを配置し、イベントの進行状況を監視する必要があります。

サイクルの問題かもしれません。

 

Momentumインジケーターの 計算式を変更する方法を教えてください。

 
このインジケータをここに置いてください、お見せします。
 
| Momentum.mq4(モーメンタム・エム・キューブ)|株式会社日立製作所
//| 著作権 © 2004, MetaQuotes Software Corp.
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "著作権 © 2004, MetaQuotes Software Corp.
#プロパティリンク "http://www.metaquotes.net/"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- 入力パラメータ
extern int MomPeriod=14;
//---- バッファ
double MomBuffer[];
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init()
{
文字列のshort_name。
//---- インジケータライン
SetIndexStyle(0,DRAW_LINE)を設定します。
SetIndexBuffer(0,MomBuffer)を設定します。
//---- DataWindowとインジケータサブウィンドウのラベル名
short_name="ママ("+MomPeriod+")";
IndicatorShortName(short_name)。
SetIndexLabel(0,short_name)を設定する。
//----
SetIndexDrawBegin(0,MomPeriod)を設定します。
//----
return(0)です。
}
//+------------------------------------------------------------------+
| モメンタム
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=MomPeriod) return(0);
//---- 初期値ゼロ
if(counted_bars<1)
for(i=1;i<=MomPeriod;i++) MomBuffer[Bars-i]=0.
//----
i=Bars-MomPeriod-1です。
if(counted_bars>=MomPeriod) i=Bars-counted_bars-1;
while(i>=0)
{
MomBuffer[i]=Close[i]-Close[i+MomPeriod];
i--;
}
return(0)です。
}
//+------------------------------------------------------------------+
 

では、質問その2です。

いったい何なんだ

 
| Momentum.mq4(モーメンタム・エム・キューブ)|株式会社日立製作所
//| 著作権 © 2004, MetaQuotes Software Corp.
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "著作権 © 2004, MetaQuotes Software Corp.
#プロパティリンク "http://www.metaquotes.net/"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- 入力パラメータ
extern int MomPeriod=14;
//---- バッファ
double MomBuffer[];
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init()
{
文字列のshort_name。
//---- インジケータライン
SetIndexStyle(0,DRAW_LINE)を設定します。
SetIndexBuffer(0,MomBuffer)を設定します。
//---- DataWindowとインジケータサブウィンドウのラベル名
short_name="ママ("+MomPeriod+")";
IndicatorShortName(short_name)。
SetIndexLabel(0,short_name)を設定する。
//----
SetIndexDrawBegin(0,MomPeriod)を設定します。
//----
return(0)です。
}
//+------------------------------------------------------------------+
| モメンタム
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=MomPeriod) return(0);
//---- 初期値ゼロ
if(counted_bars<1)
for(i=1;i<=MomPeriod;i++) MomBuffer[Bars-i]=0.
//----
i=Bars-MomPeriod-1です。
if(counted_bars>=MomPeriod) i=Bars-counted_bars-1;
while(i>=0)
{
MomBuffer[i]=Close[i]-Close[i+MomPeriod];
i--;
}
return(0)です。
}
//+------------------------------------------------------------------+
 

具体的にどのような数式を変更する必要があるのでしょうか?つまり、どのような新しい数式を追加したいのでしょうか?

PS.

インジケータを誤って2回発行してしまったようです

 

すみません、もう前作に手を出してしまいました。

こちらがその原型です。

| Momentum.mq4(モーメンタム・エムキューブ)|株式会社日立製作所
//| 著作権 © 2004, MetaQuotes Software Corp.
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "著作権 © 2004, MetaQuotes Software Corp.
#プロパティリンク "http://www.metaquotes.net/"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- 入力パラメータ
extern int MomPeriod=14;
//---- バッファ
double MomBuffer[];
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init()
{
文字列のshort_name。
//---- インジケータライン
SetIndexStyle(0,DRAW_LINE)を設定します。
SetIndexBuffer(0,MomBuffer)を設定します。
//---- DataWindowとインジケータサブウィンドウのラベル名
short_name="ママ("+MomPeriod+")";
IndicatorShortName(short_name)。
SetIndexLabel(0,short_name)を設定する。
//----
SetIndexDrawBegin(0,MomPeriod)を設定します。
//----
return(0)です。
}
//+------------------------------------------------------------------+
| モメンタム
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=MomPeriod) return(0);
//---- 初期値ゼロ
if(counted_bars<1)
for(i=1;i<=MomPeriod;i++) MomBuffer[Bars-i]=0.
//----
i=Bars-MomPeriod-1です。
if(counted_bars>=MomPeriod) i=Bars-counted_bars-1;
while(i>=0)
{
MomBuffer[i]=Close[i]*100/Close[i+MomPeriod];
i--;
}
return(0)です。
}

//+------------------------------------------------------------------+

この指標では、計算式はMOMENTUM = CLOSE (i) / CLOSE (i - n) * 100 とする必要があります。

MOMENTUM = CLOSE (i) - CLOSE (i - n)
 
lordsnake:

すみません、もう前作に手を出してしまいました。

以下はその原文です。

| Momentum.mq4(モーメンタム・エムキューブ)|株式会社日立製作所
//| 著作権 © 2004, MetaQuotes Software Corp.
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "著作権 © 2004, MetaQuotes Software Corp.
#プロパティリンク "http://www.metaquotes.net/"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- 入力パラメータ
extern int MomPeriod=14;
//---- バッファ
double MomBuffer[];
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init()
{
文字列のshort_name。
//---- インジケータライン
SetIndexStyle(0,DRAW_LINE)を設定します。
SetIndexBuffer(0,MomBuffer)を設定します。
//---- DataWindowとインジケータサブウィンドウのラベル名
short_name="ママ("+MomPeriod+")";
IndicatorShortName(short_name)。
SetIndexLabel(0,short_name)を設定する。
//----
SetIndexDrawBegin(0,MomPeriod)を設定します。
//----
return(0)です。
}
//+------------------------------------------------------------------+
| モメンタム
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=MomPeriod) return(0);
//---- 初期値ゼロ
if(counted_bars<1)
for(i=1;i<=MomPeriod;i++) MomBuffer[Bars-i]=0.
//----
i=Bars-MomPeriod-1です。
if(counted_bars>=MomPeriod) i=Bars-counted_bars-1;
while(i>=0)
{
MomBuffer[i]=Close[i]*100/Close[i+MomPeriod]; // これ

MomBuffer[i]=Close[i] - Close[i+MomPeriod]; // この
に変更します。

i--;
}
return(0)です。
}

//+------------------------------------------------------------------+

この指標では、数式MOMENTUM = CLOSE (i) / CLOSE (i - n) * 100 しかし、私は必要です。

MOMENTUM = CLOSE (i) - CLOSE (i - n)