Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

Do Or Die

Three Steps in Trading System Design

Recommended Posts

Hi,

 

My trading is yet mostly discretionary. I have been trying to automate my strategies since several years. I tried a lot of 'system design' books and tools but was never really able to code a satisfactory system. Recently I had success in automating one of my intraday strategies and it is trading live profitably. It has shifted my perception that system design may not necessarily be a complicated process. On the higher level it can be broken down into three steps.

 

 

Step 1: Start with a set of premise

A premise is just an observation about market behavior, for example: http://www.traderslaboratory.com/forums/technical-analysis/10620-technical-trading-axioms-candidates-approval.html

It can be very hard to discover a premise through backtesting. People who have been trading long enough will have set of premise as a 'just know' thing, without requiring any proof whatsoever. Any profitable trader is likely to have more than 10 premise. There is no recipe for discovering a profitable premise, however, a lot of real time observations and interaction with experienced traders can help.

 

 

Step 2: Take your premise to market

This is the step in which backtesting will be useful.

- Turn your (set of) premise into an indicator/model. Define it mathematically.

- Test exception market conditions in which the premise will not work.

- Frame entry and exit rules around the (set of) premise.

- Be careful not to rely on backtest results on data history where there have been regime shifts

 

 

Step 3: Create a Trading System with the strategy

- Analyze performance metrics such as Losers vs Winners, Exposure %, Drawdowns..

- Validate for implementation errors. This will be a tedious process to manually go through a lot of trades to assure that the system is trading as expected.

- Modify, but do not optimize. Improve your strategy by finding more stable parameters, scaling in/out, positions sizing, diversifying. Improving a system is always an on-going process.

- Perform sensitivity analysis with the set of conditions. For example, a change in exit strategy by scaling out may generate totally different set of results. Play around with system code and parameters but 'respect' the original set of premise; finding a new system by hit and trial will likely not as robust as the 'original' code.

- Validate again using your common sense and trading acumen. For example, a particular modification which significantly reduces the no. of losing trades while keeping the Avg Proft/ Avg Loss the same may not be robust.

 

I know a guy who was doing a PhD in quantitative finance. He developed a system using neural nets and support vector machines (SVM). What the program actually did was backtest all possible combinations of over a 100 technical indicators, again with all possible parameters and trade using the ones which are most stable. He showed me rolling backtests results and they looked very impressive. However, when he executed the system live it kept losing consistently. I do not have the technical know-how to comment on what was lacking in his system, but I did not like that he had no previous experience in trading, and hence no observations about market functioning prior to trading system development.

 

Good luck!

Share this post


Link to post
Share on other sites

For the third step, I will recommending skimming through these books to pick up information relevant to your strategy:

New Trading Systems and Methods by Perry J. Kaufman

Trading Systems- A new approach to system development by Emilio Tomasini

Evaluation and Optimization of Trading Strategies by Robert Pardo

Share this post


Link to post
Share on other sites

 

I know a guy who was doing a PhD in quantitative finance. He developed a system using neural nets and support vector machines (SVM). What the program actually did was backtest all possible combinations of over a 100 technical indicators, again with all possible parameters and trade using the ones which are most stable. He showed me rolling backtests results and they looked very impressive. However, when he executed the system live it kept losing consistently. I do not have the technical know-how to comment on what was lacking in his system, but I did not like that he had no previous experience in trading, and hence no observations about market functioning prior to trading system development.

 

 

This sounds quite much like the definition of overfitting.

 

Thanks for your articles!

Share this post


Link to post
Share on other sites

That guy showed me results from rolling backtests.

 

Rolling backtests are a good way to validate a system. What you actually do is use 'rolling window' of historical data to backtest your strategy. If you are statistically inclined, see here: http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=9&ved=0CGMQFjAI&url=http%3A%2F%2Fwww.springer.com%2Fcda%2Fcontent%2Fdocument%2Fcda_downloaddocument%2F9780387279657-c1.pdf%3FSGWID%3D0-0-45-169676-p59330694&ei=VUa5TvD3Dor5rQfu8NS3Bg&usg=AFQjCNHuLVAqKa47aNk-uZpjcwfXYqUd2w&sig2=p_wn8IGABohigtxEnswenQ

 

I think he is pretty sharp in machine learning, he won some contests in college.

Share this post


Link to post
Share on other sites
Hi,

 

My trading is yet mostly discretionary. I have been trying to automate my strategies since several years. I tried a lot of 'system design' books and tools but was never really able to code a satisfactory system. Recently I had success in automating one of my intraday strategies and it is trading live profitably. It has shifted my perception that system design may not necessarily be a complicated process. On the higher level it can be broken down into three steps.

 

 

Step 1: Start with a set of premise

A premise is just an observation about market behavior, for example: http://www.traderslaboratory.com/forums/technical-analysis/10620-technical-trading-axioms-candidates-approval.html

It can be very hard to discover a premise through backtesting. People who have been trading long enough will have set of premise as a 'just know' thing, without requiring any proof whatsoever. Any profitable trader is likely to have more than 10 premise. There is no recipe for discovering a profitable premise, however, a lot of real time observations and interaction with experienced traders can help.

 

Glad to see you took the first step towards automation. It seems you clearly see the benefits of automating repetitive tasks that frees your time up to oversee your system. You cannot do this glued to a bunch of charts and having to manually pull triggers. Automating the triggers helps greatly in making the user manage systems, instead of being a worker.

 

The first step is to have the fundamentals of market movement in place.

Step 2: Take your premise to market

This is the step in which backtesting will be useful.

- Turn your (set of) premise into an indicator/model. Define it mathematically.

- Test exception market conditions in which the premise will not work.

- Frame entry and exit rules around the (set of) premise.

- Be careful not to rely on backtest results on data history where there have been regime shifts

 

Step 3: Create a Trading System with the strategy

- Analyze performance metrics such as Losers vs Winners, Exposure %, Drawdowns..

- Validate for implementation errors. This will be a tedious process to manually go through a lot of trades to assure that the system is trading as expected.

- Modify, but do not optimize. Improve your strategy by finding more stable parameters, scaling in/out, positions sizing, diversifying. Improving a system is always an on-going process.

- Perform sensitivity analysis with the set of conditions. For example, a change in exit strategy by scaling out may generate totally different set of results. Play around with system code and parameters but 'respect' the original set of premise; finding a new system by hit and trial will likely not as robust as the 'original' code.

- Validate again using your common sense and trading acumen. For example, a particular modification which significantly reduces the no. of losing trades while keeping the Avg Proft/ Avg Loss the same may not be robust.

The biggest hurdle is the frustration that comes with building your system, whether yourself or using a programmer. In the validation process, it helps to record desktop for several hours. The good news is that despite having hours of video, you can skip through many of the videos quickly and focus only on the relevent footage using a decent player like VLC player.

 

There is a video here that assists in setting up recording remote desktops This is important because many automated trading programs will be running in the cloud for maximum uptime. I usually use BSR screen recorder.

[ame=http://www.youtube.com/watch?v=SoybUfW0VdY]Live broadcast your remote desktop screen unattended - YouTube[/ame]

I know a guy who was doing a PhD in quantitative finance. He developed a system using neural nets and support vector machines (SVM). What the program actually did was backtest all possible combinations of over a 100 technical indicators, again with all possible parameters and trade using the ones which are most stable. He showed me rolling backtests results and they looked very impressive. However, when he executed the system live it kept losing consistently. I do not have the technical know-how to comment on what was lacking in his system, but I did not like that he had no previous experience in trading, and hence no observations about market functioning prior to trading system development.

 

Good luck!

 

From my point of view, the core problem of his systems approach is that he did not follow steps 1 or 2 from your approach. If he did, he would have the core aspects of the trading system (determining factors for entry/exit, and the physical entry/exit). From your article, it looks like your friend was seeking to accomplish finding the core aspects by chasing the secondary characterists (indicators, et al). In other words, he sophisticated-ly managed to combine needless inputs bullsh** that ended up confusing himself.

 

As you mentioned before, backtesting [with tick data] is good for helping to establish that your system logic is feasible. That is "works" in the sense of whether mechanically all of the gears turn correctly. Profitability comes second. Big second, of course, but we must make sure our plane has LIFT before we worry about a stronger engine.

 

Once the fundamentals are in place, then you take action. And a systems approach allows for repetition in action and scalability; two important features that are impossible to implement manually on a rapid basis. The conceptual aspect of a system should not be difficult to explain. After all, price only has two directions to go. Up or down. One of the biggest ironies of this automation business is that it does not take complex algorithims to make it work. If you read the interviews of metaquotes Automated Trading Championship of the top 10 contestants, the majority of them mention that it wasn't a complex system that allowed them to win. Other type of trading championships if you look at their trading strategies, the majority of them use position sizing (e.g. bet it all in) and took their chances.

Share this post


Link to post
Share on other sites
You sound experienced. Welcome to TL! which markets do you trade?

 

Right now i am focused on forex, due to higher leverage and easier ability to position size. i will most likely be releasing an indicator that will help chartist remove time and focus exclusively on price action. This is difficult to do and take advantage of without the use of a script of some sort.

Share this post


Link to post
Share on other sites

Walk forward testing, as suggested by the paper and the Pardo book, is a great method to avoid curve fitting. However, it is very time intensive. Tradestation recently rolled out a genetic walk forward optimizer. I have yet to take it for a spin, but anything that helps with this process is very much welcome!

Share this post


Link to post
Share on other sites
Walk forward testing, as suggested by the paper and the Pardo book, is a great method to avoid curve fitting. However, it is very time intensive. Tradestation recently rolled out a genetic walk forward optimizer. I have yet to take it for a spin, but anything that helps with this process is very much welcome!

 

I've been using Amibroker's CMAE engine for rolling backtests and walk forward optimization for over a year now. It's way faster than anything I've seen. The cmae algo 'converges' very fast, and may take 1/50th of the time of an normal exhaustive optimization.

Share this post


Link to post
Share on other sites
Tradestation recently rolled out a genetic walk forward optimizer. I have yet to take it for a spin, but anything that helps with this process is very much welcome!

 

TS's new walk forward system was based on their acquisition of The Grail - a product that had been purchased by a hedge fund several years ago and then the new owners stopped releasing it for new retail customers. It may prove to be a great advantage to system designers now that it is back in the public domain.

 

From my experience, the only automated (day trading only) strategies that I have written (and I have well over 1000 of them) are based on longer time frame charts like 15 min or 30m. Anything shorter time frame including advanced bar type have not stood up over time. The lack of automated success over th epast 3 years suggests that either I have no idea what I am doing (probable) or it's not that easy to develop a robust strategy (even more probable), or both. I just find it easier to be profitable on a discretionary basis than relying on my automated strategies. There are many pitfalls besides curve fitting.

 

I would like to know

1. what timeframe the original poster is having success with and

2. whether his original premise is market price action based or indicator based.

 

Good luck with your trading.

Share this post


Link to post
Share on other sites
TS's new walk forward system was based on their acquisition of The Grail - a product that had been purchased by a hedge fund several years ago and then the new owners stopped releasing it for new retail customers. It may prove to be a great advantage to system designers now that it is back in the public domain.

 

From my experience, the only automated (day trading only) strategies that I have written (and I have well over 1000 of them) are based on longer time frame charts like 15 min or 30m. Anything shorter time frame including advanced bar type have not stood up over time. The lack of automated success over th epast 3 years suggests that either I have no idea what I am doing (probable) or it's not that easy to develop a robust strategy (even more probable), or both. I just find it easier to be profitable on a discretionary basis than relying on my automated strategies. There are many pitfalls besides curve fitting.

 

I would like to know

1. what timeframe the original poster is having success with and

2. whether his original premise is market price action based or indicator based.

 

Good luck with your trading.

 

i'm sure the original premise is market price action-based. Indicators are secondary consideration. if the foundational aspect of the system is not adequate, the system will fail instantly. Time should not be a factor. You must look beyond the time differences to see what core factors allowed the system to win or lose.

Share this post


Link to post
Share on other sites

I would like to know

1. what timeframe the original poster is having success with and

2-minute

 

2. whether his original premise is market price action based or indicator based.

 

What I mean by premise is "an observation about market behavior". So by default it cannot be indicator based.

 

For example, "Buying on bullish divergence with RSI" is not a premise.

The fundamental premise is "Buy when the internal relative strength of a stock increases even though the prices keep touching lows." See this thread for even a more detailed discussion.

In Step 2 when you mathematically define this premise it becomes a model or an indicator. (this is reverse how most people learn). In Step 1 there is nothing but plain English.

Share this post


Link to post
Share on other sites
Walk forward testing, as suggested by the paper and the Pardo book, is a great method to avoid curve fitting. However, it is very time intensive. Tradestation recently rolled out a genetic walk forward optimizer. I have yet to take it for a spin, but anything that helps with this process is very much welcome!

 

Walk forward is essential to system design. In addition to Tradestation, AmiBroker has an excellent walk forward optimizer. A system developed with "in-sample" data does not necessarily produce good results with "out-of-sample" data. I would not trust any system that has not been subjected to walk forward evaluation in a variety of market environments. More important than testing hundreds of indicators and their parameters with only "in-sample" data.

Share this post


Link to post
Share on other sites

I have been using the Tradestation Walk Forward testing for about a month now and have been running some of my dozens of previously written systems through it to test for robustness.

 

The key to robustness seems to lie in overall simplicity of the system. For example, none of my systems with more than 2 inputs will walk forward test well. Those with 0 to 2 inputs generally forward test with robustness.

 

My preferred style of systems are always in, flip flop, reversal systems using minute based charts and no indicators. I love breakouts from a market occurance, time reset systems and variable opening range breakout systems, as they have proven to me to be best at catching enough of the major market movement to be profitable, and in general, usually test and trade with more total profit than In-0ut-Target-Stop systems.

 

What I mean by two inputs or less is, for example, an oscillator like RSI, requires (1) a length input and 2 stationary lines (2 and 3) for a total of 3 inputs, which walk forward testing seems to frown upon.

 

Something like a time of day (1) and a dollar amount above and below the close at that time of day (2) would only be two inputs.

 

Just my two cents,

 

MomentumChaser Steve in San Diego

Share this post


Link to post
Share on other sites
My preferred style of systems are always in, flip flop, reversal systems using minute based charts and no indicators.

 

Although it's always in, do you still hav a drop dead stoploss in case it gets wacked?

Share this post


Link to post
Share on other sites
I know a guy who was doing a PhD in quantitative finance. He developed a system using neural nets and support vector machines (SVM). What the program actually did was backtest all possible combinations of over a 100 technical indicators, again with all possible parameters and trade using the ones which are most stable. He showed me rolling backtests results and they looked very impressive. However, when he executed the system live it kept losing consistently. I do not have the technical know-how to comment on what was lacking in his system, but I did not like that he had no previous experience in trading, and hence no observations about market functioning prior to trading system development.

 

Good story, probably one of thousands. The PhD fell victim of data-mining bias. His systems were spurious by virtue of the fact that he reused the data millions of times until he got something he liked. But the market did not like what he liked. This blog explains it all.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Topics

  • Posts

    • Date: 25th April 2024. Investors Monitor a Potential Japanese Intervention, and upcoming Tech Earnings. Meta stocks top earnings expectations, but revenue guidance for the next 6 months triggers significant selloff. Meta stocks decline 15.00% and the Magnificent Seven also trade lower. Japanese Authorities are on watch and most market experts predict the Japanese Federal Government will intervene once again. The Japanese Yen is the day’s worst performing currency while the Australian Dollar continues to top the charts. The US Dollar trades 0.10% lower, but this afternoon’s performance is likely to be dependent on the US GDP. USA100 – Meta Stocks Fall 15% On the Next 6-Months Guidance The NASDAQ has declined 1.51% over the past 24 hours, unable to maintain momentum from Monday and Tuesday. Technical analysts advise the decline is partially simply a break in the bullish momentum and the asset continues to follow a bullish correction pattern. However, if the decline continues throughout the day, the retracement scenario becomes a lesser possibility. In terms of indications and technical analysis, most oscillators, and momentum-based signals point to a downward price movement. The USA100 trades below the 75-Bar EMA, below the VWAP and the RSI hovers above 40.00. All these factors point towards a bearish trend. The bearish signals are also likely to strengthen if the price declines below $17,295.11. The stock which is experiencing considerably large volatility is Meta which has fallen more than 15.00%. The past quarter’s earnings beat expectations and according to economists, remain stable and strong. Earnings Per Share beat expectations by 8.10% and revenue was as expected. However, company expenses significantly rose in the past quarter and the guidance for the second half of the year is lower than previous expectations. These two factors have caused investors to consider selling their shares and cashing in their profits. Meta’s decline is one of the main causes for the USA100’s bearish trend. CFRA Senior Analyst, Angelo Zino, advises the selloff may be a slight over reaction based on earnings data. If Meta stocks rise again, investors can start to evaluate a possible upward correction. However, a concern for investors is that more and more companies are indicating caution for the second half of the year. The price movements will largely now depend on Microsoft and Alphabet earnings tonight after market close. Microsoft is the most influential stock for the NASDAQ and Alphabet is the third. The two make up 14.25% of the overall index. If the two companies also witness their stocks decline after the earnings reports, the USA100 may struggle to gain upward momentum. EURJPY – Will Japan Intervene Again? In the currency market, the Japanese Yen remains within the spotlight as investors believe the Japanese Federal Government is likely to again intervene. The Federal Government has previously intervened in the past 12 months which caused a sharp rise in the Yen before again declining. The government opted for this option in an attempt to hinder a further decline. Volatility within the Japanese Yen will also depend on today’s US GDP reading and tomorrow’s Core PCE Price Index. However, investors will more importantly pay close attention to the Bank of Japan’s monetary policy. Investors will be keen to see if the central bank believes it is appropriate to again hike in 2024 as well as comment regarding inflation and the economy. In terms of technical analysis, breakout levels can be considered as areas where the exchange rate may retrace or correct. Breakout levels can be seen at 166.656 and 166.333. However, the only indicators pointing to a decline are the RSI and similar oscillators which advise the price is at risk of being “overbought”. Always trade with strict risk management. Your capital is the single most important aspect of your trading business. Please note that times displayed based on local time zone and are from time of writing this report. Click HERE to access the full HFM Economic calendar. Want to learn to trade and analyse the markets? Join our webinars and get analysis and trading ideas combined with better understanding on how markets work. Click HERE to register for FREE! Click HERE to READ more Market news. Michalis Efthymiou Market Analyst HFMarkets Disclaimer: This material is provided as a general marketing communication for information purposes only and does not constitute an independent investment research. Nothing in this communication contains, or should be considered as containing, an investment advice or an investment recommendation or a solicitation for the purpose of buying or selling of any financial instrument. All information provided is gathered from reputable sources and any information containing an indication of past performance is not a guarantee or reliable indicator of future performance. Users acknowledge that any investment in FX and CFDs products is characterized by a certain degree of uncertainty and that any investment of this nature involves a high level of risk for which the users are solely responsible and liable. We assume no liability for any loss arising from any investment made based on the information provided in this communication. This communication must not be reproduced or further distributed without our prior written permission.
    • $ALVR AlloVir stock bottom breakout watch, huge upside gap, https://stockconsultant.com/?ALVR
    • $DIS Disney stock attempting to move higher off the 112.79 triple support area, https://stockconsultant.com/?DIS
    • $ADCT Adc Therapeutics stock flat top breakout watch above 5.31, https://stockconsultant.com/?ADCT
    • $CXAI CXApp stock local support and resistance areas at 2.78, 3.52 and 5.19, https://stockconsultant.com/?CXAI
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.