Blog

Measuring Strategy Performance

by Bill Brower on May 27, 2016 | Categories: Uncategorized |

Measuring Strategy Performance

I am frequently queried about the best way to determine how good a strategy is. TradeStation provides a lot of metrics on their “Strategy Performance Report” but most of them do a lousy job of measuring “goodness”. If I had to define “strategy goodness”, it would include a list of properties as follows:

o High net profit
o Lots of trades
o No outlier big win trade
o High percent of profitable trades
o Small drawdowns
o Short drawdowns
o Staying in market as little as possible
o Smooth equity curve

The problem with most of the metrics provided by the TS “Strategy Performance Report” is that they measure the goodness of only one of the properties listed above. This can distort your perception of the performance. The most common mistake is looking at “net profit” which is the standard metric used to rank performance in the “Optimization Report”. However, a high net profit often comes at the price of having one big outlier winning trade. You can spot this problem most easily be looking at the equity curve. (more…)

Share

Read More

Trendline Issues

by Bill Brower on May 22, 2016 | Categories: Uncategorized |

Trendline Issues

Drawing trend lines on a chart has always been a significant body of work for technical traders. Since very early on, TradeStation came equipped with drawing tools that made it easy to manually apply trend lines to charts as well as to create them automatically from the code of an indicator or other analysis technique. Applying them manually to a chart gives you the freedom to apply them to price bars or even indicators in a subgraph. This is commonly done to show the occurrence of divergence. However, this becomes a problem to do mechanically from the code in an analysis technique because trend lines are assumed to be plotted on price bars in Data1. An exception to this is the feature of OOEL to allow trend lines to be plotted on price bars in Data2 or other data series. However, that is still not the same thing as applying a trend line to an indicator in subgraph 2. (more…)

Share

Read More

Up and Down Volume

by Bill Brower on May 13, 2016 | Categories: Uncategorized |

Up and Down Volume

Market prices are determined by traders issuing market orders. That is to be distinguished from those using limit orders. A trader that absolutely must get filled immediately issues a market order. The market seen by traders is composed of a bid price and an ask price. This is known as the bid ask spread. Market orders always get filled at an unfavorable price by the execution on the opposite side of the bid ask spread. So a market order to buy will be filled at the ask price or higher and a market order to sell short will be filled at the bid price or lower.

If we wish to track volume and distinguish between up volume and down volume we would look to see whether fills take place at the bid or ask prices. So if 100 shares are purchased at the ask price that would be classified as up volume because the trader issued a market order to buy and was forced to cross the spread and get filled at the ask. The opposite would be true for a market order to sell short which would get filled at the bid price and is consequently considered down volume. (more…)

Share

Read More

A Substitute for GetStrategyName that works.

by Bill Brower on May 12, 2016 | Categories: Uncategorized |

A Substitute for GetStrategyName that works.

Beginning with TradeStation 2000i and carried along in versions of TS5.0 through TS8.6, there was a command that allowed the programmer to access the name of the strategy that was running in a chart window. That command was getstrategyname. This was particularly useful to traders that wished to perform strategy testing and save the test results say from an optimization with custom code to a file. For reasons that have never been revealed, TradeStation decided to abandon this command and disabled it. So it was that for several years there was no way to access the name of the strategy from within Easylanguage. (more…)

Share

Read More

On Balance Volume and Beyond

by Bill Brower on May 6, 2016 | Categories: Uncategorized |

On Balance Volume and Beyond

Tradestation has an unusual perception of volume. Unless you are new to trading you understand the concept of volume and how to measure it. If we are talking about stocks, volume is measured in shares. If it is futures, volume is measured in contracts. There is another measure that is available that is related to volume. It is the count of the number of trades. Unfortunately Tradestation chose to tag this statistic with the word “ticks”. There is another word very similar to this which measures the minimum distance a symbol can move on the exchange and it is called a “tick”. It is entirely different from the word “ticks”. If a trade takes place for one share or 100 shares Tradestation calls it a tick and the number of trades taken in the formation of a bar on the chart is the count of ticks. (more…)

Share

Read More

My First Post

by Bill Brower on January 13, 2016 | Categories: Uncategorized |

My First Post

After 23 years of providing TradeStation Easylanguage programming solutions to clients around the world, the time arrived for me to share my thoughts and ideas with other TS users. To that end I have this new website that allows me to post to a blog. Although I have a tutorial workbook for Easylanguage programming for sale, I will not cover that same material here. I will share Easylanguage tips and tricks and provide helpful commentary on the use of TS in ways that many have not considered. I believe that TS will only survive this competitive environment if we act as a community to support the product. I sincerely hope I can help through this blog. (more…)

Share

Read More