logo.png Sentimentscapes (White Paper)

Sentimentscapes – Two Stage Tradescapes

In their simplest form, price-based signaling algorithms are based on directly processing an entity's prices. For this instance, we have tradescapes which furnish a full picture of the response surface. For those cases where the entity's price movements are too chaotic for directly signaling, we have referential tradescapes where the trading signals are based on a fuzzier, but less variable surrogate entity. Both of these analyses represent single stage signaling.

As with all things fractal, the concept of sentiment cannot be separated from time horizons, from the time scale of the data. There is no one "sentiment" state except in those instances where the market has shown a prolonged and hard upside or downside movement at all practical time horizons. More typically, one finds different behaviors at different time horizons. There are, for example, a number of small positive sentiment periods in a wide-sense negative sentiment time, and there are a number of smaller negative sentiment periods in a wide sense positive sentiment period.

The concept of sentiment filters comes from the observation that the upside periods in an overall negative sentiment time don't tend to be sustained, orderly, or easily signaled. Similarly, it is often observed that the downside periods in an overall positive period are similarly very hard to signal.

Sentiment Signaling

When accounting sentiment, one must define a wide-sense period or time-horizon where the overall market sentiment is estimated. If such a period is deemed of positive sentiment, only long trades are permitted in that window of time. If it is the reverse, an overall or wide-sense period of negative sentiment, then one is either out of the market or only short trades are permitted. In general, a sentiment filter is applied to an overall major market or sector index that removes the impact of any local movements in the specific entity being traded.

For example, the S&P 500 index or one of its tradable ETFs or a continuous futures contract might be used to determine if the overall US markets are in a period of positive or negative sentiment. A sentiment filter is usually binary, positive or negative, but there are three-tier sentiment filters which add an indeterminate state where no trades (or both types of trades) are permitted.

Primary Signaling

The signaling for the entity being traded is subject to this broader wide-sense sentiment filter. The primary signal will be in play unless it violates the overall sentiment filter, and if that occurs, there is an out of market state. Again, the premise is that long trades are likely to work best during those extended or wide-sense periods of positive sentiment, and will be appreciably more difficult otherwise.

Two-Stage Signaling with EM-Based Tradescapes

As one might readily imagine, a two-stage algorithm adds another dimension of complexity to the design of a signaling system. In a real world system, the variables multiply quickly. There is the sentiment data target, and that may or may not be possible to ascertain using fundamental analysis. There is the algorithm that will process that information and generate the positive and negative sentiment states, and that may be quite distinct from the procedure used for generating the primary signals.

For example, the sentiment filter may be a crossover of two moving averages, one certain to be a very long-term one. The primary signaler might be a turtle-type breakout operating on much faster time horizons.

This is where a carefully designed EM modeling system can shine, since it is designed to function effectively at all time horizons.


A sentimentscape is a two-stage tradescape that consists of generating ideal and lagged copies of signals created using a combination of a faster signaler that operates on the entity to be traded, and a slower signaler that operates on an entity representing the market sentiment most applicable to that entity.

The sentiment EM signal is fixed at a specified time horizon and applied to the sentiment target. There is thus one ideal sentiment signal, and lagged copies of that signal for each lag fraction in the response surface. This wide-sense sentiment signal is used in conjunction with each of the primary signals.

The primary EM signals are generated for all time horizons and these ideal signals are lagged at a specified fraction for the construction of the sentiment-augmented tradescape, or sentimentscape. As a practical consideration, the sentiment signal and the primary signals share the same lag fraction in the plot.

Benefits of Two-Stage Signaling

Let's see what is realizable by a sentiment-supplemented signaling system. We will look at the ten-year (2500 day) tradescape for AAPL. We will then add an EM length 80 sentiment filter using QQQ as the market reference.



The lower plot, the sentimentscape, shows a marked improvement at higher lag fractions. The benefit is the obvious one. It is now possible to use a more lagged, and thus more accurate, signaler than was true for signaling only on the AAPL price directly.

If we look at the tradescape and sentimentscape in a surface plot, the lag tolerance is seen as dramatically improved. Note the decay in risk-adjusted return with higher lag fraction (inefficiency in signaling) and with higher EM lengths (longer term signaling) on the directly signaled tradescape. In those same regions, note how the sentimentscape shows far less lag sensitivity as well as how longer trades are much more viable.



Constructing Trading System Signalers using Sentimentscapes

The task of building a two-stage signaler requires two real-world signals. For the sentiment filter in this example, the system designer must find a real world signal that accomplishes the sentiment function with this EM length of 80 time horizon. That is relatively easy, as a moving average or moving average crossover should be sufficient. Such a filter isn't particularly effective as a solitary trading signal, but that is not its function. Its purpose is solely to partition probability, to separate time into long favorable and short favorable (or out of market) periods.

The more challenging task is to generate a real-world signal within the windows of the sentiment filter. In this example that labor is now a good deal easier since one has realized a far more lag tolerant landscape with which to work. Signalers that might not have fared particularly well without this sentiment partitioning may now look quite viable with it. Indeed, the sentimentscape suggests a signal based on the slope of a basic 2-pass moving average, designed for the proper time horizon, might well be good enough.

The beauty of a tradescape or sentiment design paradigm is that one knows what can be expected irrespective of the ultimate signaling algorithm that will be used. It doesn't matter if the sentiment is accomplished by a moving average, a moving average crossover, an RSI, or some other long-term momentum indicator. Similarly, it isn't an issue if the primary signaling is derived from finely tuned moving averages, from breakouts, or from some other more local momentum indicator. The idealized signals from the EM algorithm represent the best case scenario, close to full accuracy with the greatest possible measure of order in the signal generation. While it doesn't mean one will be successful in creating an effective two-stage real-world signaler, one begins with knowing just how good one has to be, and also what can be realistically expected from a historical perspective.