[go: up one dir, main page]

WO2004008367A1 - Individualized analysis and proposals for finance management applications - Google Patents

Individualized analysis and proposals for finance management applications Download PDF

Info

Publication number
WO2004008367A1
WO2004008367A1 PCT/US2003/019284 US0319284W WO2004008367A1 WO 2004008367 A1 WO2004008367 A1 WO 2004008367A1 US 0319284 W US0319284 W US 0319284W WO 2004008367 A1 WO2004008367 A1 WO 2004008367A1
Authority
WO
WIPO (PCT)
Prior art keywords
asset
user
financial
detecting
transaction
Prior art date
Application number
PCT/US2003/019284
Other languages
French (fr)
Inventor
Jeffrey Zimmerman
Mark White
Andrew Chan
Craig Lasalle
Kenneth Hilton
Baie Netzer
Original Assignee
Intuit, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intuit, Inc. filed Critical Intuit, Inc.
Priority to AU2003281017A priority Critical patent/AU2003281017A1/en
Publication of WO2004008367A1 publication Critical patent/WO2004008367A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Definitions

  • the present invention relates generally to financial management applications and more particularly to providing personalized financial analysis to users of financial management applications.
  • a financial management application stores a financial profile containing financial information of a user.
  • This information includes a user's tax information, one or more watch lists identifying assets that are of interest to the user, and an account portfolio indicating the user's position and transaction history with respect to the user's banking, investment, loan or other financial accounts.
  • This information may be received from sources such as financial management applications, tax preparation software, and remote information delivery services, or be submitted directly by the user.
  • An information engine in cooperation with the financial management application detects a triggering condition related to the status of the user's financial profile and presents a message to the user. Particularly, the information engine may evaluate the consequences of recent or proposed transactions, periodically analyze the conditions of one or more of the user's accounts, or check the user's current financial profile. The evaluation is based on selected financial criteria or rules. The user is presented with the information based on the evaluation, such as the financial consequences of the transaction and his general financial status, and provided with the option of performing an alternative or supplemental transaction which should improve the user's financial situation.
  • the information engine can notify the user, and propose assets to buy or sell to better configure the user's assets.
  • the information engine can detect that a user owns a poorly rated stock, or owns too many bonds, and present alternate investment instruments to the user.
  • the information engine can check a user's financial profile and generate proposals designed to reduce the user's tax burden. For example, the information engine can detect that a user has assets with unrealized losses which can be sold to reduce the user's capital gains tax or that a sale of an asset can receive long-term capital gains treatment and propose that the user sell the relevant asset.
  • the information engine may check at regular intervals for triggering conditions and provide the relevant response if one is detected. Additionally, it may check for triggering conditions whenever the user begins a new session or updates the information stored in the financial profile.
  • the information engine detects the appropriate triggering conditions, it generates the message to the user by transmitting a template associated with the triggering conditions to a message generator, including a message parser.
  • the message parser reads the template, which includes preconfigured text and pointers to relevant data locations and calculation functions, obtains the data from the user's profile and external data sources if necessary, and generates a complete message from the template and data.
  • the present invention has embodiments in various computer systems, computer program products, user interfaces, and computer implemented methods.
  • the features and advantages described in this summary and the following detailed description are not all- inclusive,' and particularly, many additional features and advantages will be apparent to one of ordinary skill in the art in view of the drawings, specification, and claims hereof.
  • FIG. 1 is an illustration of the functional architecture of one embodiment of the present invention.
  • FIG. 2 is a more detailed illustration of the financial management application system of FIG. 1.
  • FIG. 3 is an illustration of a user interface in a financial management application.
  • FIG. 4 is an illustration of an open message containing user and instance specific financial information.
  • FIG. 5 is a flow chart illustrating a method of providing instance specific financial information to a user.
  • the present invention provides for delivering financial analysis specific to a user's financial context and transactions and proposing alternative transactions and asset configurations to a user.
  • asset refers to any type of financial account, financial instrument, or source of income or liability such as revenue (e.g., earned income, sales of assets), accounts payable and receivable, loans, mortgages, stocks, stock options, bonds, cars, homes, insurance accounts, cash, or accounts containing groupings or combinations of the preceding.
  • alternative transaction refers to transactions proposed by the financial management application that supplement or replace a transaction initiated by the user.
  • the terms "propose” or “proposed action” refer to presenting an action or option to a user.
  • FIG. 1 is an illustration of the functional architecture of one embodiment of the present invention.
  • a financial management application 105 is in communication with a brokerage system 130, and a financial information provider 150.
  • the financial management application 105 may be located on a user's computer with the instructions for performing its relevant functions described herein stored in the memory of the computer. Alternatively, the financial management application 105 may be located on a server that interacts with remote users through a conventional web interface.
  • the application 105 may communicate directly with the brokerage system 130 and financial information provider 150, or indirectly through a server, network, or the like.
  • the financial management application 105 includes a financial profile 110 that stores financial information of interest to a user.
  • This information includes a tax profile indicating a user's tax obligations, a portfolio storing information with regards to the user's accounts, and one or more watch lists indicating the status of stocks, funds, bonds, or other financial instruments that are of interest to the user.
  • the contents of the financial profile 110 are discussed in greater detail in FIG. 2.
  • the financial management application 105 further includes an information engine 115.
  • the information engine 115 is configured to update and analyze the information stored in the financial profile 110.
  • the information engine 115 determines if a triggering condition has been met and transmits a message template related to the triggered condition to a message generator 120.
  • the message generator 120 receives the template, constructs a message based on the template and appropriate data related to the message and user's financial data, and displays the completed message to a user.
  • the financial information provider 150 delivers updated asset information to users' financial management applications and underlying accounts.
  • the financial information provider 150 receives various forms of live data 165, indicating the real-time conditions and ratings of assorted stocks, bonds, and securities from external information sources 140.
  • the information sources 140 may include exchange information providers such as Reuters, Inc., or financial advisory services such as Morningstar Associates.
  • the real time conditions include such items as current quotations, closing prices, interest rates, performance data, valuation data, and other asset characteristics used in financial markets.
  • the financial information provider 150 uses a feed conversion process 160 to convert the live data to data 155 in ASCII or any other commonly used data format.
  • a front end module 145 supplements the data 155 with additional information relating to the stocks, bonds, funds and other assets. This information includes commonly used financial performance or historical information, such as closing prices, price to earnings ratios, returns on investments, and value relative to a previously calculated "intrinsic value.” This supplemented information is transmitted to the financial management application 105.
  • a brokerage system 130 performs transactions requested by the user.
  • the brokerage system 130 may include a conventional web interface for accepting user requests or interface with the financial management application 105.
  • the brokerage system 130 is in communication with the various exchanges and markets in which assets are purchased and sold.
  • the brokerage system 130 includes a user account indicating the user's position in multiple assets and a transaction history.
  • a bank 132 maintains one or more checking, savings, money market, and credit accounts for a user.
  • the bank 132 performs transactions such as money transfers, credit payments, deposits, and withdrawals at the request of the user through the financial management application 105.
  • the financial profile 110 stores local information that mirrors each bank and brokerage account, and typically augments them with additional user provided information. These accounts are utilized by the information engine 115 during its analysis of the financial profile 110.
  • FIG. 2 is a more detailed illustration of the financial management application system 105 of FIG. 1.
  • the financial profile 110 includes an account portfolio 215.
  • the account portfolio 215 stores a user's balances, positions, and transaction histories with regards to the user's various accounts, including brokerage accounts, banking accounts, retirement accounts, credit cards, loans, and any other type of account by which the user can track an asset.
  • the financial profile 110 additionally includes one or more watch lists 220 indicating the condition of assets that are of particular interest to the user.
  • the watch list includes information such as the recent and historic performance of the assets and assorted analyst ratings of the assets. These assets may be assets in which the user has an ownership interest or assets that the user does not own, but wishes to monitor.
  • a watch list is typically used to track securities, but can also be used to track any other type of financial instrument as well, such as mortgage rates for a particular type of mortgage or by a particular company, credit card rates, and so forth.
  • the financial profile 110 further includes a set of user-configured preferences 225. These preferences 225 are used by the information engine 115 to analyze user data with respect to financial status and consequences. When the financial profile 110 determines whether to present a message to a user, it reads the preferences 225 to determine whether the user's financial status falls within acceptable predetermined bounds.
  • the configured preferences 225 include a preferred asset allocation, a preferred budget, and preferred thresholds for notifications by the information engine 115. For example, the configured preferences 225 store the minimum tax burden increase that will generate a message proposing that a user sell assets having unrealized losses or a minimum deviancy from the configured budget that generates a warning indicating that the user is off budget.
  • the financial profile 110 additionally includes a tax profile 218.
  • the tax profile 218 stores information relating to a user ' s tax status and historical taxes.
  • the profile 218 may contain historical tax data from one or more prior tax returns of the user.
  • This tax data includes non-financial information such as filing status, marital/head of household status, home ownership status, income status, marginal tax bracket, existence and age of dependents, and likelihood of owing Alternative Minimum Tax, as well as financial tax related information, such as income, deductions, losses, and so forth.
  • the tax profile additionally includes an estimated year to date tax burden based upon transactions stored in the user's account portfolio 215. When changes occur in the user's account portfolio 215, the information engine 115 updates the tax profile 218 accordingly.
  • This tax information is stored in a manner that allows it to be readily mapped to the appropriate fields of relevant tax forms used to compute tax liability; e.g., income from wages maybe mapped to the income fields of the various types of Form 1040, whereas income from securities sales and the like is mapped to Schedule D.
  • the data in the financial profile 110 is managed by the information engine 115.
  • the information engine includes a finance management module 230 that updates the financial profile 110 according the actions of the user. For example, when the user performs a stock purchase, the finance management module 230 stores the transaction in the account portfolio 215 in the account in which the purchase is made, as typically indicated by the user.
  • the information engine 115 further includes objects associated with particular financial scenarios. These objects may be categorized in groups relating to transactions 235, user tax conditions 242, asset allocation 240, and asset performance 245. The groups are presented for illustrative purposes only. Each object is independent and includes a set of activation conditions and triggering conditions. The activation conditions indicate when an object checks the financial profile 110, and the triggering conditions indicate which financial conditions, if found in the financial profile 110, cause the object to send a message to the user. "Objects" are used here in the sense of object oriented programming, in that each 'object' can store data relating to its various trigger conditions, and its message template or content, and contain methods for operating on such data to determine if triggering conditions are met, and for generating a message. However, the implementation of tins aspect of the invention as objects is merely one embodiment, and in other embodiments, other programming techniques can just as readily be used for the same functionality and purpose.
  • an object Upon detection of the appropriate conditions, an object transmits a template 262 to the message generator 120.
  • the template 262 may be an XML document composed of both preconfigured fields and variable fields arranged such, that when properly parsed, generate an instance specific message to the user.
  • the preconfigured fields which store information that is not user or instance specific, such as the cause of the message and the nature of the proposed action, are stored as text in the template.
  • the variable fields which relate to information that is user or instance specific, such as the specific quantitative amounts or user assets, are stored as pointers to the corresponding data locations in the user profile 110 or the corresponding calculation functions in the information engine 115.
  • the message generator 120 includes a message parser 265 that reads the XML template, inserts the text from the preconfigured fields, extracts the data from the financial profile 110 associated with the variable fields and from external data sources if necessary, and constructs a complete user and instance specific message.
  • a message deposit module 260 stores the parsed message in a message queue as an HTML document. A user can then select and view the parsed message in the message queue through the interface of the financial management application 105, which is illustrated in greater detail in FIG. 3
  • FIG. 3 is an illustration of a user interface in a financial management application.
  • a financial management application interface 305 allows a user to access details of various retirement and investment accounts.
  • an "investments alert" 310 section contains headers of recently queued messages deposited by the message generator 120. The message headers are configured to allow a user to view the associated message by selecting the header. While in the illustrated interface, the recently queued message headers are visible to the user at all times, in an alternate embodiment, the messages are stored in an electronic mailbox and are only visible when a user opens the electronic mailbox.
  • FIG. 4 is an illustration of an open message containing user and instance specific financial information.
  • the message is generated when the message parser 265 parses a template transmitted by the information engine 115.
  • the underlined sections of the message indicate values that are instance or user specific and are inserted into the text of the message by the message parser 265.
  • the message contains a headline 400 indicating a triggering event such as a sale of an asset, here shares in a stock.
  • the corresponding section of the template includes text of "You sold X" and a pointer to a transaction record in the account portfolio 215 indicating the stock (referenced as X) involved in the sale.
  • the message parser 265 displays the fixed text, pulls the sale data from the transaction record in the account portfolio 215 and generates the complete message.
  • the message further includes a summary section 405 indicating the importance of the triggering event, which in the illustrated example is an increase in the user's tax burden.
  • This section 405 indicates the capital gain acquired from the sale, a year-to-date capital gain, and a net tax burden.
  • the corresponding section of the template includes text for the non- instance specific data, and pointers to data locations in the account portfolio 215 and tax profile 218 and calculation functions of the information engine 115 for the quantitative values.
  • the message additionally contains a section 410 indicating a proposed action for the user.
  • the text of the message is non-instance specific and is stored in the message template.
  • the message template includes an asset listing section, which is composed of pointers to functions of the information engine 115 designed determine which assets have unrealized losses.
  • This function references the account portfolio 215 to determine which stocks have been owned long enough to qualify for capital gains treatment and the original purchase price of the stock or fund and analyzes the information received from the financial information provider 150 to determine a price change in the aforementioned stocks and funds.
  • the names of those stocks and funds having unrealized losses, their purchase prices, and the associated net unrealized loss are transmitted to the message parser 265, which places them in the displayed table 420.
  • Table 1 lists the triggering rules or criteria for evaluating transactions and the messages associated with such triggers. These triggers and messages are associated with the transaction monitoring objects 235 and present alternative actions for the user to perform in response to a recent transaction. For each listing, the table includes triggering conditions which evaluate a transaction, a summary of the financial impact of the transaction, and a proposed transaction, the latter two of which contain the basic content of a message to the user.
  • the transaction monitoring objects 235 are typically activated whenever a transaction is detected.
  • the information engine 115 detects transactions by searching the transaction histories in the account portfolio 215 for recent transactions. If recent transactions are detected, each of the transaction monitoring objects 235 checks for its associated triggering conditions.
  • Each object references recent transactions stored in the account portfolio 215 and determines a gain or loss associated with the transaction and further obtains any special conditions associated with the transferred asset and the account associated with the asset, such as restricted transaction rules or tax exempt status.
  • the object references a purchase price stored in the account portfolio 215 for each asset and reads the most recently received information from the financial information provider 150 to determine a current market price and thus an unrealized net gain or loss.
  • the object then references the tax profile 218 to determine a current tax burden and any change to the tax burden as a result of the transaction.
  • the object transmits a template to the message generator 120, which parses the message and transmits a transaction effect summary and proposed action to the user.
  • Some of the proposed actions include new transactions, while others allow a user to employ other functions of the financial information application 105, such as a capital gains estimator, which reads the user's tax profile 218 and a set of preconfigured tax rules and predicts the increase in a user's capital gains tax that would result from a transaction.
  • the object reads a transaction history stored in the account portfolio 215, and analyzes the transaction parameters to determine if any transactions include the sale of a stock or bond in a taxable account. Upon detecting a sale of hiuit stock, the object reads the original purchase price of the asset in the account portfolio 215 and the most recently received information from the financial information provider 150 to determine a net gain of $1460.10 on the sale, thus satisfying the first triggering condition. The object then reads the year to date net gain of $1810.07 stored in the tax profile 218 and determines that the second triggering condition is satisfied.
  • the object then reads the original purchase price of the assets listed in the account portfolio 215 and the most recently received information from the financial information provider 150 to determine that the user holds net unrealized losses above $500 in the taxable accounts, thus satisfying the third condition.
  • the object Upon detection of the triggering conditions, the object transmits a message template to the message generator 120, which generates a new message in the manner discussed in the description of FIG. 4.
  • Table 2 lists triggers and messages that are associated with the tax condition objects 242. These objects check a user's current tax condition and present messages indicating actions designed to reduce the user's tax burden.
  • the objects are activated when a user begins a new session or at periodic intervals.
  • the objects determine a current date, and read the accounts in the account portfolio 215 to determine the user's transaction history, a current price, and an original purchase price. This information is used to determine any realized or unrealized gains associated with an object.
  • objects associated with particular types of assets, such as 401(k) plans may only check those accounts containing the associated asset. Additionally, the objects check the user's tax profile 218 to determine a current tax burden.
  • the object transmits a template to the message generator 120, which parses the message and presents a tax status summary, indicating the conditions that caused the message to be generated, and a proposed action for the user.
  • Some of the proposed actions include new transactions, while others allow a user to employ functions of the financial information application 105, such as a capital gains estimator.
  • Table 3 lists triggers and messages that are associated with the asset performance objects 245. These messages are generated when the information engine 115 detects that a user owns non-optimal assets and are designed to allow a user to improve the value and performance of the assets in the account portfolio 215.
  • the objects are activated when a user begins a new session, at periodic intervals, or when a transaction is detected. Alternatively, the information engine 115 may monitor communications with the financial information provider 150 and activate the objects when new information is received.
  • the objects check the user's watch lists 220 and account portfolio 215 and then analyze data received from the financial information provider 150 with regards to the performance, valuation, and ratings of these assets.
  • the objects also check the configured preferences 225 for both preferred asset performances and acceptable deviations from preferred performances.
  • the quantitative asset performance values in the triggering conditions are variable and stored in the configured preferences. In an alternate embodiment, the quantitative asset performance criteria are fixed in the objects.
  • the object transmits a template to the message generator 120, which parses the message and presents an asset performance summary, indicating the conditions that caused the message to be generated, and a proposed action for the user.
  • Some of the proposed actions include new transactions, while others allow a user to employ functions of the financial information application 105, such as a capital gains estimator or a scorecard function, which analyzes commodity ratings and valuation information received from the financial service provider 150 and generates a report indicating the commodity's ratings and its performance in categories such as its price to earnings ratio and value relative to intrinsic value.
  • These functions also include fund and stock evaluators that analyze data received from the financial service provider 150 and generate reports containing quality indicators such as historic performance relative to other stocks and funds and overall price to earnings ratio.
  • a fund screener function allows the user to view funds meeting user configured criteria, such as the aforementioned quality indicators and fund composition.
  • Table 4 lists triggers and messages relating to the distribution and composition of a user's assets that are associated with the asset allocation objects 240. These messages are designed to allow a user to maintain a preferred distribution of his assets.
  • the objects 240 are activated when a user begins a new session, at periodic intervals, or when a transaction is detected. Each object is associated with a particular set of conditions indicating a non-optimal asset allocation. Every object references the distribution of a user's assets in the account portfolio 215 and the asset allocation preferences stored among the user's configured preferences 225, and determines if its associated triggering conditions are met.
  • the object transmits a template to the message generator 120, which parses the message and presents an asset allocation summary, indicating the conditions that caused the message to be generated, and a proposed action for the user.
  • Some of the proposed actions include new transactions, while others allow a user to employ functions of the financial information application 105, such as a capital gains estimator, a scorecard function, a fund evaluator tool, or an asset allocation guide which reads the asset allocation preferences in the configured preferences 225, compares it to information received from the financial information provider 150, and presents classes of assets in which the user should increase his holdings.
  • FIG. 5 is a flow chart illustrating a method of providing user and instance specific financial information to a user.
  • the process begins when an object in the information engine 230 is activated 505.
  • Each object is associated with a set of activation conditions. Some objects are activated whenever the financial profile 110 is updated or at regular intervals while others are activated when transactions are performed.
  • the activated object tests the user's financial profile 110 to determine 520 if its triggering conditions are met.
  • the activation condition is any transaction by the user.
  • the triggering conditions are the following
  • the object serially reviews all recent transactions, reading the transaction history in the account portfolio to determine gains, and the tax profile 218 to determine an effect on the user's tax burden.
  • an object flags a transaction as checked after its review, and later iterations of the same object avoid flagged transactions.
  • an object checks all transaction within a particular time range. If the triggering conditions are not met, the object flags the transaction as checked and analyzes the next transaction to determine if its parameters meet the triggering conditions. If the triggering conditions are met, the information engine 115 transmits 525 a message template to the message parser 265.
  • the template includes the information illustrated in FIG.
  • the sections of the message relating to quantitative information include pointers to data in the financial profile 110 or to calculation functions within the infonnation engine 115.
  • the message parser 265 Upon receiving the template, the message parser 265 draws the relevant data from the financial profile 110 and external data sources and creates 528 an HTML message of the kind displayed in FIG. 4. The message deposit module 260 then deposits the message in a queue configured so that the headers most recently deposited messages are visible to the user. The user can then display 530 the message by selecting the relevant header.
  • the section of the message containing the proposed action is presented as hyperlinlced text that ties to a function of the information engine 115 that performs the proposed action.
  • the information engine 115 initiates an internal function associated with the proposed action.
  • the hyperlinlced text may be tied to an instruction file stored by the information engine 115, which provides the user with instructions indicating how to perform the proposed action.
  • the information engine 115 retrieves the instruction file and presents it to the user. The user then follows the listed instructions to perform the proposed action.
  • Certain aspects of the present invention include process steps and instructions described herein in the form of an algorithm. It should be noted that the process steps and instructions of the present invention could be embodied in software, firmware or hardware, and when embodied in software, could be downloaded to reside on and be operated from different platforms used by real time network operating systems.
  • the present invention also relates to an apparatus for performing the operations herein.
  • This apparatus may be specially constructed for the required purposes, or it may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, application specific integrated circuits (ASICs), or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
  • the computers referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
  • the present invention is well suited to a wide variety of computer network systems over numerous topologies.
  • the configuration and management of large networks comprise storage devices and computers that are communicatively coupled to dissimilar computers and storage devices over a network, such as the Internet.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A system and method provide instance and user specific financial analysis and alerts to a user based on the user's financial status, assets, and transactions. Users maintain a financial profile indicating current assets, a tax burden, a transaction history, and other related information. The profile is checked for designated financial conditions such as recent transactions having an effect on a user's tax burden and ownership of particular assets. If the designated financial conditions are detected, a message containing situation specific financial information and a proposed user action is presented.

Description

INDIVIDUALIZED ANALYSIS AND PROPOSALS FOR FINANCE MANAGEMENT
APPLICATIONS
BACKGROUND
Field of the Invention
[0001] The present invention relates generally to financial management applications and more particularly to providing personalized financial analysis to users of financial management applications.
Description of the Related Art
[0002] Current financial management applications, such as Quicken®, by Intuit, Inc. of Mountain View, California, and Money™, by Microsoft Corp., of Redmond, Washington, are generally designed to acquire and organize detailed financial information about a user of the software. This information includes checking and savings accounts, brokerage accounts and the like, and is typically in the form of financial transactions entered by the user, or downloaded from another data provider on the user's behalf, e.g., online banking, imported tax data, etc.
[0003] Given the considerable complexity of many individual financial portfolios and the labyrinthine nature of modern tax regulations, determining the potential financial consequences of a particular transaction or monetary decision is prohibitively time consuming for most users. There would be considerable benefit to users if financial management applications, having this accumulated knowledge about a user's financial dealings, could analyze this data and inform the user of the benefits of alternative ways the user could invest, spend money, etc.
[0004] State of the art financial management software applications may offer this kind of advice, but only to a very limited degree. For example, it is common for financial management software to have various calculators and planners for determining appropriate savings for retirement, college, or other life events. In some cases, existing financial management applications can generate, at the user's specific request, a report of the gains or losses in a brokerage account. However, the analysis is usually narrow in scope and fails to take advantage of the wealth of information often available to the applications. Additionally, the software does not present alternative actions, nor do such applications proactively identify financially significant events or changes in the financial status of the user, and alert the user to such events, and possible additional or alternative courses of action.
[0005] "What is needed is a method of utilizing the data available to a financial management application to provide customized information and assistance to users.
SUMMARY OF THE INVENTION
[0006] The present invention overcomes the limitations of existing systems by providing user and transaction, asset, or account specific information to users and further presenting alternative or supplemental actions for users to take to generally improve their financial condition. Generally, a financial management application stores a financial profile containing financial information of a user. This information includes a user's tax information, one or more watch lists identifying assets that are of interest to the user, and an account portfolio indicating the user's position and transaction history with respect to the user's banking, investment, loan or other financial accounts. This information may be received from sources such as financial management applications, tax preparation software, and remote information delivery services, or be submitted directly by the user.
[0007] An information engine in cooperation with the financial management application detects a triggering condition related to the status of the user's financial profile and presents a message to the user. Particularly, the information engine may evaluate the consequences of recent or proposed transactions, periodically analyze the conditions of one or more of the user's accounts, or check the user's current financial profile. The evaluation is based on selected financial criteria or rules. The user is presented with the information based on the evaluation, such as the financial consequences of the transaction and his general financial status, and provided with the option of performing an alternative or supplemental transaction which should improve the user's financial situation.
[0008] For example, if the information engine detects a particular non-optimal asset configuration or ownership of poorly performing assets, it can notify the user, and propose assets to buy or sell to better configure the user's assets. As another example, the information engine can detect that a user owns a poorly rated stock, or owns too many bonds, and present alternate investment instruments to the user. [0009] Furthermore, the information engine can check a user's financial profile and generate proposals designed to reduce the user's tax burden. For example, the information engine can detect that a user has assets with unrealized losses which can be sold to reduce the user's capital gains tax or that a sale of an asset can receive long-term capital gains treatment and propose that the user sell the relevant asset.
[0010] The information engine may check at regular intervals for triggering conditions and provide the relevant response if one is detected. Additionally, it may check for triggering conditions whenever the user begins a new session or updates the information stored in the financial profile.
[0011] In one embodiment, if the information engine detects the appropriate triggering conditions, it generates the message to the user by transmitting a template associated with the triggering conditions to a message generator, including a message parser. The message parser reads the template, which includes preconfigured text and pointers to relevant data locations and calculation functions, obtains the data from the user's profile and external data sources if necessary, and generates a complete message from the template and data.
[0012] The present invention has embodiments in various computer systems, computer program products, user interfaces, and computer implemented methods. The features and advantages described in this summary and the following detailed description are not all- inclusive,' and particularly, many additional features and advantages will be apparent to one of ordinary skill in the art in view of the drawings, specification, and claims hereof.
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] FIG. 1 is an illustration of the functional architecture of one embodiment of the present invention.
[0014] FIG. 2 is a more detailed illustration of the financial management application system of FIG. 1.
[0015] FIG. 3 is an illustration of a user interface in a financial management application.
[0016] FIG. 4 is an illustration of an open message containing user and instance specific financial information. [0017] FIG. 5 is a flow chart illustrating a method of providing instance specific financial information to a user.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0018] The present invention provides for delivering financial analysis specific to a user's financial context and transactions and proposing alternative transactions and asset configurations to a user. As used in this specification and claims, the term "asset" refers to any type of financial account, financial instrument, or source of income or liability such as revenue (e.g., earned income, sales of assets), accounts payable and receivable, loans, mortgages, stocks, stock options, bonds, cars, homes, insurance accounts, cash, or accounts containing groupings or combinations of the preceding. As used herein, the term "alternative transaction" refers to transactions proposed by the financial management application that supplement or replace a transaction initiated by the user. As used herein, the terms "propose" or "proposed action" refer to presenting an action or option to a user.
[0019] FIG. 1 is an illustration of the functional architecture of one embodiment of the present invention. A financial management application 105 is in communication with a brokerage system 130, and a financial information provider 150. The financial management application 105 may be located on a user's computer with the instructions for performing its relevant functions described herein stored in the memory of the computer. Alternatively, the financial management application 105 may be located on a server that interacts with remote users through a conventional web interface. The application 105 may communicate directly with the brokerage system 130 and financial information provider 150, or indirectly through a server, network, or the like.
[0020] The financial management application 105 includes a financial profile 110 that stores financial information of interest to a user. This information includes a tax profile indicating a user's tax obligations, a portfolio storing information with regards to the user's accounts, and one or more watch lists indicating the status of stocks, funds, bonds, or other financial instruments that are of interest to the user. The contents of the financial profile 110 are discussed in greater detail in FIG. 2.
[0021] The financial management application 105 further includes an information engine 115. The information engine 115 is configured to update and analyze the information stored in the financial profile 110. The information engine 115 determines if a triggering condition has been met and transmits a message template related to the triggered condition to a message generator 120. The message generator 120 receives the template, constructs a message based on the template and appropriate data related to the message and user's financial data, and displays the completed message to a user.
[0022] The financial information provider 150 delivers updated asset information to users' financial management applications and underlying accounts. The financial information provider 150 receives various forms of live data 165, indicating the real-time conditions and ratings of assorted stocks, bonds, and securities from external information sources 140. The information sources 140 may include exchange information providers such as Reuters, Inc., or financial advisory services such as Morningstar Associates. The real time conditions include such items as current quotations, closing prices, interest rates, performance data, valuation data, and other asset characteristics used in financial markets.
[0023] The financial information provider 150 uses a feed conversion process 160 to convert the live data to data 155 in ASCII or any other commonly used data format. A front end module 145 supplements the data 155 with additional information relating to the stocks, bonds, funds and other assets. This information includes commonly used financial performance or historical information, such as closing prices, price to earnings ratios, returns on investments, and value relative to a previously calculated "intrinsic value." This supplemented information is transmitted to the financial management application 105.
[0024] A brokerage system 130 performs transactions requested by the user. The brokerage system 130 may include a conventional web interface for accepting user requests or interface with the financial management application 105. The brokerage system 130 is in communication with the various exchanges and markets in which assets are purchased and sold. Customarily, the brokerage system 130 includes a user account indicating the user's position in multiple assets and a transaction history.
[0025] A bank 132 maintains one or more checking, savings, money market, and credit accounts for a user. The bank 132 performs transactions such as money transfers, credit payments, deposits, and withdrawals at the request of the user through the financial management application 105.
[0026] Customarily, the financial profile 110 stores local information that mirrors each bank and brokerage account, and typically augments them with additional user provided information. These accounts are utilized by the information engine 115 during its analysis of the financial profile 110.
[0027] FIG. 2 is a more detailed illustration of the financial management application system 105 of FIG. 1. The financial profile 110 includes an account portfolio 215. The account portfolio 215 stores a user's balances, positions, and transaction histories with regards to the user's various accounts, including brokerage accounts, banking accounts, retirement accounts, credit cards, loans, and any other type of account by which the user can track an asset.
[0028] The financial profile 110 additionally includes one or more watch lists 220 indicating the condition of assets that are of particular interest to the user. The watch list includes information such as the recent and historic performance of the assets and assorted analyst ratings of the assets. These assets may be assets in which the user has an ownership interest or assets that the user does not own, but wishes to monitor. As is apparent, a watch list is typically used to track securities, but can also be used to track any other type of financial instrument as well, such as mortgage rates for a particular type of mortgage or by a particular company, credit card rates, and so forth.
[0029] The financial profile 110 further includes a set of user-configured preferences 225. These preferences 225 are used by the information engine 115 to analyze user data with respect to financial status and consequences. When the financial profile 110 determines whether to present a message to a user, it reads the preferences 225 to determine whether the user's financial status falls within acceptable predetermined bounds. The configured preferences 225 include a preferred asset allocation, a preferred budget, and preferred thresholds for notifications by the information engine 115. For example, the configured preferences 225 store the minimum tax burden increase that will generate a message proposing that a user sell assets having unrealized losses or a minimum deviancy from the configured budget that generates a warning indicating that the user is off budget.
[0030] The financial profile 110 additionally includes a tax profile 218. The tax profile 218 stores information relating to a user ' s tax status and historical taxes. The profile 218 may contain historical tax data from one or more prior tax returns of the user. This tax data includes non-financial information such as filing status, marital/head of household status, home ownership status, income status, marginal tax bracket, existence and age of dependents, and likelihood of owing Alternative Minimum Tax, as well as financial tax related information, such as income, deductions, losses, and so forth. The tax profile additionally includes an estimated year to date tax burden based upon transactions stored in the user's account portfolio 215. When changes occur in the user's account portfolio 215, the information engine 115 updates the tax profile 218 accordingly.
[0031] This tax information is stored in a manner that allows it to be readily mapped to the appropriate fields of relevant tax forms used to compute tax liability; e.g., income from wages maybe mapped to the income fields of the various types of Form 1040, whereas income from securities sales and the like is mapped to Schedule D.
[0032] The data in the financial profile 110 is managed by the information engine 115. The information engine includes a finance management module 230 that updates the financial profile 110 according the actions of the user. For example, when the user performs a stock purchase, the finance management module 230 stores the transaction in the account portfolio 215 in the account in which the purchase is made, as typically indicated by the user.
[0033] The information engine 115 further includes objects associated with particular financial scenarios. These objects may be categorized in groups relating to transactions 235, user tax conditions 242, asset allocation 240, and asset performance 245. The groups are presented for illustrative purposes only. Each object is independent and includes a set of activation conditions and triggering conditions. The activation conditions indicate when an object checks the financial profile 110, and the triggering conditions indicate which financial conditions, if found in the financial profile 110, cause the object to send a message to the user. "Objects" are used here in the sense of object oriented programming, in that each 'object' can store data relating to its various trigger conditions, and its message template or content, and contain methods for operating on such data to determine if triggering conditions are met, and for generating a message. However, the implementation of tins aspect of the invention as objects is merely one embodiment, and in other embodiments, other programming techniques can just as readily be used for the same functionality and purpose.
[0034] Upon detection of the appropriate conditions, an object transmits a template 262 to the message generator 120. The template 262 may be an XML document composed of both preconfigured fields and variable fields arranged such, that when properly parsed, generate an instance specific message to the user. The preconfigured fields, which store information that is not user or instance specific, such as the cause of the message and the nature of the proposed action, are stored as text in the template. The variable fields, which relate to information that is user or instance specific, such as the specific quantitative amounts or user assets, are stored as pointers to the corresponding data locations in the user profile 110 or the corresponding calculation functions in the information engine 115.
[0035] The message generator 120 includes a message parser 265 that reads the XML template, inserts the text from the preconfigured fields, extracts the data from the financial profile 110 associated with the variable fields and from external data sources if necessary, and constructs a complete user and instance specific message. A message deposit module 260 stores the parsed message in a message queue as an HTML document. A user can then select and view the parsed message in the message queue through the interface of the financial management application 105, which is illustrated in greater detail in FIG. 3
[0036] FIG. 3 is an illustration of a user interface in a financial management application. A financial management application interface 305 allows a user to access details of various retirement and investment accounts. Additionally, an "investments alert" 310 section contains headers of recently queued messages deposited by the message generator 120. The message headers are configured to allow a user to view the associated message by selecting the header. While in the illustrated interface, the recently queued message headers are visible to the user at all times, in an alternate embodiment, the messages are stored in an electronic mailbox and are only visible when a user opens the electronic mailbox.
[0037] FIG. 4 is an illustration of an open message containing user and instance specific financial information. The message is generated when the message parser 265 parses a template transmitted by the information engine 115. The underlined sections of the message indicate values that are instance or user specific and are inserted into the text of the message by the message parser 265. The message contains a headline 400 indicating a triggering event such as a sale of an asset, here shares in a stock. The corresponding section of the template includes text of "You sold X" and a pointer to a transaction record in the account portfolio 215 indicating the stock (referenced as X) involved in the sale. The message parser 265 displays the fixed text, pulls the sale data from the transaction record in the account portfolio 215 and generates the complete message. The message further includes a summary section 405 indicating the importance of the triggering event, which in the illustrated example is an increase in the user's tax burden. This section 405 indicates the capital gain acquired from the sale, a year-to-date capital gain, and a net tax burden. As with the headline, the corresponding section of the template includes text for the non- instance specific data, and pointers to data locations in the account portfolio 215 and tax profile 218 and calculation functions of the information engine 115 for the quantitative values. The message additionally contains a section 410 indicating a proposed action for the user. The text of the message is non-instance specific and is stored in the message template. The message template includes an asset listing section, which is composed of pointers to functions of the information engine 115 designed determine which assets have unrealized losses. This function references the account portfolio 215 to determine which stocks have been owned long enough to qualify for capital gains treatment and the original purchase price of the stock or fund and analyzes the information received from the financial information provider 150 to determine a price change in the aforementioned stocks and funds. The names of those stocks and funds having unrealized losses, their purchase prices, and the associated net unrealized loss are transmitted to the message parser 265, which places them in the displayed table 420.
[0038] Table 1 lists the triggering rules or criteria for evaluating transactions and the messages associated with such triggers. These triggers and messages are associated with the transaction monitoring objects 235 and present alternative actions for the user to perform in response to a recent transaction. For each listing, the table includes triggering conditions which evaluate a transaction, a summary of the financial impact of the transaction, and a proposed transaction, the latter two of which contain the basic content of a message to the user. The transaction monitoring objects 235 are typically activated whenever a transaction is detected. The information engine 115 detects transactions by searching the transaction histories in the account portfolio 215 for recent transactions. If recent transactions are detected, each of the transaction monitoring objects 235 checks for its associated triggering conditions. Each object references recent transactions stored in the account portfolio 215 and determines a gain or loss associated with the transaction and further obtains any special conditions associated with the transferred asset and the account associated with the asset, such as restricted transaction rules or tax exempt status. The object references a purchase price stored in the account portfolio 215 for each asset and reads the most recently received information from the financial information provider 150 to determine a current market price and thus an unrealized net gain or loss. The object then references the tax profile 218 to determine a current tax burden and any change to the tax burden as a result of the transaction.
[0039] If the triggering conditions associated with the object are met, the object transmits a template to the message generator 120, which parses the message and transmits a transaction effect summary and proposed action to the user. Some of the proposed actions include new transactions, while others allow a user to employ other functions of the financial information application 105, such as a capital gains estimator, which reads the user's tax profile 218 and a set of preconfigured tax rules and predicts the increase in a user's capital gains tax that would result from a transaction.
[0040] Taking the scenario illustrated in FIG. 4 as an example, an object is triggered by the following conditions:
Sale of stock or fund in a taxable account
Year to Date net gain > $500
Unrealized losses above $500 in taxable accounts
The object reads a transaction history stored in the account portfolio 215, and analyzes the transaction parameters to determine if any transactions include the sale of a stock or bond in a taxable account. Upon detecting a sale of hiuit stock, the object reads the original purchase price of the asset in the account portfolio 215 and the most recently received information from the financial information provider 150 to determine a net gain of $1460.10 on the sale, thus satisfying the first triggering condition. The object then reads the year to date net gain of $1810.07 stored in the tax profile 218 and determines that the second triggering condition is satisfied. The object then reads the original purchase price of the assets listed in the account portfolio 215 and the most recently received information from the financial information provider 150 to determine that the user holds net unrealized losses above $500 in the taxable accounts, thus satisfying the third condition. Upon detection of the triggering conditions, the object transmits a message template to the message generator 120, which generates a new message in the manner discussed in the description of FIG. 4.
TABLE 1
Figure imgf000012_0001
Figure imgf000013_0001
Figure imgf000014_0001
Figure imgf000015_0001
Figure imgf000016_0001
Figure imgf000017_0001
[0041] ' Table 2 lists triggers and messages that are associated with the tax condition objects 242. These objects check a user's current tax condition and present messages indicating actions designed to reduce the user's tax burden. The objects are activated when a user begins a new session or at periodic intervals. The objects determine a current date, and read the accounts in the account portfolio 215 to determine the user's transaction history, a current price, and an original purchase price. This information is used to determine any realized or unrealized gains associated with an object. Alternatively, objects associated with particular types of assets, such as 401(k) plans may only check those accounts containing the associated asset. Additionally, the objects check the user's tax profile 218 to determine a current tax burden. If the triggering conditions associated with an object are met, the object transmits a template to the message generator 120, which parses the message and presents a tax status summary, indicating the conditions that caused the message to be generated, and a proposed action for the user. Some of the proposed actions include new transactions, while others allow a user to employ functions of the financial information application 105, such as a capital gains estimator. TABLE 2
Figure imgf000018_0001
Figure imgf000019_0001
Figure imgf000020_0001
[0042] Table 3 lists triggers and messages that are associated with the asset performance objects 245. These messages are generated when the information engine 115 detects that a user owns non-optimal assets and are designed to allow a user to improve the value and performance of the assets in the account portfolio 215. The objects are activated when a user begins a new session, at periodic intervals, or when a transaction is detected. Alternatively, the information engine 115 may monitor communications with the financial information provider 150 and activate the objects when new information is received. The objects check the user's watch lists 220 and account portfolio 215 and then analyze data received from the financial information provider 150 with regards to the performance, valuation, and ratings of these assets. The objects also check the configured preferences 225 for both preferred asset performances and acceptable deviations from preferred performances. In one embodiment the quantitative asset performance values in the triggering conditions are variable and stored in the configured preferences. In an alternate embodiment, the quantitative asset performance criteria are fixed in the objects.
[0043] If the triggering conditions associated with an object (customarily detection of poorly performing assets) are met, the object transmits a template to the message generator 120, which parses the message and presents an asset performance summary, indicating the conditions that caused the message to be generated, and a proposed action for the user. Some of the proposed actions include new transactions, while others allow a user to employ functions of the financial information application 105, such as a capital gains estimator or a scorecard function, which analyzes commodity ratings and valuation information received from the financial service provider 150 and generates a report indicating the commodity's ratings and its performance in categories such as its price to earnings ratio and value relative to intrinsic value. These functions also include fund and stock evaluators that analyze data received from the financial service provider 150 and generate reports containing quality indicators such as historic performance relative to other stocks and funds and overall price to earnings ratio. A fund screener function allows the user to view funds meeting user configured criteria, such as the aforementioned quality indicators and fund composition. TABLE 3
Figure imgf000021_0001
Figure imgf000022_0001
Figure imgf000023_0001
[0044] Table 4 lists triggers and messages relating to the distribution and composition of a user's assets that are associated with the asset allocation objects 240. These messages are designed to allow a user to maintain a preferred distribution of his assets. The objects 240 are activated when a user begins a new session, at periodic intervals, or when a transaction is detected. Each object is associated with a particular set of conditions indicating a non-optimal asset allocation. Every object references the distribution of a user's assets in the account portfolio 215 and the asset allocation preferences stored among the user's configured preferences 225, and determines if its associated triggering conditions are met. If the triggering conditions associated with an object, (customarily detection of poor asset allocation) are met, the object transmits a template to the message generator 120, which parses the message and presents an asset allocation summary, indicating the conditions that caused the message to be generated, and a proposed action for the user. Some of the proposed actions include new transactions, while others allow a user to employ functions of the financial information application 105, such as a capital gains estimator, a scorecard function, a fund evaluator tool, or an asset allocation guide which reads the asset allocation preferences in the configured preferences 225, compares it to information received from the financial information provider 150, and presents classes of assets in which the user should increase his holdings.
TABLE 4
Figure imgf000024_0001
Figure imgf000025_0001
Figure imgf000026_0001
[0045] FIG. 5 is a flow chart illustrating a method of providing user and instance specific financial information to a user. The process begins when an object in the information engine 230 is activated 505. Each object is associated with a set of activation conditions. Some objects are activated whenever the financial profile 110 is updated or at regular intervals while others are activated when transactions are performed. The activated object tests the user's financial profile 110 to determine 520 if its triggering conditions are met. To use the previous example of a capital gains transaction, the activation condition is any transaction by the user. The triggering conditions are the following
1. Sale of stock or fund for gain.
2. Increase in tax burden.
3. At least one asset having unrealized losses.
The object serially reviews all recent transactions, reading the transaction history in the account portfolio to determine gains, and the tax profile 218 to determine an effect on the user's tax burden. In one embodiment, an object flags a transaction as checked after its review, and later iterations of the same object avoid flagged transactions. In another embodiment, an object checks all transaction within a particular time range. If the triggering conditions are not met, the object flags the transaction as checked and analyzes the next transaction to determine if its parameters meet the triggering conditions. If the triggering conditions are met, the information engine 115 transmits 525 a message template to the message parser 265. The template includes the information illustrated in FIG. 4., such as a header indicating the triggering event, a section indicating the significance of the message, and a section indicating proposed actions for the user to take. The sections of the message relating to quantitative information include pointers to data in the financial profile 110 or to calculation functions within the infonnation engine 115.
[0046] Upon receiving the template, the message parser 265 draws the relevant data from the financial profile 110 and external data sources and creates 528 an HTML message of the kind displayed in FIG. 4. The message deposit module 260 then deposits the message in a queue configured so that the headers most recently deposited messages are visible to the user. The user can then display 530 the message by selecting the relevant header.
[0047] In one embodiment, the section of the message containing the proposed action is presented as hyperlinlced text that ties to a function of the information engine 115 that performs the proposed action. In this embodiment, when a user clicks on or otherwise selects the hyperlinked text, the information engine 115 initiates an internal function associated with the proposed action.
[0048] Alternatively, the hyperlinlced text may be tied to an instruction file stored by the information engine 115, which provides the user with instructions indicating how to perform the proposed action. When the user clicks or selects the text of the proposed action, the information engine 115 retrieves the instruction file and presents it to the user. The user then follows the listed instructions to perform the proposed action.
[0049] The present invention has been described in particular detail with respect to one possible embodiment. Those of skill in the art will appreciate that the invention may be practiced in other embodiments. First, the particular naming of the features, capitalization of terms, the attributes, data structures, or any other programming or structural aspect is not mandatory or significant, and the mechanisms that implement the invention or its features may have different names, formats, or protocols. Further, the system may be implemented via a combination of hardware and software, as described, or entirely in hardware elements. Also, the particular division of functionality between the various system components described herein is merely exemplary, and not mandatory; functions performed by a single system component may instead be performed by multiple components, and functions performed by multiple components may instead performed by a single component. [0050] Some portions of the above description present the feature of the present invention in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. These operations, while described functionally or logically, are understood to be implemented by computer programs. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules or code devices, without loss of generality.
[0051] It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as "processing" or "computing" or "calculating" or "determining" or "displaying" or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system memories or registers or other such information storage, transmission or display devices.
[0052] Certain aspects of the present invention include process steps and instructions described herein in the form of an algorithm. It should be noted that the process steps and instructions of the present invention could be embodied in software, firmware or hardware, and when embodied in software, could be downloaded to reside on and be operated from different platforms used by real time network operating systems.
[0053] The present invention also relates to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, application specific integrated circuits (ASICs), or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. Furthermore, the computers referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
[0054] The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may also be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the required method steps. The required structure for a variety of these systems will appear from the description below. In addition, the present invention is not described with reference to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any references to specific languages are provided for disclosure of enablement and best mode of the present invention.
[0055] The present invention is well suited to a wide variety of computer network systems over numerous topologies. Within this field, the configuration and management of large networks comprise storage devices and computers that are communicatively coupled to dissimilar computers and storage devices over a network, such as the Internet.
[0056] Finally, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.

Claims

What is claimed 1. A computer implemented method of providing financial information to a user having a user account, the user account storing information for each of a plurality of assets of interest to the user, the method comprising: detecting a financial condition of an asset; responsive to the financial condition of an asset, generating a message identifying the asset, the financial condition of the asset, and a proposed action for the user to take in response to the financial condition of the asset; and presenting the message to the user..
2..The method of claim 1 , wherein: detecting a financial condition of an asset comprises detecting a user initiated transaction relating to the asset; and the proposed action comprises an alternate transaction with respect to at least one of the asset or another asset.
3. The method of claim 2, wherein: the transaction comprises a sale of the asset; detecting a financial condition of the asset further comprises detecting that the sale of the asset has increased a tax burden; and the proposed action comprises selling a second asset, the second asset having decreased in value since a time of purchase of the second asset.
4. ' The method of claim 2, wherein: the transaction comprises a sale of the asset; detecting a financial condition of the asset further comprises detecting that the asset has decreased in value since a time of purchase of the asset; and the proposed action comprises selling a second asset, the second asset having increased in value since a time of purchase of the second asset.
5. The method of claim 2, wherein the proposed action comprises receiving updated financial profile information.
6. The method of claim 2, wherein the message further comprises a description of tax consequences relating to the transaction.
7. The method of claim I, wherein detecting a financial condition of an asset comprises detecting a condition of a financial profile of the user.
8. The method of claim 1, wherein: detecting a financial condition of an asset comprises determining that a current date is a predetermined number of days before a target date and detecting that a new transaction relating to the asset will receive improved tax treatment if the new transaction relating to the asset is performed on or after the target date; and the proposed action comprises the new transaction.
9. The method of claim 8, wherein: the target date is the first day in which a sale of the asset can receive capital gains tax treatment; and the proposed action is the sale of the asset.
10. The method of claim 8, wherein: the target date is the first day in which a sale of the asset can receive long-term capital gains tax treatment; and the proposed action is the sale of the asset.
11. The method of claim 1, wherein detecting a condition of an asset comprises detecting a change in the value of an asset.
12. The method of claim 11 , wherein: the change in the value of the asset comprises an increase in a value of the asset since a time of purchase of the asset; the user has accumulated losses during a taxable year which can offset gains generated by a potential sale of the asset; and the proposed action comprises selling the asset.
13. The method of claim 11 , wherein: the change in the value of the asset comprises a decrease in value since a time of purchase of the asset; a sale of the asset would reduce a tax burden of the user; and the proposed action comprises selling the asset.
14. The method of claim 11, further comprising determining that a current date is within a predetermined number of days before an end of a taxable year.
15. The method of claim 11, wherein: the change in the value of the asset comprises a reduction in value below a previously determined intrinsic value; and the proposed action comprises obtaining additional information about the asset.
16. The method of claim 1, wherein: detecting a financial condition of the asset comprises detecting a financial performance indicator of the asset; and the proposed action comprises obtaining more information about the asset.
17. The method of claim 1, wherein detecting a financial condition of the asset comprises detecting that additional information is available regarding the asset.
18. The method of claim 1 , wherein: the asset is a stock associated with a company having exceeded earning estimates; and the proposed action comprises receiving more information about the stock.
19. The method of claim 1, wherein: the asset is a stock associated with a company having performed below earning estimates; and the proposed action comprises receiving more information about the stock.
20. The method of claim 1 , wherein: the asset is a stock which receives dividends; and the proposed action comprises reinvesting the dividends.
21. The method of claim 1, wherein: the asset comprises all assets of a particular type; and the financial condition of the asset comprises a quantity of the asset which is inconsistent with a preferred asset allocation.
22. The method of claim 21 , wherein the proposed action comprises changing the quantity of the asset.
23. The method of claim 21 , wherein the proposed action comprises changing a quantity of another asset.
24. The method of claim 21 wherein the preferred asset allocation includes a maximum quantity for a single asset type and the quantity of the asset exceeds the maximum quantity.
25. The method of claim 21, wherein: the asset is money stored in a checking account; and the preferred asset allocation comprises a maximum amount of money stored in a checking account.
26. The method of claim 21, wherein: the asset comprises an amount of money earned above budgeted costs; and the preferred asset allocation comprises a preferred use for the money.
27. The method of claim 21 , wherein the asset is a contribution to a retirement account and the preferred asset allocation comprises a preferred minimum contribution to the retirement account.
28. A system for providing financial information to a user, the system comprising: an account database storing a plurality of accounts for users, each account storing information about assets of interest to a user; and an information delivery system in communication with the account database and configured to: detect a financial condition of an asset stored in an account of a user; and determine an action to be taken by the user in response to the financial condition of the asset; and generate a message for the user indicating the action to be taken.
29. The system of claim 28, wherein: the detected financial condition of the asset indicates that a new transaction relating to the asset will receive improved tax treatment if the new transaction relating to the asset is performed on or after a target date and the target date is a predetermined number of days after a current date; and the action to be taken by the user comprises the new transaction.
30. The system of claim 28, wherein: the detected financial condition of the asset comprises an increase in a value of the asset since a time of purchase of the asset; the user has accumulated losses during a taxable year which can offset gains generated by a potential sale of the asset; and the action to be taken by the user comprises selling the asset.
31. The system of claim 28, wherein: the change in the value of the asset comprises a decrease in value since a time of purchase of the asset; a sale of the asset would reduce a tax burden of the user; and the action to be taken by the user comprises selling the asset.
32. The system of claim 28, wherein: the detected financial condition of the asset comprises a user initiated transaction related to the asset; and the action to be taken by the user comprises an alternate transaction involving at least one of the asset or another asset.
33. The system of claim 32, wherein the alternate transaction comprises selling another asset.
34. The system of claim 28, wherein: the account database stores a preferred asset distribution; and the detected financial condition comprises a quantity of the asset inconsistent with the preferred asset distribution.
35. The system of claim 34, wherein: the action to be taken by the user comprises changing the quantity of the asset.
36. The system of claim 34, wherein: the action to be taken by the user comprises changing a quantity of another asset.
37. A computer implemented method of providing information to a user performing a transaction on an asset, the method comprising: detecting a financial consequence of the transaction; responsive to the financial consequence, generating a message indicating the financial consequence and a proposed action; and presenting the message to a user.
38. The method of claim 37, wherein the proposed action comprises selling another asset.
39. The method of claim 37, wherein: the transaction comprises a sale of the asset; detecting a financial consequence of the transaction further comprises detecting that the sale of the asset has increased a tax burden; and the proposed action comprises selling a second asset, the second asset having decreased in value since a time of purchase of the second asset.
40. The method of claim 37, wherein: the transaction comprises a sale of the asset; detecting a financial consequence of the transaction further comprises detecting that the asset has decreased in value since a time of purchase of the asset; and the proposed action comprises selling a second asset, the second asset having increased in value since a time of purchase of the second asset.
41. The method of claim 40, wherein the proposed action comprises receiving updated financial profile information.
42. The method of claim 40, wherein the financial consequence comprises an increased tax burden.
PCT/US2003/019284 2002-07-12 2003-06-18 Individualized analysis and proposals for finance management applications WO2004008367A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003281017A AU2003281017A1 (en) 2002-07-12 2003-06-18 Individualized analysis and proposals for finance management applications

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US19418302A 2002-07-12 2002-07-12
US10/194,183 2002-07-12

Publications (1)

Publication Number Publication Date
WO2004008367A1 true WO2004008367A1 (en) 2004-01-22

Family

ID=30114685

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/019284 WO2004008367A1 (en) 2002-07-12 2003-06-18 Individualized analysis and proposals for finance management applications

Country Status (2)

Country Link
AU (1) AU2003281017A1 (en)
WO (1) WO2004008367A1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086529B2 (en) 2003-11-25 2011-12-27 Autoalert, Inc. System and method for assessing and managing financial transactions
US8671054B2 (en) 2012-05-18 2014-03-11 Jpmorgan Chase Bank, N.A. Dynamic management and netting of transactions using executable rules
US20160078567A1 (en) * 2014-09-11 2016-03-17 Intuit Inc. Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
US9886725B1 (en) 2013-08-29 2018-02-06 Intuit Inc. Method for multi-level data presentation for year to year changes in tax liability
US10430848B2 (en) 2016-10-18 2019-10-01 Autoalert, Llc. Visual discovery tool for automotive manufacturers, with network encryption, data conditioning, and prediction engine
US10540720B2 (en) 2013-09-30 2020-01-21 The Toronto-Dominion Bank Systems and methods for administering investment portfolios based on transaction data
US10740854B1 (en) 2015-10-28 2020-08-11 Intuit Inc. Web browsing and machine learning systems for acquiring tax data during electronic tax return preparation
US10740853B1 (en) 2015-04-28 2020-08-11 Intuit Inc. Systems for allocating resources based on electronic tax return preparation program user characteristics
US10915972B1 (en) 2014-10-31 2021-02-09 Intuit Inc. Predictive model based identification of potential errors in electronic tax return
US11138676B2 (en) 2016-11-29 2021-10-05 Intuit Inc. Methods, systems and computer program products for collecting tax data
US11869095B1 (en) 2016-05-25 2024-01-09 Intuit Inc. Methods, systems and computer program products for obtaining tax data
US12062075B1 (en) 2013-02-08 2024-08-13 Autoalert, Llc Communication generation for target leads

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021397A (en) * 1997-12-02 2000-02-01 Financial Engines, Inc. Financial advisory system
US20010042037A1 (en) * 2000-04-17 2001-11-15 Kam Kendrick W. Internet-based system for identification, measurement and ranking of investment portfolio management, and operation of a fund supermarket, including "best investor" managed funds

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021397A (en) * 1997-12-02 2000-02-01 Financial Engines, Inc. Financial advisory system
US20010042037A1 (en) * 2000-04-17 2001-11-15 Kam Kendrick W. Internet-based system for identification, measurement and ranking of investment portfolio management, and operation of a fund supermarket, including "best investor" managed funds

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11151645B2 (en) 2003-11-25 2021-10-19 Autoalert, Llc Generating customer-specific vehicle proposals for potential vehicle customers
US8095461B2 (en) 2003-11-25 2012-01-10 Autoalert, Inc. System and method for assessing and managing financial transactions
US8396791B2 (en) 2003-11-25 2013-03-12 Autoalert, Inc. System and method for assessing and managing financial transactions
US8086529B2 (en) 2003-11-25 2011-12-27 Autoalert, Inc. System and method for assessing and managing financial transactions
US10319031B2 (en) 2003-11-25 2019-06-11 Autoalert, Llc Generating customer-specific vehicle proposals for potential vehicle customers
US8671054B2 (en) 2012-05-18 2014-03-11 Jpmorgan Chase Bank, N.A. Dynamic management and netting of transactions using executable rules
US12062075B1 (en) 2013-02-08 2024-08-13 Autoalert, Llc Communication generation for target leads
US9886725B1 (en) 2013-08-29 2018-02-06 Intuit Inc. Method for multi-level data presentation for year to year changes in tax liability
US10540720B2 (en) 2013-09-30 2020-01-21 The Toronto-Dominion Bank Systems and methods for administering investment portfolios based on transaction data
US20160078567A1 (en) * 2014-09-11 2016-03-17 Intuit Inc. Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
US11354755B2 (en) * 2014-09-11 2022-06-07 Intuit Inc. Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
US10915972B1 (en) 2014-10-31 2021-02-09 Intuit Inc. Predictive model based identification of potential errors in electronic tax return
US10740853B1 (en) 2015-04-28 2020-08-11 Intuit Inc. Systems for allocating resources based on electronic tax return preparation program user characteristics
US10740854B1 (en) 2015-10-28 2020-08-11 Intuit Inc. Web browsing and machine learning systems for acquiring tax data during electronic tax return preparation
US11869095B1 (en) 2016-05-25 2024-01-09 Intuit Inc. Methods, systems and computer program products for obtaining tax data
US10885562B2 (en) 2016-10-18 2021-01-05 Autoalert, Llc Visual discovery tool for automotive manufacturers with network encryption, data conditioning, and prediction engine
US11790420B2 (en) 2016-10-18 2023-10-17 Autoalert, Llc Visual discovery tool for automotive manufacturers with network encryption, data conditioning, and prediction engine
US10430848B2 (en) 2016-10-18 2019-10-01 Autoalert, Llc. Visual discovery tool for automotive manufacturers, with network encryption, data conditioning, and prediction engine
US11138676B2 (en) 2016-11-29 2021-10-05 Intuit Inc. Methods, systems and computer program products for collecting tax data

Also Published As

Publication number Publication date
AU2003281017A1 (en) 2004-02-02

Similar Documents

Publication Publication Date Title
US8005740B2 (en) Using accounting data based indexing to create a portfolio of financial objects
US8589276B2 (en) Using accounting data based indexing to create a portfolio of financial objects
US10387952B1 (en) System and method for conducting web-based financial transactions in capital markets
US10740835B2 (en) Method and system for identifying high probability trade matches
US7577601B1 (en) Leverage margin monitoring and management
Ang et al. Capital structure and dividend policies of Indonesian firms
US20150379644A1 (en) Systems and methods for identifying and remedying account error events in networked computer systems
US20130054488A1 (en) Synthetic funds having structured notes
US20090248564A1 (en) Settlement pricing for centrally cleared swaps
US20100145873A1 (en) A Mass Customizable Interactive, Multi-Faceted System For Data Collection, Processing, Analysis, Transmission, And Trading In Securities
US8099354B2 (en) Financial management system and related methods
US20190130485A1 (en) Methods and systems for creating an interest rate swap volatility index and trading derivative products based thereon
WO2004008367A1 (en) Individualized analysis and proposals for finance management applications
US7720753B1 (en) Quantifying the output of credit research systems
Huang et al. 'Buy the Rumor, Sell the News': Liquidity Provision by Bond Funds Following Corporate News Events
US8712891B1 (en) Methods and systems for creating a tail risk hedge index and trading derivative products based thereon
US8645257B2 (en) System and method for administering investment funds
US20060229963A1 (en) Portfolio performance tracking
US20130179324A1 (en) Method, system, and program product for determining a value of an index
Sobehart et al. A practical review and test of default prediction models
Gunvaldsen et al. The difference in bias and inaccuracy between commissioned and traditional sell-side equity research: evidence from Nordic investment banks after MiFID II implementation
Herman Exchange traded funds and their association with the volatility of the daily returns of major South African banks
US20190043128A1 (en) Methods and systems for creating a credit volatility index and trading derivative products based thereon
Mai The Implications of marketing capability in financial market
WO2001018671A2 (en) Financing of large capital assets

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP