What is this page about
Our stock market forecast system consists
of two major parts: an extensive database and a forecast model. The
forecast model reads the database and then makes a prediction of where
the market is headed. From this prediction, we determine a trading
position for the Dow Diamonds (symbol DIA) or the SP500 Spiders (symbol
SPY). The database and forecast are updated daily at the close of trading.
This document gives some details of how this all works.
| Table of Contents:
Introduction - the holy grail
Wouldn't it be great to have a model that would
tell you with 100 percent certainty that the market will be going in
a certain direction over some specified time period? Too bad that there
is no such model, but If one did exist, we would know to buy before
the market goes up and sell before the market goes down. There would
be virtually no risk in being in or out of the market. Profits would
just keep rolling in. The quest to find such a model has been attempted
by many but without success. The reasons lie in the inherent randomness
of the market and something called market efficiency. What this all
means is that the signal that foretells the market direction is buried
deep in the noise of normal trading and the signal varies in intensity
over time. For a model to be even marginally successful, two conditions
must be met. First, you must resolve (find) this signal, and second,
you must be able to analyze it. Resolution is achieved by accounting
for the statistical fluctuations in the market variables that we measure.
The analysis is possible because of the fidelity and complexity of
the modeling technique. We have managed to develop a forecast model
that is far from perfect but does reasonably good job meeting these
Table of Contents
What do we forecast
We have developed a mathematical model that
predicts the direction of the market over the next trading day. The
model forecasts the SP500, but
the forecast also applies to the Dow Jones industrial Average (DJIA)
since they are highly correlated. We use
this direction to indicate a trading position which can be either long
or short the SP500 SPIDER (symbol SPY) or the Dow DIAMONDS EFT (symbol DIA), or be in cash.
This trading position is used only for the purpose of computing a model
return. The trading position that you use should depend on other factors
including your level of acceptable risk and your financial situation.
The forecast is computed after the market closes so positions can be
traded in the extended hours sessions or at the open of the next trading
Table of Contents
The forecast model and the ANO
We use an advanced neural network model in combination
with a genetic algorithm to calculate the SP500 forecast. The calculations
are somewhat complex but can be summarized by the following three procedural
steps. Step one: the genetic algorithm
is used to find the optimum neural network structures and inputs. This
calculation basically determines how the networks will be wired. Step
two: using the information from the first step,
a set of networks is initialized and then trained on about 75 percent
of the market data (in-sample) in our database, which currently consists
of about 7200 days of data. We use an evolutionary program to train
the networks (i.e. to determine the neural network weights). You should
think of training as the process of teaching the networks to predict
the best trading position. Step three:
after training, the networks are rigorously tested on the remaining
25 percent of market data (out-of-sample). Networks that fail the test
are discarded. Networks that pass the test are included in the library
that we use to calculate our forecast. The number of neural networks
currently in our library varies from day to day, but normally contains
more than 400.
Input to the networks are technical and fundamental
market data. The table below shows the types of data that are currently
used by the model:
|DJIA closing value
||DJIA theoretical high value
|DJIA theoretical low value
||DJTA closing value
|DJUA closing value
||NYSE total volume
|NYSE number of advancing stocks
||NYSE number of declining stocks
|NYSE number of new highs
||NYSE number of new lows
|NYSE advancing volume
||NYSE declining volume
|SP500 closing value
||SP500 trailing earnings
|Yen-Dollar exchange rate
||TBILL discount rate
|CBOE Volatility Index
||US Dollar index
The above data are filtered
and normalized and certain functions of these data are computed.
We currently compute 63 separate input variables at the close of
each trading day.
The 63 inputs are applied
to a neural network and after some number crunching the network outputs
a value between -1.0 and +1.0, with -1.0 being a very strong down
market signal and +1.0 being a very strong up market signal. A value
near zero would indicate a neutral market signal. We apply the inputs
to each network in our library and an average of their outputs is
computed. This average network output (ANO)
is used with position setpoints to determine a trading position for
the Dow Diamonds (symbol DIA) or the SP500 Spiders (symbol SPY) for
the next trading day. When
the computed value of the ANO is above the long position setpoint,
a long position is indicated. When the value of the ANO is below
the short position setpoint, a short position is indicated. When
the ANO falls between these two setpoints, a cash position is indicated.
Because of the timing of the update, trades may be made in the extended
sessions or at open of the next trading day.
computing our performance, all trades are assumed to take place
at the session close. The current
trading position along with recent ANO values and the ANO setpoints
are shown on our forecast page.
Table of Contents
highly recommend that you set trailing stops when you are not in cash.
This is to protect your investment from unexpected market behavior.
You might also want to use a hedging strategy (like the purchase of
call or put options) to further reduce risk. The trailing stop is set
at some percentage below the security purchase price when a long position
is entered and a percentage above the security price when a short position
is entered. The percentage you should use will depend on the volatility
of the security and your risk tolerance. We currently use 5
percent for the Dow DIAMONDS. The stop value
is raised (to maintain the percentage) for long positions when the
closing price increases and lowered for short positions when the closing
price decreases; otherwise, the stop value is not changed. If the closing
price of your security hits the stop price, you have been stopped out
which means that you should to exit your position and go to cash for
at least two days. We publish the trailing
stop value on the forecast web page.
the DJIA or the NASDAQ averages
The SP500 is a good estimator
of many of the other indices. It's highly correlated with the DJIA
and reasonability well with the NASDAQ 100 index . The chart below
illustrates their relationships.
correlation coefficient between the DJIA and the three ETFs - DIA,
SPY, and QQQ are respectively: 0.99997, 0.99468, and 0.94711.
table below shows a list of ETFs that you may want to consider trading
with this model.
|| Short QQQ
|| Short SP500
|| Short DJIA
|| Short SP MidCap
|| SP MidCap 400
|| Ultra Short QQQ
|| Ultra QQQ (2x)
|| Ultra Short SP500
|| Ultra SP500 (2x)
|| Ultra Short DJIA
|| Ultra DJIA (2x)
|| Ultra Short SP
MidCap 400 (2x)
|| Ultra SP MidCap
Table of Contents
A final word
add market data to our database daily. We also make improvements (updates)
to our model. Through this development, we often see that forecast
errors made in the past are corrected in the training process. As a
consequence, we see a continuous improvement in our forecast accuracy
and in the correlation between the DJIA and the ANO. Our forecasts
will never be 100 percent accurate and this fact needs to be factored
into your investment strategies. Nevertheless, the quest for the holy
grail continues, even though we know that it will never be found.
us should you have any questions, suggestions, or comments.
was updated on: July 16, 2019.
to our home web page.