NAME
Finance::Bank::US::ShareBuilder - Check positions and transactions for US ShareBuilder investment accounts
VERSION
Version 0.01
SYNOPSIS
use Finance::Bank::US::ShareBuilder;
my $sb = Finance::Bank::US::ShareBuilder->new(
username => 'XXXXX', # Saver ID or customer number
password => 'XXXXXXXXXX',
image => 'I*******.jpg', # The filename of your verification image
phrase => 'XXXXXXXXXXXXXX', # Verification phrase
);
my %accounts = $sb->accounts;
for(keys %accounts) {
printf "%10s %-15s %11s\n", $_, $accounts{$_}{nickname},
'$'.sprintf('%.2f', $accounts{$_}{balance});
}
$sb->print_positions($sb->positions);
DESCRIPTION
This module provides methods to access data from US ShareBuilder accounts, including positions and recent transactions, which can be provided in OFX format (see Finance::OFX) or in parsed lists.
There is no support yet for executing transactions. Code for listing sell transactions was written by analogy based on the OFX spec and has not been tested, due to a lack of data.
METHODS
new( username => '...', password => '...', image => '...', phrase => '...' )
Return an object that can be used to retrieve positions and transactions.
accounts( )
Retrieve a list of accounts:
( '####' => { number => '####', type => '...', nickname => '...', balance => ###.## },
...
)
positions( $account )
List positions for an account:
( { symbol => 'PERL', description => 'Perl, Inc.', quantity => 3.1416,
value => 271.83, quote => 86.52, cost_per_share => 73.12,
basis => 229.71, change => 42.12, change_pct => 18.33 }
...
)
print_positions( @positions )
Pretty-print a set of positions as returned by positions().
recent_transactions( $account, $days )
Retrieve a list of transactions in OFX format for the given account for the past number of days (default: 30).
transactions( $account, $from, $to )
Retrieve a list of transactions in OFX format for the given account in the given time frame (default: past three months).
transaction_list( $account, $from, $to )
Return transactions as a list instead of as OFX.
print_transactions( @txns )
Pretty-print a set of transactions as returned by transaction_list().
usd( $dollars )
Shortcut to format a floating point amount as dollars (dollar sign, commas, and two decimal places).
AUTHOR
This version by Steven N. Severinghaus <sns-perl@severinghaus.org>
COPYRIGHT
Copyright (c) 2011 Steven N. Severinghaus. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
Finance::Bank::US::INGDirect, Finance::OFX::Parse