インディケータ: LSMA

 

LSMA:

典型的な移動平均


作者: Nikolay Kositsin

 
平滑化期間を50以外に設定すると、インジケータがチャートから消えてしまいます。なぜこのようなことが起こるのでしょうか?
 

Clinn:
У меня, если выставляю любой период сглаживания, отличный от 50, индикатор пропадает с графика. Почему такое может происходить?

ポイントは、著者のアルゴリズム自体がハンプしているため、チャートからのムービングが 垂直方向に大きく離れて泳いでいることだ!

 

このインジケーターにはバグ/エラーがあり、「スムージングの深さ」に21~49の数値を入力すると、LSMAのライン位置が上にシフトしてしまう。また、垂直シフトの ラベルに1文字余分なタイプミスがあります:

input int PriceShift=0; // インジケータの垂直シフト(ポイント単位)х
 
xtemer 垂直シフトの ラベルに1文字余分なタイプミスがあります:

これが本当にこの古いインジケータのバグなのか、それともコンパイラ/MT内部計算の動作が変更されたものなのかはわかりません(Metaquotesはそうするのが好きです ;)。

ここでの問題は、2つのintをdoubleに分割することで、結果は常にintの値に丸められます:

double length = (period + 1) / 3;   // (51 + 1) / 3 = 17.0, while 
double length = (period + 1) / 3.0; // (51 + 1) / 3.0 = 17.3333...

いずれにせよ、修正版が出るまでは 私のバージョンを使ってください。

ファイル:
LSMA.mq5  10 kb
 

このインジケータはいくつかの期間で 機能していない