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)
Re vacation, pointing the motorcycle toward Michigan in about an hour
Roger--the mental process (psychology) is #1 issue -- has always been a battle. I've learned not to try to scalp when my head isn't in it, for example, and to stop trading when every fibre in my body wants to short the market & price refuses to cooperate :-/ I should probably take a look at Beggs' book since I miss a lot of good moves because of it.
Yesterday set up a simple NT ATM to trade what seemed to me a directionless market with decent success (~ $400 in 9 or 10 trades), going short near the top of the previous price action and long near the bottom (parameters for entry & trailing stop below--note numbers are in 1/2 pips so divide by 2 to get pips). Might do better with 2 targets at 2 successive MM levels )15 & 30 pips) rather than 1 target at 2 MM levels away (30 pips).
Alrighty--have to run! Good luck with your trading this month. Should mention I found going live this time around was a sobering experience (in a good way). Trade much less & ratio good/bad trades rose significantly from paper.
Can you help answer these questions from other members on NexusFi?
It is simple to take screenshots of your screen, trading platform, etc and then mark them up, add text, lines, or arrows - and finally upload them and share them on the forum. Here's how.
Video step-by-step
Big Mike has created a video which …
Thanks for the heads up Mike. Images are stored on a server at my house and it looks like my son inadvertently adjusted router settings (he's "looking after things" while I'm on on vacation :-/) Should have things fixed by week end.
Since returning from vacation I've been watching the markets & paper trading almost exclusively (i.e., rather than real money), 10-16 hours/day and often more, occasionally to the point where I'll wake up from a nap in a panic, realizing that the price action I've been trading was imaginary before it sinks in that any orders I placed while asleep were also very likely imaginary (not prone to sleep-trading so far ).
Since returning I also got into the habit of writing long, rambling journal entries that eventually I decide not to post (because they're boring or otherwise imperfect ) :-/ While there might be something worth retrieving in them probably better to start this one online and work up the enthusiasm eventually to just hit the Submit button.
Back to basics -- trend, momentum, cycle, S/R, time frame
The main development is probably that I've gone back to basics, revisiting what I thought I understood about trend, cycle, momentum, S/R, time frame (what some apparently call "fractal" phenomena & relationships) and price action. I found the Top Dog Trading (Barry Burns) course to be helpful in that regard since it leverages very basic ideas into a relatively straight forward trading system. Interestingly--like everything else probably--while beginners can likely profit from the course in the sense of getting a good grounding rather than making money necessarily, it may benefit more advanced traders who've plateaued one way or another. Not a course recommendation, since everyone will have their own way around obstacles--just an observation. There's just something about the way Burns iterates upon the basics that works for me. As a consequence even his tireless self promotion and the endless stream of email spam exhorting me to buy products I already own or don't need doesn't bother me all that much. Yet :-/
The reason for revisiting basics is simply that an intellectual grasp of a thing doesn't necessarily translate into practical (i.e., in this case profitable), gut level or intuitive understanding. For me trading is something like riding a motorcycle on the street, which I've done most of my life. After 30 or 40 years (riding) I'm still learning and still need to return to basics occasionally if I'm going to stay sharp (& stay alive). Not sure why that is.
Things I've relearned that I thought I knew
In any event after watching videos of experienced traders using 5 or 10 different trading methods profitable trading seems to boil down to a few things, but primarily to the fact price has to behave well enough between order entry and target(s), and behave often enough, for a system to profit in the long run--i.e., price has to trend for the duration of the order, even if from a broader perspective the setup was a range trade, say.
Furthermore, unless one is trading individual ticks price will wiggle while it trends between entry and exit, the difference between a "wiggle" and a failed (stopped out) trade more or less related to time frame, quantifiable e.g. perhaps in terms of ATR (average true range) over a specific period. By definition wiggles in a price trend (essentially, advances followed by retraces followed by advances) have smaller range than movements defining the trend--advances exceed retraces. Choice of stop reflects our notion of what constitutes the line between wiggle (retrace) and failure of the setup (failure of price to advance toward the target)
Price is unpredictable no matter how we analyze it, meaning no matter what indicators are telling us or what our expectations, we never know for sure what price is going to do. We can however assign probabilities to price movement. For me probability expresses itself as a gut feeling or growing sense of inevitability that price is favouring one direction over another. This "favouring one direction over another" is of course measurable and quantifiable (i.e., in terms of cycles and basic indicators like RSI & Stochastics) but is not enough (or shouldn't be) to motivate us to press the order button unless it's accompanied by some assurance than price will meet the target (i.e., some assurance of range) and that it will do so "soon enough" (i.e., with some enthusiasm); in other words, we need reassurance price has some momentum in the favoured direction (e.g., indicated by good old MACD, onset of bifurcation at the edge of a market profile value area or cumulative delta if the instrument supports it, or even a tick- or bar-per-second indicator).
Targets intend to capture as much of the favourable excursion as possible over a given cycle, therefore reflect our notion of the point at which price will encounter S/R or otherwise run out of steam (sellers/buyers). The choice is based on whatever method we happen to be using and we can select targets based upon previous turning points, previous period OHLC, Gann lines (Murrey Math), VWAP bands, one market profile attribute or another, etc.
Method and discipline (ability to stick to a plan) may be necessary factors of consistently profitable trading but since "consistently profitable" means profits outweigh losses over the "long term" the implication is that money management is paramount, perhaps even sufficient if we believe theories about systems based on random entries that are discussed here from time to time. After testing the strategy developed by shodson during his last webinar (implements a random entry method due to Tom Basso & Van Tharp), if not a true believer that money management is sufficient to profitable trading I'm convinced it's at least absolutely necessary--that profitability is mostly about managing (potential) loss than maximizing profit--and at this point no stop, including a catastrophic stop, on any trade never risks more than 2% of the account. That said, perhaps like most, when scalping micro ranges I don't use any stop at all :-/
Reflections on system trading
To sum up, following Top Dog's trading guidelines at the moment I enter a trade with no less than 4 positions (trading spot Forex via IB "contracts" don't really exist), more often than not exhausting 2 at the first target and thereby eliminating risk altogether. Until I can better intuit what indicators tell me (and trade price action alone without them) I modified standard MACD, SMA and Stochastics indicators to perform like his proprietary indicators but have not yet mimicked his "wave" counter and may not. I don't think it would be counter to his copyright to attach my modified indicators to the thread and will do so after checking to see if the code needs tidying.
Like any other system the Top Dog approach allows me to accept lost "opportunities" (relatively large price movements that I fail to capitalize on, in retrospect) and failed trades with equanimity, or at least without as much self-flagellation as seat-of-the-pants trading. I mark failed trades as "failed" and both failed and profitable trades as "mistake" if the outcome was probably a consequence of breaking a rule. System trading reinforces the notion one simply has to learn to deal with emotions rather than fight to eliminate them (which may not be possible). Profits are ideally as consistent as the system predicts, the goal in self overcoming to master the system (to learn to stick to it) rather than to overcome one's self in some nebulous philosophical way.
A system provides a framework against which losses can be studied to determine whether we failed to pick up on some nuance (i.e., to test our grasp of the system) and over the long haul whether the system is somehow biased toward a pattern of price action and needs retuning if it is to be truly robust in any time frame or instrument, or (worst case) abandoned when price is not behaving.
Similarly a system is a framework against which profits can be measured to determine e.g. if tuning could conceivably improve return, given there can be a fine line between tuning a robust system and curve fitting. We know an otherwise reliable system has been wound a little too tight when it starts to cycle between periods of significant profits followed by periods of significant losses.
A system removes doubt by dictating the chart configuration & setups & provides a means for quantifying both the probability a trade will succeed and the potential yield but most importantly constrains worst case loss (slippage aside). This is helpful for those of us who still tend to agonize about the meaning of "cut losses early" and "let profits run" every time we enter a trade. Profits & losses are simply products of the system model, predictable until verified otherwise, and can be easily tailored to a given money management scheme assuming account balance meets minimum criteria.
Finally, a system helps us learn the difference between the emotion of confidence (or lack thereof) and the experience of probability (high & low) without going bust. For example, a system provides a safety net when perhaps after a streak of eye-popping winners we start to feel we've got it made in the shade (pitcher full of Koolaid), which is the surest sign euphoria has overpowered discipline and blotted out everything we know to be true about price action. We're more likely to snap out of it before we hit our daily loss limit instead of by the time there's no margin left to trade.
ETA: ADDENDUM
I've begun to implement an interpretation of (homage to? Whatever is least likely to be construed as property violation) the Top Dog trading system as a short time frame (200 - 1800 tick bar) automated multi-timeframe strategy, not because there's any reason to think it's better than any other system but because it's what's at hand and I need something for the London spot Euro market. So far any attempt to alter my hours to discretionary trade those tantalizing price movements has had a deleterious effect on quality of life :-/
Seriously, not sure to what extent it can be shared without violating copy- or intellectual property rights at this point but will share what seems fit as it becomes available.
I totally agree that you need price to move swiftly from your entry to your target to make your strategy work*. I think anything else would be an admission that you're taking a 50:50 punt. All those indicators you mention - are you making any progress in "internalising" them, for want of a better way of putting it, i.e. I assume you want to see what the indicators see in price action, so you can then delete the indicators.
* [EDIT]: There's a statistic for that called Maximum Adverse Excursion. If you have accumulated a batch of trade data and can generate that, you need to minimise it. Generally speaking you need to maximise your winning percentage and your win/loss size ratio, so hopefully your strategy will have a MAE that correlates negatively to your winning % and your win/loss size ratio anyway.
You can discover what your enemy fears most by observing the means he uses to frighten you.
For all NT users (capable of programming on the NinjaScript level) who would like to dwelve into the world of neural networks now you have a chance for contribution.
Jeff Heaton has just released example project integrating NT7 and Encog neural networks …
), unfortunately my dabbling in esoterica like neural nets is usually a pretty good sign I've taken my eye off the (trading) ball
In the (discretionary) method I'm working with now MAE shouldn't be an issue since stops are usually placed initially either 1 pip past the end of the bar opposite to the entry (which is placed 1 pip + spread past the other end of the bar) or at the "indicator stop"-- just beyond the last retrace, which ought to serve as S/R. In theory I just have to count failed trades to measure efficiency.
I'm not focused on "internalizing" indicators at the moment so much as trying to develop an automated strategy using them. Lord Kelvin said something to the effect we don't understand a thing until we can measure it. In my case (background in numerical modelling) I have to code a thing to make sense of it
At this point the main advantage of relying on indicators, and perhaps the first step in "internalizing" them, is that it forces me to wait until the "stars align" (a setup presents itself, in theory) before looking for an entry, and while waiting I can observe how the indicators reduce price action ("reduce" in the data analysis sense, of reducing raw price action to easier-to-digest information like trend, momentum, cycle, S/R). This circumstance may eventually allow me to dispense with indicators (trade price action alone) if my thought process eventually mimics what indicators are telling me, price action concealed to some extent in the minute details of indicator behaviour. If nothing else fewer entries = fewer mistakes in a given session
Regarding the bot, this time around rather than neural nets (so far) the distraction is fuzzy logic, partly to corral the huge number of parameters I've decided to include to describe the state of trend, cycle, momentum and S/R in 3 time frames (200, 600 and 1800 tick) for spot Euro. The other rationale for appealing to fuzzy logic is that hopefully it will turn out to be a simple and convenient (i.e., formal) way to construct & manipulate trading heuristics. At the moment I'm developing the "fuzzy core" as a DLL and "using" it in the strategy
I also have 6e (Euro futures) with Fat Tails's indicators applied running in the background mostly to observe any correlations--but so far no motivation to turn a multi time frame strategy (already pushing 3500 lines of code with parameter definitions & most of a fuzzy engine) into a multi-instrument strategy. Wisdom (of market profile) teaches us that while we may not be able to predict what price is going to do we can piggy back on the actions of larger participants (whether institutions placing sizable orders for corporate or sovereign clients according to one algorithm or another, that may impart a bias to price movement, or prop shops running stops for fun & profit, which may be responsible e.g. for relatively rapid, parabolic transitions from one area of consolidation to another). I believe it's Fat Tails' view that price movement is the consequence of willful action by one or more large, professional traders who are observing more or less the same features (i.e., value areas, say, rather than SMAs, since everyone uses different SMAs ). If so then no other (arbitrary) collection of time frames & indicators will be as accurate or efficient.
Edited to add: thinking out loud, with the bot one issue I still have to deal with is how to conceive the task overall, once the system has translated measurements into fuzzy numbers. When one is up to one's elbows in variables and code snippets it's a challenge to keep the goal in mind (project management not being my strong suit). Fuzzy systems are usually found in control systems (cameras, washing machines, subway train braking systems, robot/missile guidance systems etc). In each case measurements are converted via heuristics to control signals to steer the system to a pre-established goal whereas I tend to think in terms of modelling a physical process & making predictions about the future by driving the model with real world inputs--not quite the same can of worms, the difference between a prescription for action (control function--e.g., "to maximize profit go long or short so many units right now") and a weather forecast ("it's going to rain" or "price is likely going to rise", a forecast not providing instructions about whether to risk camping, suffer galoshes or place an order, explicit instructions being what computers require to function).
The hope in working with fuzzy values in this application is that associated "crisp" values can be interpreted more or less as probabilities (e.g., that at any given moment a suite of successive S/R levels have a specific probability of being attained and therefore an order with targets spanning these levels has a specific probability of success, the number of units involved constrained by money management policy, not necessarily attempting to model longer term profitability but instead perhaps simply optimizing order quantity for some measure of profitability using familiar techniques). In this case the trigger would be that "probability" exceeds a threshold, in the first instance perhaps quantity proportional simply to probability of success.
If you're concentrating on automating a NT strategy to do all that then I can see that you're probably not getting far substituting out your indicators. However I'm probably suffering from the usual price action snobbishness towards indicators but you don't see it as a priority to ditch them. I won't try to persuade you otherwise then.
The stuff with fuzzy logic sounds good and it'll be interesting to see how you develop it. Even though I've done a lot of mechanical trading system development myself, I never touched fuzzy logic - partly because of the technical challenge of implementing but partly because I was worried about the dangers of inadvertantly over-optimising / curve-fitting it. I assume your backtesting.
You can discover what your enemy fears most by observing the means he uses to frighten you.
On the topic of applying fuzzy logic in an NT strategy, after a couple of false starts trying to roll my own core (let's call it "research" ) I decided to go with an available open source library that seems to be a pretty complete and easy to use implementation of a fuzzy core (primatives, membership, fuzzification, inference engine, defuzzification); namely, AForge.Fuzzy available from AForge.NET :: Framework. Since the source for AForge is also available anyone with a C# development environment (preferably MS Visual Studio, since the source comes with MSVS projects already defined) can tweak their own version.
In my experience fuzzy logic may be less prone to curve fitting than other approaches (including other AI techniques) prehaps because of its nature--the machine code equivalent of imprecise linguistics--but that remains to be seen
For the record, to install and experiment with the default AForge.Fuzzy DLL (compiled for Dot Net 2.0, so you might want to recompile for 4.0), as usual
In order to create membership functions (mappings of raw inputs to fuzzy space) we have to know something about the range of a given input parameter in the "real world". For example, if we want to use e.g. the slope of the 50SMA as a proxy for trend we need to tell the strat what we mean by linguistics like "positive trend" in rules like
"If the trend is positive then favour long entries"
"If the trend is negative then favour short entries"
The first figure below shows a histogram (frequency plot) of the 10-bar slope of the 50SMA for the EUR/USD 200 tick chart over the last month or so, roughly unimodal with standard deviation of 0.3915 (pips per bar). We'll ignore the interesting wiggles along the sides for the time being.
Assuming we want to use a simple triangular membership function (second figure) to map trend observations to fuzzy inputs for the inference engine we have to decide how to divide the abscissa (x axis, pips/bar) among labels (fuzzy sets) denoted by "Falling Strongly", "Falling", "Falling Slightly", "Flat", "Rising Slightly", "Rising", "Rising Strongly", say. This division can be arbitrary, based on personal opinion of what constitutes e.g. a strongly falling trend, say, or the division can try to presage the rules by which it will be combined with other observations potentially to generate buy/sell orders, in part appealing to experience.
In other words, any 50SMA with a slope more negative than -1.0 pips/bar may characterize a trend that is "Falling Strongly", but in light of our candidate rule regarding negative trends ("If the trend is negative then favour short entries"), experience suggests it may not be smart to enter short when negative SMA slope is in the vicinity of an inflection point (i.e., maximum negative) or waning. Furthermore, a snapshot measurement that indicates "negative to flat" trend can mean opposite things depending on whether trend is accelerating from zero or decelerating (i.e., "trend may be beginning so prepare to sell heavily" versus "trend may be ending so prepare to exit short positions")
The bottom line is, we should not expect a strat to place orders based on one aspect of price action any more than we do. In terms of parameterizing the model the notion of trend will likely require a qualifying linguistic (namely, "accelerating" and "decelerating"), and trend is just the first of 5 notions (or "energies" according to Barry Burns) to be implemented (the others including momentum, cycle, S/R and fractal confirmation).
Histogram of 50SMA slopes for 1 month of 200 Tick EUR/USD data (x axis in pips/10000):
Membership plan for Trend using centroid to calculate fuzzy representation:
Very interesting @bnichols, Ill be happy to see a piece of this fuzzy code integrated in a NinjaScript strategy, or at least how "heavy" is it to add this kind of logic. Your code seems to have more than 2000 lines, a bit scary .
See below a good, small and simple paper to understand fuzzy logic, "A Fuzzy Logic Based Trading System".