Create an investment management chatbot  

Create a service-based chatbot to manage a personal wealth portfolio

Last updated

Create a Watson Conversation-based financial chatbot that enables you to query your investments, analyze securities, and use multiple interfaces.

By Tom Eck, Laura Bennett

Overview

Chatbots are rapidly gaining acceptance and becoming the norm for all kinds of customer interactions. In this developer journey, you will create a Watson Conversation-based chatbot that enables you to use an Investment Portfolio service to query portfolios and associated holdings. You’ll use a Simulated Instrument Analytics service to compute analytics on securities under a given scenario and will learn how to swap between a standard web interface and a Twilio interface.

When you have completed this journey, you will understand how to:

  • Create a chatbot dialog with Watson Conversation
  • Set up multiple interfaces with the Watson Conversation bot: web & Twilio
  • Access, seed and send data to the Investment Portfolio Service
  • Send data along with a scenario to the Simulated Instrument Analytics service to retrieve analytics

Flow

  1. The developer can set up multiple communication channels (for example, WebUI or Twilio). The application listens for messages from either channel.
  2. The conversation API takes in natural language input and breaks and maps it to intents and entities that it has been trained for. The app makes a call to the respective financial service based on the intent that was identified.
  3. The context of the conversation is saved to the Cloudant DB so that the Conversation API is able to save the state and track the conversation flow of the user.
  4. The Portfolio Investment API is called if there is a query asking for information around the holdings or portfolio. An asynchronous call is made through a “Promise Request” to make the query and return the results. Subsequently, the results are parsed and formatted in a response object that is sent back to the Conversation interface.
  5. The Simulated Analytics API is called if the intent is identified as “impact analysis.” This call initially requires issuing an asynchronous “Promise Request” querying the name of the holdings currently owned using the Portfolio Investment API. This is stored in an object that is subsequently sent to the Simulated Instrument Analytics service (SIA). SIA pulls the base and conditional price out of the object in order to compare against the potential market changes and return a measure of the impact to the holdings in this scenario. (In this use case, the change scenario is querying how the portfolio would perform if the S&P 500 drops by 5%. Results are parsed and formatted in a response object that is sent back to the Conversation interface.

Components

IBM Watson Conversation

Build, test and deploy a bot or virtual agent across mobile devices, messaging platforms, or even on a physical robot.

Cloudant NoSQL DB

Cloudant NoSQL DB is a fully managed data layer designed for modern web and mobile applications that leverages a flexible JSON schema.

Investment Portfolio

Maintain a record of your investment portfolios over time.

Simulated Instrument Analytics

Compute theoretical or market-calibrated values for investment securities over an alternate set of market conditions.

Twilio

Integrate voice, messaging, and VoIP into your web and mobile apps.

Featured technologies

Analytics

Finding patterns in data to derive information.

Artificial Intelligence

Cognitive technologies that can understand, reason, learn, and interact like humans.

Databases

Repository for storing and managing collections of data.

Mobile

An environment to develop apps and enable engagements that are designed specifically for mobile users.

Related blogs

Quickly create a Slack based Chatbot with Watson Conversation

Chatbots have become commonplace but result in little more than novelty for most applications. There exists a lot of untapped potential, and using the right tools, in addition to a chatbot, can make your bot go from novelty to necessary. With our journey, you can load Watson Discovery with unstructured data and query Discovery to...

Continue reading Quickly create a Slack based Chatbot with Watson Conversation

Related links

Xignite

Deliver real-time and reference market data to your digital assets.