Financial Technology

The Wolfram Language is where data science meets financial data.

Financial Data

Data Import and Access

Almost every project begins with data, so the Wolfram Language makes it easy to get the data you need. You can easily get terabytes of financial data that come built into the Wolfram Language or just as easily access a third-party API, import your own data or connect to data services like Bloomberg.

In this example, the stock price for General Electric is called using the FinancialData function.
Plot the stock price for GE since January 1, 2000:
DateListPlot[FinancialData["GE","Jan. 1, 2000"]]
The Wolfram Language can import hundreds of common types of file formats, so you can easily add your own data into your project:

Sometimes you need to get data from a third party or website using an API—the Wolfram Language enables you to do this in a single line of code.

In this example, the current location of bicycles available to rent in London is fetched from an API, and the locations with the most bikes are visualized:
APIURL="http://api.citybik.es/barclays-cycle-hire.json";
Map[{#["lat"]/1000000,#["lng"]/1000000}&,Import[APIURL,"RawJSON"]]//GeoHistogram

The Wolfram Language also works with professional data services like the Bloomberg Terminal. For more information about connecting with a Bloomberg Terminal, visit our site for the Wolfram Finance Platform

Analysis and Visualization

Visualization

Once you have formatted data, you'll often want to visualize that data—the Wolfram Language has many different functions for visualizing data, including special financial data visualization functions.

In this example, an interactive trading chart is created to visualize Google's stock performance:
InteractiveTradingChart[{"GOOGL",{{2009,1,1},{2009,12,31}}}]

You can also create plots using time series information, for instance, this example where an ARIMA process is fitted to historical stock data in order to make a forecast:

data=TimeSeries[FinancialData["SBUX","Close",{{2013,1,1},{2013,12,1},"Week"},Method->"WDF"],TemporalRegularity->True]
DateListPlot[data,FrameLabel->Automatic,Filling->Axis]
Fit an ARIMA process:
eproc=EstimatedProcess[data,ARIMAProcess[2,1,1],ProcessEstimator->"MaximumConditionalLikelihood"]
Forecast to the next half year:
forecast=TimeSeriesForecast[eproc,data,{26}];
DateListPlot[{data,forecast},Filling->Axis]

Financial Analysis

Financial analysis can be complex, but with Wolfram's built-in formulas your code will remain easy to read, reducing errors and project time. For example, FinancialDerivative can find the value (or other properties) of over 100 types of derivatives.

Value and all Greeks of a European call option:
FinancialDerivative[{"European","Call"},{"StrikePrice"->50.00,"Expiration"->1},{"InterestRate"->0.1,"Volatility"->0.5,"CurrentPrice"->50,"Dividend"->0.05},{"Value","Greeks"}]
Compute the value given an expiration date of the contract:
FinancialDerivative[{"European","Call"},{"StrikePrice"->50.00,"Expiration"->DatePlus[Take[DateList[],3],365]},{"InterestRate"->0.1,"Volatility"->0.5,"CurrentPrice"->50,"Dividend"->0.05}]

The function FinancialBond can be used to calculate any feature of a bond.

Price of a 10-year semiannual coupon bond with a 5% yield 9 months after the issue date:
FinancialBond[{"FaceValue"->1000,"Coupon"->0.0575,"Maturity"->10,"CouponInterval"->1/2},{"InterestRate"->0.05,"Settlement"->9/12}]

The Wolfram Language also has a complete suite of tools for advanced financial modeling and statistics.

Define a process by its stochastic differential equation:
proc=ItoProcess[\[DifferentialD]x[t]==-x[t] \[DifferentialD]t+Sqrt[1+x[t]^2] \[DifferentialD]w[t],x[t],{x,1},t,w\[Distributed]WienerProcess[]]
Simulate the process:
RandomFunction[proc, {0., 5., 0.01}]
ListLinePlot[%, Filling -> Axis]
Learn more about Wolfram's stochastic differential equation processes

Get Started

Learning Resources

Learning Paths

Try it now, learn later

Want to just try it out? Get a feel for what the Wolfram Language is like while trying out real code samples focused on financial technology.

Try these instantly! Access with a free Wolfram Cloud account
Get certified for free in the Wolfram Language

We've made it easy to learn the Wolfram Language your way. Try our free interactive course and earn a certification.

Start the interactive online course now! About 20 hours for completion
Try these instantly! Access with a free Wolfram Cloud account
Start the interactive online course now! About 20 hours for completion

Go Further with Finance

Want to keep exploring finance?

If you want to see more of what Wolfram offers for financial computation, head to the Financial Computation guide page. You'll find:

  • Specialized financial functions
  • Information about importing and exporting financial data
  • Link to Wolfram Community's finance-related questions
  • Related documentation
Learn more

Recommended Product