#!/usr/bin/perl
#  invest.pl - an extremely simple hack to help me keep track of my
#              investments.
#
#  Written by Curtis Olson.  Started September 1, 1995.
#
#  Copyright (C) 1995, 1996  Curtis L. Olson  - curt@sledge.mn.org
#
#  The format of an input file would be something like the following.
#  Note, fields should separated by one or more tabs.
#
# -------------------------------------------------------------------
# | # Date          Description             Shares  Unit Price
# | #-----          -----------             ------  ----------
# | #19960101       Beginning of 1996       99.265  52.18
# | #19960201       Updated value           0.000   52.66
# -------------------------------------------------------------------
#
#  This program 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 2 of the License, or
#  (at your option) any later version.
#
#  This program 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 this program; if not, write to the Free Software
#  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

# $Id: invest.pl,v 2.2 1996/07/13 02:58:23 curt Exp $
# (Log is kept at end of this file)


$total_shares = 0;
$total_invest = 0;
$acct_value = 0;

print "                                        Price   Total\n";
print "                                New     per     Shares  Total   Total\n";
print "Date     Description            Shares  Share   Owned   Invstd  Value\n";
print "-------- ---------------------- ------  ------  ------  ------  ------\n";

while ( <> ) {
    chop($_);

    if ( m/^[ \t]*#/ ) {
	# toss the comment
    } else {
	($date, $desc, $shares, $price) = split(/\t+/, $_);
	if ( $shares < 25 ) {
	    $reinv = $shares * $price;
	    $invest = 0;
	} else {
	    $reinv = 0;
	    $invest = $shares * $price;
	}

	$total_shares += $shares;
	$total_invest += $reinv + $invest;
	$acct_value = $total_shares * $price;

        printf "%s %-22s\t%-7.3f\t%.2f\t%.3f\t%.2f\t%.2f\n", $date, $desc, 
		$shares, $price, $total_shares, $total_invest, $acct_value;
    }
}


# ----------------------------------------------------------------------------
# $Log: invest.pl,v $
# Revision 2.2  1996/07/13 02:58:23  curt
# Misc. changes.
#
# Revision 2.1  1996/02/27  05:36:03  curt
# Just stumbling around a bit with cvs ... :-(
#
# Revision 2.0  1996/02/27  04:43:12  curt
# Initial 2.0 revision.  (See "Log" files for old history.)
