FC2ブログ

# Simplifying Simple Moving Averages
# 引数 期間 期間 値 ($Period, $Price)
# 戻り値 SimplifyingSimpleMovingAverages (@ssma)
sub SSMA{
my ($Period, $Price) = @_;
my @ssma = ();
my $count = @$Price - (2 ** $Period);

# 期間と配列数の確認
if(($Period <= 0) || ($count < 0)){
return 0;
}

# 計算
my $i = 0;
my $p = 1;
my @tmp = @$Price;
while($i < $period){
my $k = (2 ** $i);
@ssma = ();
# 最後に平均を出す
if($i == ($Period - 1)){
$p = (2 ** $Period);
}

for(my $j = (@tmp - 1) - $k; $j >= 0; $j--){
# Simplifying Simple Moving Averages
$ssma[$j] = ($tmp[$j] + $tmp[$j + $k]) / $p;
}

@tmp = @ssma;
$i++;
}

return @ssma;
}


参考URL
http://www.mesasoftware.com/technicalpapers.htm
のSimplifying Simple Moving Averages

一言
Ehlers MESA Adaptive Moving Averageを書こうとしたけど、書いてある内容がまだわからないので後回し
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

Author:雨宮
Firefoxを使用しているので気づかなかったけど、IE6でソースコードを上手くコピーできない

5/3
携帯用ならIE6でもソースコードをコピーできる
携帯用

検索フォーム


あわせて読みたいブログパーツ
一寸先は闇 RSS