Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
Hello, I have a little 6J automated strategy that has a pnl slope up from 2004 to mid 2013, then it is flat from mid 2013 to mid 2015 when it start to slowly go down to today.....
It could be a longer drawdown but I doubt as this is very long from mid 2013 | 2015 to now, also the drawdown is 2x bigger than the historical one......
After some research I realize the tick size change from 0.000001 to 0.0000005
How do you adapt you strategy to those? do you consider it as a new instrument and might require a new strategy?
thanks for your help and advises
Can you help answer these questions from other members on NexusFi?
What is your edge ?
How is an entry generated ?
Did you try to understand where the draw-downs come from ?
Does your strategy trade more or less over the period ?
You need to change your strategy if the strategy is doing anything based on the tick-size, then for sure.
>> What is your edge ?
There is an statistical edge (at least from 2004 to 2013, then slow down then slightly down)
Let say it is something simple as 2 sma cross over ( it is not but just so I can see the process)
>> How is an entry generated ?
Let say cross over then entry signal sent automatically (let say Market + slippage of 1 +with 1 contract)
>> Does your strategy trade more or less over the period ?
It seems to be well spread (~2000 rt for both)
- the top one is 6J with provider 1 of ticks from 2004 to mid 2013
- the bottom one is 6J with provider 2 of ticks from 2006 to today...I tried to align the date
The bottom one has a bit less trades ~1700 instead of ~2000)
This is interesting to see how two data providers gives different results...kind of weird...any idea why? (both are considered good, like CQG tickdata....)
>> You need to change your strategy if the strategy is doing anything based on the tick-size, then for sure.
No tickSize involve in the strategy code, I guess only for the slippage of 1 when the order is processed
>> Did you try to understand where the draw-downs come from ?
What do I need to do for this? do I need to basically look into each drawdown area and try to understand what generated it and then try to add some code to either eliminate or reduce it without eliminating the good area, is it correct?
How do you analyze your drawdown?
thanks
rleplae:
- in your description I see "Synthetic datafeed", what is it?
- with IQfeed can you plug the data stream to NT + your custom proprietary code, or do you need 2 IQFeed streams?
- my synthetic datafeed, is what the name says, I create a data-stream that is a calculation of multiple things
that results in a stream of values, that i then use.
- NT can only have 1 data-source at a time. I solved this by created a proxy server, NT talks to that proxyserver, if IQfeed symbol, the request goes left, if my own symbol, the request goes right.
Something like this diagram
A system based on crossing of 2 EMA (as per your example) would work well in a trending market and
fail in a choppy market understanding your system, its strengths and its weakness, when to turn it on
and when to turn it off is 'key' in avoiding such situation.
Did you trade it live over the period of 2004 - 2013 ?
or did you only later, find the best possible optimized settings and now fail in a forward test ?
> > when to turn it on and when to turn it off is 'key' in avoiding such situation.
So all your system require some manual intervention to turn on/off strategies following the market conditions? nothing is 100% automated?
>> Did you trade it live over the period of 2004 - 2013 ? or did you only later, find the best possible optimized settings and now fail in a forward test ?
I backtested in sample from [2004 to 2009] then out of sample [2009, 2013].....top picture (so it seems to hold on).
then I got more data from a diff provider and also tested more out of sample (from [2010 to now]) and you can see on the chat the result seems to be good for 3 years but then flat and down. Even the shape of the common time frame between the 2 data provider is a bit different.
Is it fixable? How will you fix this? Is my description of draw down analysis accurate?
My suggestion would be to examine the trades in detail that your backtest is making from the two different providers. You really need to see what exactly is going on on a trade-by-trade basis to figure this out.
There could be several reasons for discrepencies. I can think of a few:
1. Difference in how your providers are back-adjusting your contracts. A high liquidity instrument like 6J shouldn't have problems with this but it's possible.
2. Incorrect rollover dates. Kinda the same thing as #1.
3. The data is just different between the two providers. Compare them.
4. Tick size could be an issue but I don't see why. If you change the point value of an instrument, your return/risk should stay constant.
5. Transaction costs. Are the transaction costs being modeling the same way between the two different sets of data?
Now, to address your first question: why is your strategy suddenly not making money anymore since 2013? Well, it could very well be, that the market conditions have simply changed.
What's your strategy? Trend-following? Counter-trend? Breakout? Don't answer. Whatever it is, the market may have shifting from counter-trend to trend or vice versa.
Anyway, that's my two cents. If you look at the trades in detail, you should be able to figure it out.