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)
... thanks for posting this iantg. It got me to thinking....
The problem I've always had with ADX (on intra-session trading) is coming up with a qualitative signal for trend or noise. Using a static reading of say 25 or 30 misses too many good trades or worse: sets you up to get whip-sawed by trading the end of the move.
The only way I've found value in ADX is relating it to it's own most recent hi / lo and correlating that to the price action. But, this turns a system tool into just another discretionary indicator.
Your thoughts would be appreciated.
Can you help answer these questions from other members on NexusFi?
You raise a great point, and that is that there is a large amount of noise that will always be present. Trying to navigate this and place everything into context is the challenge. More times than not, indicators based on any sort of past history become irrelevant just as soon as you get a clear signal at all.
In the case of the ADX, or any indicators of this class that attempt to identify trends, or ranges... These all suffer from a whack a mole type of dilemma where late readings cause misses and early readings cause whipsaws. I think as you mentioned the only way to solve for this is to have some context with a predefined range (highs and Lows) that you deem significant. If the ADX changes course within the context of this high or low range then take action, otherwise call it noise.
I haven't looked at the ADX or this type of trading myself in over ten years, but I do use some custom volatility ranges from time to time. And they work on a similar principle. Over the last K number of bars, or X amount of time, define the Min and Max that the market has moved. Define a couple of midpoints between the Max and Min.... call this the (upper threshold) and (lower threshold). When the market moves into the lower threshold you are in a range, break out your range trading tool box, and enter on pop outs and try mean reversal types of trading techniques. When the market moves into the upper threshold, you are in a trend, here you enter on the pull backs, and use your trend following tools.
This is still going to be a whack a mole game with false signals, and whipsaws occurring, but from a betting perspective all you need to do is have 1.5 winners for every 1 loser (assuming even profit and loss size) and you can beat the statistical line for winning overall. *** There are other bets regarding your PT and SL that can give you ever better edges, but for simple math assuming a 1x1 R-R I think 1.5 winners for every 1 loser will beat the game.
I think there is enough merit in this to get close to this line, but you may need a couple additional edges as well. I don't think someone could use only market orders for example, only trade direction, have little sophistication with money management, and not have exit system optimizations.... could beat the game. But I think there is an edge here nonetheless.
Hope this helps a little.
Ian
In the analytical world there is no such thing as art, there is only the science you know and the science you don't know. Characterizing the science you don't know as "art" is a fools game.
... really good stuff, iantg. I'll re-read your comments several times
You seem to infer that the order book needs to be factored in, true? But, from my experience the order book is basically #FakeNews for the independent trader. Unless you have deep resources, trying to factor in the order book as a guy trading from his PC is a waste of time. Too many times, I see order book shenanigans that either prevent me from pulling the trigger or worse: take me out early of a winning trade.
SL and PT is where the edge can be found for the independent trader, IMO.
No you shouldn't need to worry about any level 2 data. I am not sure if I worded something to imply this by mistake or not... But no this won't hold much value in the context of what we have been talking about here.
Your characterization of calling the level 2 (Resting DOM volumes) #FakeNews is very fair for the average retail trader. Especially when it comes to the best bid / ask, there is very little here that will be actionable to retail traders given their latency. Orders that are 2-10 levels out may present information that one could react to in time, but as I am sure you know, there are lots of changes occurring constantly with added and canceled volume so it's a bit noisy and nothing is written in ink, so it's a bit of a crap shoot.
The most practical use of level 2 data in my opinion is knowing the resting volumes out there, in connection with placing your order K levels out. With this, you can build a queue tracking model to know your position in the queue. This will give you better decision making because you will be able to know if you are likely to get filled on not in the first place.
Best of Luck!
Ian
In the analytical world there is no such thing as art, there is only the science you know and the science you don't know. Characterizing the science you don't know as "art" is a fools game.
From your attached tick data, how can you infer how much of the volume is buy volume and how much is sell volume? Also, where did you get that data from? I'm trying to find somewhere that provides single tick data in ascii or csv format with volume.
The level 1 feed has it separated by bid and ask transactions. In the past I used NinjaTrader, and in their syntax this lives within the OnMarketData event handler, and within this there is an easy way to segment buys from sells by looking at the Bid or Ask variables.
I am not sure how other software works with the level 1 feed but any platform that is worth using should easily have this capability.
Regarding sourcing raw data: I think the best solution will be to write your own extraction code and then use this with an existing platform to get the relevant data. If you go to the market to buy something it will either be at too much of a summary level. I.E extracting data from something like https://www.freestockcharts.com/. Or if you want to get all the volume at every level, then you might end up with too huge of a data size. If you want just the transacted value separated by bids and ask only, (No level 2 or canceled transactions) we use to have something here in the elite section. I never used it my self, but I have seen many that have.
In the analytical world there is no such thing as art, there is only the science you know and the science you don't know. Characterizing the science you don't know as "art" is a fools game.
I asked the sales rep from fxcm apps whether their tick data downloader ($1000) includes volume and he said the following is all it provides. I'm guessing this isn't sufficient to determine volume from?