Why my EA no work on real account?

 

I created an EA scalper and tested it on backtest and I liked the result.

So I decided to apply to a demo account. After a long time of testing on the demo account and having gone well I put it on a real account.

And the result of the real account was completely different from the demo. (I left both accounts running at the same time)

Why did this happen? Can anyone help me?



p.s: it was the same broker, same settings, same pairs, same timeframe and with vps with the same ms (very low)
 

Hello  reimike123 ,

am having the same issue with my EA, tested on the same time, same broker, same VPS,  same settings  in demo and real account.

But the Demo account will not take trade while real will place trades  and when demo account place, trade real account will not, so I think(but just a guess) the brokers manipulate the demo account to be more flexible than real, because even the indicators am using on the EA will give signal on demo and not on real at the same time and settings. 

reimike123
reimike123
  • www.mql5.com
Trader's profile
 
Emmanuel Emmanuel Tom:

Hello  reimike123 ,

am having the same issue with my EA, tested on the same time, same broker, same VPS,  same settings  in demo and real account.

But the Demo account will not take trade while real will place trades  and when demo account place, trade real account will not, so I think(but just a guess) the brokers manipulate the demo account to be more flexible than real, because even the indicators am using on the EA will give signal on demo and not on real at the same time and settings. 

So do you believe if i switch broker can solve? Or are they all like that?

did you manage to solve your problem?

 

In demo your trade order is precisely placed on the market level, at the time when the broker server receives your order. 

In real account, you cannot guarantee that will happen (if the broker guarantees that happen, then you might need take extra cautions about that broker, because it is not normal market behavior).

 
reimike123:

So do you believe if i switch broker can solve? Or are they all like that?

did you manage to solve your problem?

Did you use custom indicators in the EA?   like in the case of my own the indicator will give signal in one mt4 and none in another mt4

 
Emmanuel Emmanuel Tom:

Did you use custom indicators in the EA?   like in the case of my own the indicator will give signal in one mt4 and none in another mt4

No i dont. 

Normal ones...

 
Shengjie Mao:

In demo your trade order is precisely placed on the market level, at the time when the broker server receives your order. 

In real account, you cannot guarantee that will happen (if the broker guarantees that happen, then you might need take extra cautions about that broker, because it is not normal market behavior).

And what about ecn brokers? Cannot guarantee too?

 
reimike123:

And what about ecn brokers? Cannot guarantee too?

Of course you cannot guarantee ECN account to place your market order (immediate execution) on the exact defined-by-you entry price with no slippage. Again, it is not normal behavior to guarantee no slippage. This applies to all trading with market order (Stocks, futures, Forex, Crypto etc).

Also, when you use ECN brokers, most of them will charge you with commissions, you may need to calculate whether the commissions would eat your profit (since you are scraping).

 
Shengjie Mao:

Again, it is not normal behavior to guarantee no slippage. This applies to all trading with market order (Stocks, futures, Forex, Crypto etc).

I know that this forum is primarily concerning Metatrader, but I must point out that when physically trading shares (not cfds) with a stockbroker it is normal that the broker guarantees no slippage. You are offered a deal at a price and then have a limited time to accept the price (15 seconds in my experiences). As long as the broker receives your acceptance within that timespan, That is the price that you will get or pay.

 
Keith Watford:

I know that this forum is primarily concerning Metatrader, but I must point out that when physically trading shares (not cfds) with a stockbroker it is normal that the broker guarantees no slippage. You are offered a deal at a price and then have a limited time to accept the price (15 seconds in my experiences). As long as the broker receives your acceptance within that timespan, That is the price that you will get or pay.

For stock trading, the market order is never about 'seconds'. 

It is about if someone is willing to trade against you on the price you desire, with the volume you desire. "Market order" means buy/sell immediately at what is available.

If you want to buy 100 stocks at $100.1, there is no guarantee that there will be 100 stocks available on that price. For example: 

  1. There is only 60 stocks at price $100.1, your market order will immediately hit the stock price higher, you have a slippage.
  2. There is no stock at $100.1, the next available ask is at $103, in this case you have a big dollar slippage, this happens when you trade small cap stocks.
  3. When your order is registered by broker, someone else (who queued before you) sold stock heavily and beat the price down to $90 in a blink of second, in this case your have a profitable slippage (although usually in this situation the stock would continue falling)

Also if you use limit order to queue your buy on a certain price, you may also encounter 'slippage', where the market just rocket launch above your bid and you never get a chance to fill your buy limit order.

Again, if the stock broker guarantees you will not experience any slippage when using "market order", that is Super suspicious, because the broker does not enter your trade into real stock market.

 
Shengjie Mao:

For stock trading, the market order is never about 'seconds'. 

It is about if someone is willing to trade against you on the price you desire, with the volume you desire. "Market order" means buy/sell immediately at what is available.

If you want to buy 100 stocks at $100.1, there is no guarantee that there will be 100 stocks available on that price. For example: 

  1. There is only 60 stocks at price $100.1, your market order will immediately hit the stock price higher, you have a slippage.
  2. There is no stock at $100.1, the next available ask is at $103, in this case you have a big dollar slippage, this happens when you trade small cap stocks.
  3. When your order is registered by broker, someone else (who queued before you) sold stock heavily and beat the price down to $90 in a blink of second, in this case your have a profitable slippage (although usually in this situation the stock would continue falling)

Also if you use limit order to queue your buy on a certain price, you may also encounter 'slippage', where the market just rocket launch above your bid and you never get a chance to fill your buy limit order.

Again, if the stock broker guarantees you will not experience any slippage when using "market order", that is Super suspicious, because the broker does not enter your trade into real stock market.

You don't get it.

If I want to sell 1000 shares of xyz, I am offered a price by the stockbroker. That price is guaranteed for 15 seconds and as long as I accept within that time, that is the price that I will get. No slippage.

Nothing suspicious, that's just the way it is done. As I said, I am talking about real shares not cfds.

Reason: