Does SVM work? Pointers to SVM trading systems examples?

Discussion in 'Strategy Building' started by mizhael, Apr 5, 2010.

  1. RedRat

    RedRat

    I predict next_price - current_price or "speed" of the price and volatility. I can predict 5 min speed with correlation around 0.64 for e-mini Russell 2000. And volatility can be predicted even better. But it does not give me a profit, market is quite effective.
     
    #11     Apr 9, 2010
  2. RedRat

    RedRat

    I use time series of 5min price difference. I don't think momentum of multiple time frames will improve my results. In fact I tried similar approach earlier.

    Which market is more technically traded in your opinion?

    For me it was also very strange. I may have several different NN, each one is good in the prediction. But if I average the results - the resulting profit decrease. Don't know about statistics (correlation, % of correctly predicted signs, MSE) but profits fall. While in theory it should give an improvement. Any ideas?
     
    #12     Apr 9, 2010
  3. One things I've found is that NN in particular suffer from having far too many dimensions (degrees of freedom). Even small NNs can fit just about any training set, but still have very little predictive power.

    I'm sure there are some who made NN work for them, but I know of no one.
     
    #13     Apr 9, 2010
  4. dloyer

    dloyer

    I had the same problem with other automated data mining approaches.
     
    #14     Apr 9, 2010

  5. It's subject to if you're deciding wether your system should trade less to make it more profitable or if you should go in more depth of analysis of the 5 minute bar to achieve what you're looking for... First off momentum was just a suggestion... You're obviously trading off acceleration. Try that...but think of it this way... If you're trying to trade less and get higher gains... use the time frames there after it. like 5,7, 11 etc.. Prime numbers... weight them accordingly in a matrix... get a signal by combining their inverse.... make sure you're using geometrical plains when explaining the data like Riemann surfaces.. If you're still seeking to go with the 5 minute data... Come under it... using second bars that would be equivalent to a prime number theorem. Follow the same geometric structure as explained... If you get some good results from the system spend your time focusing on pyramiding positions and other position management techniques to be more profitable.. Although again... I think you're probably better to model average... Afterall you even said "the markets are very efficient".....I concur... I trade currencies the most by the way...The most technically traded markets in the world
     
    #15     Apr 9, 2010
  6. RedRat

    RedRat


    Predicting 5 min bar is just the part of the strategy. I use it to calculate levels to enter the market. When other strategies have signals to go long, I use this calculated level to place BuyLimit order.

    There is no magic in prime numbers, as well as in Fibonacci. While they could help to take rare data. Eg I take extra information using 3, 4, 5, 6, 7, 8, 9, 10; then I might get almost the same result using rare data 3, 5, 7, 11 but 4, 6, 8, 12 would also describe things.

    As for pyramiding positions - don't use it. First of all you should have an edge. If your enters are random then without taking commissions and other costs into the consideration you have 50% chances to multiply your capital by 2 and another 50% to loss everything. That does not depend upon "averaging". If you have ProfitFactor say 1.2 then you have higher chances to reach x2 then x0. Pyramiding positions would smooth your equity curve, but there are hidden risks to loss it all which you do not count. Well it is offtopic.

    >> I think you're probably better to model average...
    what do you mean "model average"?
     
    #16     Apr 10, 2010
  7. RedRat

    RedRat


    This is the classical overtraining problem. You need train your NN to generalize on data, not to fit your data. Don't know the good solution, I use Cross-Validation set. Big NN does not neccessary means overtraining, but you need to have many many data to train it on.
     
    #17     Apr 10, 2010
  8. RedRat

    RedRat

    Do you mean "lack of degrees of freedom" problem and overtraining? Which other approaches did you use?

    I tried NN, SVM and RVM.
    SVMs in theory allow to find global minimum, but you need to choose Gamma and C coefficients. It takes time to go through the G, C grid and calculate CV (cross-validation) results in each point of the grid. And then you found that your results are good in some range, usually rhombus form. Which G and C to choose from? There should be a recepee but I don't know.

    After that I fix G and C and train on the whole of datacet. I receive prediction statistics very similar to the NN, correlation is 0.96.

    But the prediction with SVM is very slow, might be 10x or more then the prediction of NN.

    As for RVM this is the superior technique, but the training is even more slow then the SVM. The complexity of training seems to be the O(N^3) or may be O(N^2.5). I never trained RVM on the datacet of 8000+, while I want to train on millions of data.

    Could you share your data-mining approaches and results?
     
    #18     Apr 10, 2010
  9. dloyer

    dloyer

    A view years ago, I used rapid miner on a test set of normalized eod data to look at the simple problem of when a stock should be held overnight.

    I used the built in cross validation tools and had several years of data for > 800 liquid nsdq symbols.

    I tried several of the techniques built into rapid miner. None of the resulting systems had impressive yields and out of sample performance was not good at all. At best, a few % that evaporated within a few months out of sample.

    So what went wrong? I can thing of several issues:
    * The problem domain chosen may not have much opportunity.
    * The fitness function did not take risk into account. Rapid miner does not implement traditional trading fitness functions such as CAR/MDD, sharp or UPI. These need a time series of trades
    * The cross validation may not work as well as walkforward in trading applications.
    * The built in protections against curve fitting may not be strong enough.
    * The input data may not be normalized correctly.

    I have had success with human guided data mining and system development. A few things I have found along the way:
    * The fitness function tries to predict how a trading system will perform out of sample. Different fitness functions do this better or worse, but none of them do it very well. I used the average corr of fitness to out of sample performance and found that the best fitness functions had a corr of about .2, where 1 is perfect and 0 is random, < 0 is worse than random. Simple profit as a fitness function performed worst of all of the functions I tried, but not that much worse.
    * The edges that we try to find are overwhelmed by even very slight curve fitting bias. Systems have to be VERY simple to have a chance of working out of sample.

    I think it is very possible to automate system discovery, but the curve fitting bias must be addressed both by limiting system complexity and the test and validation process.
     
    #19     Apr 10, 2010
  10. I find it difficult at times to try to read the tone of what someone else is posting to you, but I have to ask.... Did you try what I said to use or are you assuming from your first thoughts of logic? To immediatley disagree about position management rules is mystifying me from your statement... 50% chance this 50% chance that.... Even with a 50/50 system if you control position management correctly you can stand to be highly profitable. Perhaps when you think of the "Edge" you're speaking of you may think that it should be correct at a high frequency to even consider it as a good system. The reality is you don't even have to be 25% correct in your entries to be profitable. Again I'm not sure if your system is seeking larger profits to trade less, or seeking smaller ones to trade more frequently, from what you've said so far. Although, it doesn't matter when you can use techniques like pyramiding to trade to increase profits without increasing risk. I'll leave my next statement for my next post if you'd like to disagree. As for model averaging...just google it...There are too many ways to explain the same concept... much like everything. As for the prime number theorem...I could agree with you that you might get a considerable amount of slight differences, but assuming you're an automated trader your profitability will notice the difference. Let's be obvious, if you don't use a prime set you'll just be reaffirming the same patterns of lower time frames again and again.
     
    #20     Apr 10, 2010