Below article may answer a small part of your question. Hope it helps:
"Let's discuss the difference of two expert advisors (fully automated) running in parallel at the same time (same currency pair, same broker, etc), one on a demo and the other on a live account. "Forward testing on a small live account is better than on a demo account." Why?
Let's not discuss the psychological factor.
We all know that it differs in:
- commission costs
- swap costs
But what else does live differ from demo trading?
- for example, is the data feed exactly the same or is there difference in manipulation?
- do indicators interpret price differently somehow in anyway sometimes?
- is the execution slower in live trading?
- is the price quote sometimes less renewed in live trading? (for example, when there is big news)
- are the price feeds of live and demo on 2 different servers? And if so, what is the difference then? For example, does a demo not have requotes?
- is there a difference in margin call? Or does for example my Alpari broker close the position earlier on a live account?
- do brokers treat my position differently on a live account from 5 lotsize in comparison to 0.01 lotsize? Could anyone please explain this: "Brokers or Banks look for stoplosses to flush big lotsize positions out. "
- other differences?
The only 'real' difference between demo trading and live trading, provided you are using a reputable broker is in slippage and sometimes exchange rate impacts and SWAP. For example in MT4 backtesting land, SWAP is not included in the results and typically the variable spread at the time of running the backtest is used as a proxy for the historical spread. The latter however can now be resolved in some backtest applications in the MT4 environment......however SWAP and Exchange rate impact on the base currency will only ever be based on using the current variables from your broker as a basis for historical application.
Slippage on the other hand is definitely a factor to also consider when moving from demo to live trading environments.
I think those that are looking for accuracy between Demo and live trading will always be disappointed because they will never agree. It is not usually through dodgy broker practices however....but rather the perturbation that exists in any price series of a liquid market.
Hopefully everyone who trades recognizes that it is probabilities that rule the game as opposed to preciseness. If you want to be precise when flipping a coin and determining if it will come up as heads and not tails...then be my guest...however the perturbation that exists in a single coin toss demonstrates that you can't play the game this way. You need to apply the Law of Large numbers to come to a solution.
There is enough 'noise' in a return series from a live trade than there is in a demo one. You can see this when you plot where your 'actual' return series resides in a shuffling of that return series through bootstrapping.
Attached Image (click to enlarge)
Click to Enlarge
Size: 245 KB
If you get identical monkeys or even two identical seperate EA's to live trade together on two separate accounts, this feature between the disparity between return streams from perturbations in data receipt or trade efficacy will become self-evident.
Each of those particular return series from the bootstrap chart above are entirely possible. This simply demonstrates that this game is not one of preciseness but probabilities. An edge will only play out over an extended data series just like a biased coin....so this therefore puts a different take on what you should be gaining from backtesting or forward testing your strategy.
Note that the bootstrap series above was generated from a strategy with only the faintest edge. In fact it was not a worthwhile strategy to progress no matter what the individual return stream produced looked like. This is one way to detect how 'randomness' can fool you. Only if the entire sequence of distributions displayed a positive return could you be satisfied that your strategy had enough cohonas to beat the noise of the market.
You are not testing for preciseness but rather the robustness of a general principle and whether that general principle holds up under the Law of Large numbers. The folks who get the most out of backtesting realise this principle is implicit in their results.....but are rather simply testing whether the general principle of say divergence or convergence play out over the long term and what scenarios could be generated by that deployed strategy over the long term and by applying the Law of Large numbers in your testing. It gives you a road map into uncertainty that allows you to determine whether your live strategy lies within the bounds of acceptability of that road map.
many people forget one important part:
why a broker has demo accounts? yes, people can practice, but main reason is to test the broker and decide between different brokers, and thats the problem same time.
any broker wants best running demo server, best prices possible , best speed, best server..... all best that people win in most easy way with demoaccount with this broker and decide to open later the real account with this broker! so anything is optimated in demoaccounts to let people win, any little part! demoaccounts are easy ways for best marketing.
biggest differences are so:
- order fill spead
- volume (on demo you get any volume filled for the lowest spread for the lowest volume, in real account only whats possible in the market at this moment and you get it for the sprrad this volume will have or you get requote or rejection)
- all trading styles have big wins in demo, even styles that dont win in reality with this broker, like arbitrage or stop order setting in newstrading and so on........
- many many more.... any part in demo is optimized to show this broker at best , its nothing same like in real account, only broker name and some generall settings for currencies, like leverage or margin call.....
there are some brokers, who dont do it in this extrem way, but most do it. even this other brokers have all the differences same time, maybe not in the extrem optimiced way...
VeeFX: Forward/Parallel Stress Testing
Before downloading the platform, the first question is ask the broker is - "Is your trading conditions exactly the same between demo and live" based on the live account type I would prefer to open? If no, I run away from the broker.
Before going live, I have shared some techniques (search "TradingCostMultiple") in my recent posts on how to ensure your demo and live trading results are close... very close.
Next, run a spread recorder on both live and demo before opening your first live trade... the bid should be pretty close.
Next, download OHLC history data files from both live and demo platforms and run a quick OHLC compare in excel. they should be close.
Always check the server timestamp between demo and live servers including gmtoffset. Many brokers do some funky business on Friday or on weekends
Periodically Compare swaps and commissions between demo and live
Needless to say, you must always ensure skipping a trade because of max slippage or max spread settings should have zero effect on your strategy outcome. I have said before, dependance on one trade to open another trade is just big no in my book. A trade should stand on it's own merit and a single trade should have little to no effect on the overall PnL.
Reminder-spread widening can happen on exits too. I have seen many EAs check for only entries which is idiotic. Every trade is a market order and prone to spread widening and slippage
Ihave said this before.... I will remain a demo trader FOR LIFE. I run demo and Live accounts in parallel and I run everything locally and nothing on VPS. I never backtest in strategy tester.
Do all of the above and more and your demo forward testing will be very close to live trading..... as long as the broker does not mess with your connectivity between terminal and their server.... mine has already started playing some strange games so at the end, broker must win so make sure your "profitable" strategy generates some decent amount of spreads and/commissions to keep your scam broker happy (keep you on A book and pass your trade over to LP). After all this, you can only hope and pray your broker will eave you alone and not mess with your hard earned profits during withdrawal time
There is a reason why I advocate
Use Law of Large Numbers
Use Law of Averages (by this I don't mean scaling in or adding to losers!)
These should avoid most of the issues with spreads, slippage, swaps, commissions platform freezes, price manipulations etc or at least minimize their negative effects on your trading outcome. These "normal" cost of doing business should not determine whether you have a profitable strategy or not. My TradingCostMultiple is 20 times the cost of trading during forward/parallel testing in demo. It might differ a little bit here and there but strategy can never fail in live and flourish in demo!
Edit: and more information here
I wont share too much on #1 as my options across brokers are quite limited. I have moved to monthly now instead of weekly. It also addresses the fact that brokers will expire/delete demo account and now all your stats is gone are done forever. Better to have a robust infrastructure to avoid losing any of your hard work based on broker actions. You have to own it and take charge of your own future. no one will !
On #2, it is not moving averages. By scale-in, I mean, if you have a 1standard lot capacity, breaking trade size into 10 minilot etc and seeking a better average entry price by doing price discovery. It is just an excuse for folks who like to "average-in" to recover from their losers. Why would you smoke pot if you don't want to be anywhere near hard-core drugs? Scale-in strategies will only entice you to average-in or martingale or add to losers etc.
One trade should have no affect on the next one.... I just trade small in whatever direction, in whatever pair, in whatever timeframe and in whatever session the signal comes knocking at my door... and rely on law of large numbers and law of averages to take care of the rest.... mostly until Friday and in some case before the month ends.
EDIT: I have demo account across multiple brokers to hardened my strategy... again, law of large numbers
EDIT1: I am not sure if I mentioned this... do NOT ever "verify track records" with external sites including TE. Your records must remain under your own custody at all times. myFXBook allows hooking without verification which is what I like. Also, NEVER run a demo and live account from the same terminal instance... I know this shit too much so I must stop here:-(
EDIT2: Also, ALWAYS install MT4 under "Program Files" folder to get the added OS level security protections... never outside. Do not listen to anyone who says, install under c:\ drive... and reject ALL executables that require turning on the "Allow DLL" setting in MT4.
Actually with some brokers you get slipped on demo, IG for instance and hotforex has swaps.
I read on a forum: "The more $$ you make with brokers, the more execution lag & delay you will encounter."
Is this true?
reply: when you broker is your counterpart of the trades, yes. if not, no, only when you try to "cheat" like with some arbitrage plans to use slow datafeeds of some metatrader brokers, so they protect against this by execution lag or delay to not going bankrupt, by real trading you really need some broker who is opposite trade as marketmaker in all your trades.
Though demo trading accounts offer opportunities to get acquaintances with the forex market with the use of artificial money as real accounts, there are some differences between the live accounts and demo trading accounts. A trader can face the difficulties regarding the trade executions and he can also face hardship while engaging in trades with big amount. There is no such difficulty in case of demo trading accounts no matter which amount you are trying to trade.