To: LastShadow who wrote (748 ) 4/6/2000 7:31:00 PM From: Optim Read Replies (3) | Respond to of 871
Lastshadow, I think we should take some time to discuss the methods and then get a concensus as to which to pursue on this thread. If we start with the premise that whatever we develop wil only be as good as the trading strategy we couple with it, then we will be left with defining which methodology our collective tools can be used to verify and test. If we segment that effort into reasonable packages, it will lessen our individual effort and build a stonger 'example' here. I agree. In my opinion a trading strategy can really help in the development of a net as it will allow us to focus on the neural network while keeping our risk under control. It doesn't even have to be that complex as long as we can incorporate some basic stops to keep drawdowns minimal if the network calls it quits. Most packages will support this, and perhaps we can refine the strategy with advanced stops and such after the general model is built.Post your method/strategy/etc and then we can compare what we feel are the strengths and weakness of the methods and pick something reasonable to work together on. Here is the quick and dirty version of what has worked for me so far. Keep in mind this is like describing a moving target as I am always trying new things, but the general structure is as follows: 1. Decide what I am going to trade, and my timeframe. Thus far it has been mostly small caps that lag leaders in their particular industry. I use Quotes Plus (good, *clean* data) to dump a list of all the tickers in an industry and then rank them according to market cap. I choose one that is in the bottom 30-40% or so. Not too small, I make sure it is liquid, and relatively choppy if possible. If a chart goes straight up is hard to beat buy and hold. For timeframe I usually use an EOD timeframe. Occasionaly I try a weekly, but I find them psychologically harder to trade. Not enough action for a tinkerer! 2. I collect relative intermarket data that I think might influence my chosen issues. For the small cap semis I use big caps semi equipment and manufacturers, box makers, exchange rates, indexes, foreign indexes and funds, interest rates, utilites, etc. Many have weak links so I run a simple test in Metastock on each to see if they lead my issues. C/Avg(C) for Y, to trade X, shifted back 1 to 50 days. eg. USD leads semis by about 15 days. This just shows a link, which I can then refine. I often plot the tests in a scatter chart to see if there is a cluster of parameters that are valid to give me an idea of the periods I should use in my preprocessing of the data. 3. I then try to breakdown my issue by looking at the data as most statistical texts tell you to. I look for the long-term trend, cyclical effects, seasonality and then the residual or noise. Quite a few issues have very strong seasonal and cyclical effects that are noticable when you detrend them. 4. Once I am satisfied I have a good idea what external influences will move a stock, I try some basic technical indicators. These are basic things like RSI, Stochastic, DMI, ADX, StochRSI, etc. I sometimes try binary versions of the same, or full trading systems (1 Buy, -1 Sell, 0 Hold). I also like to try various ratios of OHLC to lags of OHLC. Other inputs include number of days since n day high/low or ratio of OHLC to n day High/Low. I also mix in some weekly variables, to show longerterm trends. Most times something will jump out as a good variable. I admit this part isn't as scientific as I'd like it to be. 5. I then throw everything together into a final net, allowing no more than 5-7 inputs, training on at least 3 years of data. If I shortern the training period once I am satisfied the inputs are predictive of my output, I drop the number of inputs to no more than 3 or 4. The GA selects the best inputs. 6. In all the tests I look at out of sample results to determine those inputs that remain consistent in their predictiveness. If something doesn't hold up, I drop it from the next batch of nets. 7. Profit is a GA based system which will train 1000's of nets at a time. After I generate enough to my satifaction I prune out the losers and then test the ensemble in a final holdback. If it does well enough I trade it. 8. My trading strategies are pretty simple in Profit, with a simple 8% stop loss. I will occasionally import the ensemble neural signal into Metastock and play with more advanced stops, etc. On a net constructed with 2 or 3 years of data, my out of sample results usually hold up about 3 to 6 months. I occasionally train new models which are added to the ensemble and old losing nets are pruned away. Because of the amount of research required to build these nets I don't trade as many issues as I would like, in or to diversify. I generally have 3 to 5 nets working at any given time. I do use other basic discretionary methods to trade other issues. This usually centers around CANSLIM picks. Again, this is a simplified version, and I probably left out a lot of details, but you should get an idea of what I do. Optim