FC2ブログ

# Variable Index Dynamic Average
# 引数 期間 期間 値 ($Period_Short, $Period_Long, $Price)
# 戻り値 VariableIndexDynamicAverage (@vidya)
sub VIDYA{
my ($Period_Short, $Period_Long, $Price) = @_;
my @vidya = ();
if($Period_Short > $Period_Long){
($Period_Short, $Period_Long) = ($Period_Long, $Period_Short)
}
my $count = @$Price - $Period_Long;

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

# 計算
my $num = &STDDEV($Period_Short, $Price);
my $den = &STDDEV($Period_Long, $Price);
$vidya[$count] = $$Price[$count];
for(my $i = $count - 1; $i >= 0; $i--){
my $alpha = 0.2 * ($num / $den);
# Variable Index Dynamic Average
$vidya[$i] = ($alpha * $$Price[$i]) + ((1 - $alpha) * $vidya[$i + 1]);
}

return @vidya;
}


参考URL
perlでテクニカル分析 20 標準偏差 (Standard Deviation: STDDEV)
オンライン コンパイラ/インタプリタ
テクニカル分析
プロフィール

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

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

検索フォーム


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