I've been testing the original idea in the first part of this thread. First i set it up in Excel on OHLC data and got positive results consistently. Then i set it up for tick data in MT4 and get random results. So i'm beginning to examine the data closer (debug) to find out why. So far, it appears as though there are an average of 2+ trades per time frame, all of which are random. However, the OHLC method of calculating shows always if there was a winning trade, but not always if there was a losing trade. That way, the net result is generally positive. It appears that there are enough losing trades hidden by the OHLC method that the apparent positive expectancy is wiped out. I was not able to improve the situation by trading with a bias (moving average). I will be double-checking my work over the next few weeks and may post my findings. If anyone has verified that this works with tick data, please speak up or speak to me in PM. I really wanted this method to have legs and am perplexed as to why it fails, despite all the positive posts here in this thread.
Well whatever the problem is, i hope to get to the bottom of it in a few weeks. This pic represents the basic concept as i have understood it. This is what i've tested with tick data. There is another concept however that seems also to have been floated in this thread, which may represent what is missing from the equation.
The following pic represents another way that i've heard/read NukeTheWhales31 explain the concept: I've not tested this yet, but i will.
Can you be more specific as to why this is the case in your backtest? It shouldn't be if you test properly.
Ok. I have it set up to take one trade per bar whether its an hour, four, or a day. I can also change the MDRR by changing the number of outliers i want to dismiss. Nuke dismisses typically 4 bars out of the 21 or so ( 2 long and 2 short outliers). Anyway, no matter how many bars i keep or dismiss i end up with random results like this: I've checked my math by outputting the numbers to a text file. I do indeed appear to be buying, stopping out, and taking profit according to the rules. I get my MDRR, stop, entry and TP by evaluating the last N bars. N is set at 21 at the moment. I put the numbers into variables and when they are hit, i open a position; set the stop and the TP. I've tried it with and without a moving average filter. No improvement. In the case above, i think i was taking out enough outliers to create an almost 1:1 MDRR. Oh, and then, if i allowed multiple trades per bar, i'd get double or more trades. What i think is happening is the OHLC evaluation somehow sees all the profitable trades, and hides unprofitable ones (of the multiple trades per bar). The above chart is just taking the first trade of the (daily) bar and no more. Btw, i've tried to reverse it by fading the signals and get the same kind of downward path. I will check my work and get back.
There's more to it than that, at least more than in the diagram. Here's how I think of it in my head: "If price moves X pips from some starting point A to a point B, then it will continue Y pips to point C without returning to point A with a probability P." Nuke's initial analysis in the early part of the thread looked at candlestick data, measuring the distances from the open to the high/low to find the longest short distances and shortest long distances. The weakness of the LSD/SLD price bar method is that you're taking snapshots of price action and not looking at all the ticks. It's like lossy compression in a way; the data is more succinct but you lose information in the process. One other thing to consider is that the LSD/SLD bar analysis also imposes a time constraint. The movement from point A to B to C is defined to be within the time period of 1 bar. So if you're looking at 1 hour bar data, the whole movement from A to B to C has to take place within 1 hour. If you analyze tick data directly, it begs the question about timing. Do you constrain the traversal of points A, B and C within some time period? Or do you just say that the traversal can occur within any time period as long as it's in sequence?
There is a great book that goes over similar concepts written be a great trader and owner of MBF Mark Fisher called Logical Trader. Check it out.
Hi steve, This is generally how i think of it. As far as i can tell, we're on the same page here. Whether this works or not is up to the bits and bytes to decide whenever i get around to running some more tests. It was feeling like work so i took a break to so something more fun, like retro programming in old MBASIC on IBM PC and/or CP/M emulators. I looked at bar data pretty extensively a couple of months ago via Excel 97. I'm including the spreadsheet in this post if anyone is interested. I believe i've done the math, as well as it can be done on bar data. If anyone doubts they can check my work. This is what my tick data tests seem to suggest, unless i've miscalculated somewhere. With code, any scenario can be tested to see if it works. The question here is should the trade be ended at the end of each time interval...or should the trade be allowed to go until it takes profit or stops out. By changing a couple of variables, both can be tested. Whichever one i've tested so far , it doesn't seem to work. Or in other words, if a trade has been initiated, should it be allowed to end according to the take-profit/stop parameters...or should it get terminated at a time-stop. As mentioned, it's relatively easy to test either scenario, once the code is set up. ABOUT THE SPREADSHEET: The calculations are done completely without any macros. I used only cell formulas to accomplish all the math. I wrote some macros just to automate the loading of data into the spreadsheet. I doubt i can upload a sheet with macros so what i did is i put all the code in a comment box that's located at cell A1 of the sheet "SPREADSHEET". Just put it into a module and click on any of the macros. They're all safe. The spreadsheet comes with a ton of bar data that that i collected from Yahoo for various time frames. The macros load this data into the "SPREADSHEET", where the formulas take over and get all the calculations done. The cells are not locked so be careful about accidentally erasing some formulas. That won't happen if you use the macros. Data is loaded into cell C6 as DATA, HIGH, LOW, CLOSE. Ok, it appears the data laden spreadsheet is too heavy to be uploaded so i've stripped the sheet down to the one sheet with formulas. Ok...forget it. I can't even upload a simple spreadsheet.