TSCI.pngTSProgSentimentscape (TradeStation)

The TSProgSentimentscape analysis technique generates a series of sentimentscapes that are sequential in time for a single entity in a chart. The traded entity is signaled directly for the primary entries and exits. A two stage sentiment augmented signaler is specified.

int TradedEntity (1)

This input specifies a specific data stream to be analyzed. The value 1 uses data1, 2 uses data 2, and so on. For this function, the TradedEntity cannot be set to 0.

int SentimentEntity (1)

For a time sequence of sentimentscapes, this input specifies a data stream that is processed to create the positive sentiment windows where only long positions are permitted, and the negative sentiment windows where only short positions are allowed.

The SentimentEntity can be any entity that reflects the sentiment associated with the traded entity. In sentiment-augmented signaling, the entity to be traded can be different from the entity used for the sentiment signaling. When this is true, the SentimentEntity is usually an overall market index or a surrogate for such, or a sector index or ETF. When the SentimentEntity is the same as the TradedEntity, the sentiment signal draws its sentiment states from the wide-sense or more global behavior of the entity and the primary signal from a more local behavior of the entity.

int SentimentLen (80)

This input is the EM Length of sentiment signal. As coded, this value must be between 10 and 250.

The SentimentLen sets the time horizon for the wide-sense sentiment signal. Typical SentimentLen values range from 20-80. The higher the value, the longer in time the long-only and short-only windows will be.

Note that no sentiment filtration occurs if the EM length in the sentimentscape is equal to or greater than the SentimentLen. If the sentiment filtration is particularly effective, there can be an abrupt or sharp transition in the surface near the SentimentLen.

The lag added to the sentiment signal for each point in the surface will be identical in lag fraction to the lag for that point in the tradescape surface. For example, if the point in the surface has an EM length of 20 and a lag fraction of 1, and the EM length for the sentiment filter, as specified in SentimentLen, is 80, the idealized primary signal is offset by a lag of 20 and the idealized sentiment signal is offset by a lag of 80.

int ProgCount (4)

If this value is between 2 and 25, this is the count of time-progressive tradescapes to be generated. If this value is set to 250 or greater (125 or greater for overlapped time segments), it specifies the bar count, the amount of data, to be used in each tradescape.

int Overlap (0)

Typically, a time sequence contains no overlap. Each tradescape reflects a discrete time segment. In order to overlap the time periods by 50%, this value can be set to 1.

double Asymmetry (1.0)

The asymmetry is the ratio of the information content used for the upside transitions (turns to the upside) relative to the downside transitions (turns to the downside). A quick to enter but slow to exit long signaling system has an asymmetry less than 1. A slow to enter but fast to exit signaling system has an asymmetry greater than 1. Typical signal asymmetries are between 0.25 and 4. The turtle HH=55 LL=20 breakout system is an example of an asymmetric signaler, one that for long trades is slow to enter and fast to exit, a signal asymmetry of 55/20=2.75.

Asymmetry must be between 0.1 and 10.

In the tradescape plot, only a single EM length is shown for the X axis. The interpretation of an EM length of 20 would be as follows for an asymmetry of 0.5. The EM signal used to generate the upside transitions (the entries for a long system) will be 20 * sqrt(0.5) = 14.142. The EM signal used for the downside transitions (the exits for a long system) will be 20 / sqrt(0.5) = 28.284. The asymmetry is thus 14.142/28.284 = 0.5. While the tradescape result is shown at an EM length of 20, the actual lengths used to generate the turns for the composite EM signal are 14.142 and 28.284. Note that the EM length assigned is not the average of the two lengths.

Note also that an asymmetry of 1.0 generates the standard (symmetric) progressive tradescapes.

String FileName ("")

The data within the TradeStation chart is written to a disk file that is used in a separate procedure to generate the plots and analyses. If FileName is empty, , a temporary binary data file is used to store the data and this file is automatically deleted when the window is closed. If a full path filename is specified, a persistent ASCII CSV file is written. A full valid Windows path and filename must be specified. The directory path will be created if it does not currently exist. Since a comma separated value (CSV) file is written, a CSV file extension is recommended. For example, a FileName such as "c:\data\a1.csv" is valid, even if the folder c:\data doesn't yet exist.

int WalkFwd (2520)

This is the count of bars, from last non-reserved bar backward in time, to use for the analysis. In order to accommodate all of the time horizons in a tradescape, do not set this value below 250. For an overlapped progressive tradescape, this value needs to be at least 125. If a value is specified that is greater than the amount of data available in the chart, all of the data that is present is used.

int Reserved (0)

This is the count of most recent bars to reserve for any walk-forward you may wish to independently carry out. These data are disregarded in the analysis. A value of 0 processes all data through the most recent bar.

int DoShort (0)

A tradescape is normally a long-side only analysis. This value can be set to 1 to perform short side tradescapes and signal analysis.

int Degap (0)

This option removes all overnight/weekend gaps in data for instances where positions are always closed prior to a trading session's closing bar.

If Degap is 1, a check is made to see if the same day fraction of data is greater than 80%. If this criterion is met, as with hourly or finer bar densities, the gap across days is mathematically removed. The price activity from the prior day's closing bar through the end of the first bar of the next day will be zeroed. This means the two bars will share the same closing values. The adjustment is based on the differential in closing prices and is applied to the open, high, and low values as well.

The adjustment is made backward in time so that the most recent bar's close will be the current price. The removal of gaps moving backward in time can result in negative prices. In such an instance, the lowest low in the de-gapped data will be set to 0.01 and all prices will be shifted accordingly.

int InactiveAtLastBar (1)

When this variable is non-zero, the last bar in the chart will automatically trigger the computation and deactivate the analysis. A progress bar is normally drawn, but if this proves a distraction, it will be omitted if this value is set to 2. If set to 0, the analysis will not take place until the Status is toggled Off in the Format Analysis Techniques option.