The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
# Copyright 2009 Kevin Ryde

# This file is part of Chart.
#
# Chart is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
# Foundation; either version 3, or (at your option) any later version.
#
# Chart is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along
# with Chart.  If not, see <http://www.gnu.org/licenses/>.

package App::Chart::StockMonkey;
use strict;
use warnings;

# my @averages = qw(Math::Business::SMA
#                   Math::Business::EMA
#                   Math::Business::WMA
#                   Math::Business::HMA
# 
#          my $avg = new Math::Business::EMA;
#             $avg->set_days(7);
# 
#          my @closing_values = qw(
#              3 4 4 5 6 5 6 5 5 5 5
#              6 6 6 6 7 7 7 8 8 8 8
#          );
# 
#          # choose one:
#          $avg->insert( @closing_values );
#          $avg->insert( $_ ) for @closing_values;
# 
#          if( defined(my $q = $avg->query) ) {
# 
# Math::Business::LaguerreFilter
#          my $avg = new Math::Business::LaguerreFilter;
#             $avg->set_days(9);
#             $avg->set_alpha(0.2); # same (roughly)
# 
#          my @closing_values = qw(
#              3 4 4 5 6 5 6 5 5 5 5
#              6 6 6 6 7 7 7 8 8 8 8
#          );
# 
#          # choose one:
#          $avg->insert( @closing_values );
#          $avg->insert( $_ ) for @closing_values;
# 
#          if( defined(my $q = $avg->query) ) {
# 
# Math::Business::MACD
#          print "       MACD: ", scalar $macd->query,    "\n",
#                "Trigger EMA: ", $macd->query_trig_ema,  "\n",
#                "   Fast EMA: ", $macd->query_fast_ema,  "\n",
#                "   Slow EMA: ", $macd->query_slow_ema,  "\n";
#                "  Histogram: ", $macd->query_histogram, "\n";
# 
# Math::Business::RSI
#          my $rsi = Math::Business::RSI->recommended;
# 
# Math::Business::BollingerBands
# 
# Math::Business::ATR
#              [ 5, 3, 4 ], # high, low, close
#              [ 6, 4, 5 ],
#              [ 5, 4, 4.5 ],
#          );
# 
#          # choose one:
#          $atr->insert( @data_points );
#          $atr->insert( $_ ) for @data_points;
# 
# Math::Business::DMI
#          my @data_points = (
#              [ 5, 3, 4 ], # high, low, close
#              [ 6, 4, 5 ],
#              [ 5, 4, 4.5 ],
#          );
# 
#          # choose one:
#          $dmi->insert( @data_points );
#          $dmi->insert( $_ ) for @data_points;
# 
# Math::Business::ParabolicSAR
#          my @data_points = (
#              ["35.0300", "35.1300", "34.3600", "34.3900"],
#              ["34.6400", "35.0000", "34.2100", "34.7400"],
#              ["34.6900", "35.1400", "34.3800", "34.7900"],
#              ["35.2900", "35.7900", "35.0800", "35.5200"],
#              ["35.9000", "36.0600", "35.7500", "36.0600"],
#              ["36.1300", "36.7200", "36.0500", "36.5800"],
#              ["36.4100", "36.6400", "36.2600", "36.6100"],
#              ["36.3500", "36.5500", "35.9400", "35.9700"],
#          );
# 
#          # choose one:
#          $sar->insert( @data_points );
#          $sar->insert( $_ ) for @data_points;
# 
#          my $sar = $sar->query;
#          print "SAR: $sar\n";

1;
__END__