extern int Per = 6; // Период RSI extern int RSI_Price = 6; // цена :0-Close; 1-Open; 2-High; 3-Low; 4-"high+low)/2"; 5-"(H+L+C)/3"; 6-"(H+L+C+C)/4". extern int up = 70; // Уровень перекупленности индикатора RSI extern int dn = 30; // Уровень перепроданности индикатора RSI extern int N = 6; // Число баров выше уровня перекупленности/ниже уровня перепроданности, больше которого сигнал = "0"
double Buffer[];
int init() { SetIndexStyle(0,DRAW_NONE); SetIndexBuffer(0,Buffer); SetIndexLabel(0,"Sign"); return(0); }
int start() { int counted_bars=IndicatorCounted(); if (Bars <= Per+11) return(0); if (counted_bars > 0) counted_bars--; int limit = Bars-counted_bars;
for (int i=0; i<limit; i++) { double a = iRSI( NULL,0,Per,RSI_Price,i); double b = iRSI( NULL,0,Per,RSI_Price,i+1);
double Sign=1;
int count = 0; if ((a>up) || (a<dn) || (b>up && a<up) || (b<dn && a>dn)) { for (int j=0; j<=N; j++) { double R=iRSI(NULL,0,Per,RSI_Price,j); if((R>up)||(R<dn)) count++; } if (count>N) Sign=0; } Buffer[i] = Sign; } return(0); }
こんばんは!(^o^)
できるのであれば、その方法をアドバイスしてください。EAのテスターで実行すると、使用したインジケータがテスト中にチャートに描画され、ヒストリーを実行した後にのみ表示されないようにするには、EAのコードに何を書けばよいのでしょうか。
それを適切なTFと入力パラメータのシンボルのチャート上、およびテストしたEAに配置し、このテンプレートをEAと同じ名前で保存します。以上です。ストラテジーテスターで このフクロウを実行すると、テスト中、可視化テスト中に使用されたすべてのインジケータが表示されます。
2よくある質問 、ローマ字。 ありがとうございました。
プログラム的に - 難しい、テスターチャートで使用するすべての指標を(必要な設定で)プリロードし、テンプレートをtester.tplとして保存すると、このテンプレートは自動的にロードされます。
ありがとうございました。毎回やってましたよ~。
こんにちは。
信号の算出に 問題がある。
RSIが買われすぎ、または売られすぎをN本以上超えた場合、シグナルは "0"、それ以外の場合、シグナルは "1 "となる。
カウンタが動作していない、つまりレベルの直後に信号 "0 "が発生するなど、サイクルにエラーがあるのかもしれません...。
#property indicator_buffers 1
extern int Per = 6; // Период RSI
extern int RSI_Price = 6; // цена :0-Close; 1-Open; 2-High; 3-Low; 4-"high+low)/2"; 5-"(H+L+C)/3"; 6-"(H+L+C+C)/4".
extern int up = 70; // Уровень перекупленности индикатора RSI
extern int dn = 30; // Уровень перепроданности индикатора RSI
extern int N = 6; // Число баров выше уровня перекупленности/ниже уровня перепроданности, больше которого сигнал = "0"
double Buffer[];
int init()
{ SetIndexStyle(0,DRAW_NONE); SetIndexBuffer(0,Buffer); SetIndexLabel(0,"Sign");
return(0);
}
int start()
{ int counted_bars=IndicatorCounted();
if (Bars <= Per+11) return(0); if (counted_bars > 0) counted_bars--; int limit = Bars-counted_bars;
for (int i=0; i<limit; i++)
{ double a = iRSI( NULL,0,Per,RSI_Price,i);
double b = iRSI( NULL,0,Per,RSI_Price,i+1);
double Sign=1;
int count = 0;
if ((a>up) || (a<dn) || (b>up && a<up) || (b<dn && a>dn))
{ for (int j=0; j<=N; j++)
{ double R=iRSI(NULL,0,Per,RSI_Price,j);
if((R>up)||(R<dn)) count++;
}
if (count>N) Sign=0;
}
Buffer[i] = Sign;
}
return(0);
}
こんにちは、ボリュームは表示されるがティックボリュームは表示されないインジケーターを教えてください。
こんにちは、ボリュームは表示されるがティックボリュームは表示されないインジケーターを教えてください。
午後こちらの 記事をご覧ください。
画面上部-メニューバー-「TA」タブ。
こんな記事もあります
https://www.mql5.com/ru/code/9376
が、何かホームページがおかしいのですが、同じようなものに出会った方はいらっしゃいますか?