In a recent article, “Modified Chartmill Value Indicator“, the author presented an indicator that might prove helpful in your trading. The indicator is an oscillator which highlights overbought and oversold conditions. The author created a simple test strategy to test the effectiveness of the strategy. The results looked promising and you can read about them here.
The original article provided the indicator and strategy as Amibroker code. I’ve received many requests to provide an EasyLanguage equivalent. So here it goes.
The MCVI Indicator
The EasyLanguage code is at the bottom of this article. It’s available as a text file and as an ELD file which can be imported directly into your TradeStation Development Environment. Below is an example of the MCVI applied to the daily chart o the S&P.
Trading Model Rules
The original article tested the indicator on weekly data of the S&P 500 Index, the Russell 2000 index, and the NASDAQ 100 index from January 2000 to January 2013. I would like to perform a similar test with daily data in order to generate a few more trades. I will be using the same buy/sell triggers and market regime filter as the original article.
- User Specified Look-back period (N): 15 days
- Long Entry: MCVI crosses below -0.51
- Short Entry: MCVI crosses above +0.43
- Moving Average Filter Periods: 230 days
- Long Exit: After 35 days
- Short Exit: After 25 days
If you review the original article, you can see I simply took the weekly parameters and multiplied them by five to generate my daily parameters. The assumption is there are five trading days in one week.
Before getting into the details of the results, let me say this: all the tests within this article are going to use the following assumptions:
- Starting account size of $25,000
- Dates tested are from 1997 through December 31, 2013
- One contract was traded per signal
- The P&L is not accumulated
- $30 was deducted per round trip for slippage and commissions
- There are no stops
The original article used a period through December 31, 2013 to optimize the inputs. Thus, I’m calling this segment of the data our in-sample segment. Below is how the strategy performed with a $25,000 account applied for each of the three markets.
We succeed at generating more trades by moving the timeframe to a daily bar. During our testing we used the same optimized parameters generated on a weekly chart yet, they held up well on our test. I would guess that optimization on the daily chart would produce even more optimal returns. The equity charts look decent accross our three differnt markets, which is not too surprising since they are correlated.
As stated in the original article, this trading model is nothing more than a test of the MCVI indicator. This is not a trading system that can be traded with money. However, it might be possible to use this indicator in building your own systems.