You are here

Macroeconomic View

Last updated:

The MVS Macro Project is an ongoing effort to gauge market sentiment using financial news data, cutting edge cloud computing technology, and advanced computational analytics. The project was founded under the belief that daily shifts in market price, when correlated with market sentiment, can indicate whether the market as a whole is overbought or oversold.


The Macro Project was started in 2008 after witnessing large, daily fluctuations in market movements that seemed to be highly correlated to the sentiment of news events broadcasted by the media. Around this time, large hedge funds began high-frequency, automatic event-trading in an effort to capture small gains before the general public had time to react. Investment firms around the world have spent and continue to spend large amounts of capital in an effort to secure real estate in close proximity to stock exchanges and create lower latency networks between their servers and the central exchange trading servers. A few milliseconds can mean the difference in millions of dollars of profits if a firm can trade a little bit faster than the competition, getting a better price as a security makes a movement. The way forward for many financial institutions seems to involve cycling through large amounts of news and financial data, in order to buy and sell, not so much specific securities, but entire sectors at once. Simply put, positive news will bring positive daily trends in the market, and negative trends will bring negative swings. These actions have resulted in the sometimes comical daily fluctuations in world markets. measures of volatility are at an all-time high, and most indications suggest that these fluctuations will not subside in the near future.


Many financial institutions have set amounts of capital that they choose to invest (or divest) in public markets. This fact, when coupled with event-based trading, results in an interesting phenomenon that is best illustrated with a simple example:

Say, for instance, that Company A has $500M to invest in the market and that it utilizes changes in market sentiment to quantify the amount of capital that it will invest. Over the course of a week of favorable market news, it invests $460M, which represents 92% of this allocated capital. Soon, the funds are all but fully invested, and yet the financial outlook continues to improve. Since Company A has a limit of $500M to expend, it will have to invest less and less for each positive event it witnesses in order to avoid hitting its limit.

Conversely, if Company A has a short limit, it must short less and less securities as the investing atmosphere becomes more negative since it approaches this limit. This results in the following observation:

If a market experiences an overall trend where favorable news brings it higher and negative news brings it moderately lower, a trough in the market has been reached. Similarly, when favorable news raises the market slightly, and negative news drops its value significantly, a peak is near. In other words, at the beginning of a trend, the amplitude of correction overcompensates for changes in market sentiment and towards the end of a trend, it under-compensates, indicating that the market has become saturated (or desaturated in the converse situation).

This can be illustrated simply in the following graph that was produced by running the Macro Project’s financial analytics over historical data:

The top portion shows the weekly average market movement for the S&P 500 from August 2007 to April 2012. The middle portion of the graph shows the calculated market sentiment related to media events gathered through journals, news articles, and blog posts. Red and green bars correspond to 10 market day periods that contained overall negative or positive news respectively. The magnitude of the bar indicates the magnitude of the news. The bottom section shows the Macro Project’s financial analytic output after correlating market sentiment, movement, and volume. Green represents a buy signal and red, a sell signal; the magnitude of the bar indicates the confidence of the analytic’s output.

Technical Details

To gauge the overall sentiment of the market, HTML scrapers and Google News API calls collect data from financial news websites, blogs, and databases. Then a custom Extract Transform and Load (ETL) program collects the date, source and other indicators of the data pieces' importance and this data is bulk ingested into a Hadoop cloud computing cluster which is running MongoDB in parallel (for json metadata storage). This information is then fed through several analytics on a daily basis that do rigorous verbal calculations using an OWL Symantec Web Ontology in order to score each news item by significance, and negated to show negative news. The placement of the news item also contributes to its overall score. Words that correlate between and preside in multiple news sites tend to indicate a news item with a higher magnitude. These values are combined and reduced (to avoid redundancy) and yield an overall score for the trading day based on its positive or negative outlook. This is then compared to the movement of US indices with a weighted average spanning immediately after the news break and softening up to the close of the trading day, to help show any correlation to market movement. When this score is compared with market volume and movement, and averaged with all other data over a given time period, an overall buy/sell rating is calculated. A technical schematic is presented below:

Simple Example

Sample pieces of data are shown below. Currently, the base url where the data-piece originated, the time and date, the HTML tag associated with the data (h1 in this case is a header, which would be weighted heavier in our analytics), and the data itself are ingested into the MongoDB datastore.

The data is extracted from the tables based on the dates associated with the data and processed. The data text is fed to the OWL based financial ontology, which uses pattern recognition to map various key words (shown in bold) in the text and weight them accordingly to their calculated meaning.

This output can be summed in multiple ways in order to yield a sentiment based on a time input period, or a specific security. Because all data is permanently stored in the Hadoop data store, the team can run analytics on historical data in an effort to closely map the historical trends and price fluctuations. In the above simple equations, "n" is the daily total for a particular security and "M" is a normalizer used to make all security data comparable. This figure is constantly changing and continues to be one of the greatest areas of research and development at MVS Financial.

© 2016 MVS Financial. All rights reserved.