Error 130 - invalid stop. Why?

 

I'm writing/testing an EA that returns error 130 on every attempt to buy or sell. I actually copied the entire buy/sell logic from another EA that works perfectly and am using zero (0) in the stop loss parameter just as the working EA does.

Can there be another reason for this? I'm stumped...

Thanks,

Lou

 

Error 130, from MT4 help file is

ERR_INVALID_STOPS 130 Invalid stops.

So, look where your stops and take profits are located. If they are too close (less than 10 pips generally) or maybe the sell stop is lower than the buy price or something similar, you will get that error.

Good luck.

 

hey Maji

hey

i need your help in my MT$ station it stoped updating the price 3 weeks ago plus i cannot creat any new accout using a different mail and always show me offline!!!!

do u know how to handle that thnx in advance

regards

 

Sorry, can't help you there. Give your broker a call or chat online. Try opening an account with another broker and see how that works.

Good luck.

 

Thanks, Maji - the take profit calculation was the culprit, not calculating correctly.

 

Order send error 130?

I am testing an EA and get Order send error 130. What does it mean?

 

Replay

1) Error 130 - ERR_INVALID_STOPS

typical

 

Replay

ERR_NO_ERROR 0 No error returned.

ERR_NO_RESULT 1 No error returned, but the result is unknown.

ERR_COMMON_ERROR 2 Common error.

ERR_INVALID_TRADE_PARAMETERS 3 Invalid trade parameters.

ERR_SERVER_BUSY 4 Trade server is busy.

ERR_OLD_VERSION 5 Old version of the client terminal.

ERR_NO_CONNECTION 6 No connection with trade server.

ERR_NOT_ENOUGH_RIGHTS 7 Not enough rights.

ERR_TOO_FREQUENT_REQUESTS 8 Too frequent requests.

ERR_MALFUNCTIONAL_TRADE 9 Malfunctional trade operation.

ERR_ACCOUNT_DISABLED 64 Account disabled.

ERR_INVALID_ACCOUNT 65 Invalid account.

ERR_TRADE_TIMEOUT 128 Trade timeout.

ERR_INVALID_PRICE 129 Invalid price.

ERR_INVALID_STOPS 130 Invalid stops.

ERR_INVALID_TRADE_VOLUME 131 Invalid trade volume.

ERR_MARKET_CLOSED 132 Market is closed.

ERR_TRADE_DISABLED 133 Trade is disabled.

ERR_NOT_ENOUGH_MONEY 134 Not enough money.

ERR_PRICE_CHANGED 135 Price changed.

ERR_OFF_QUOTES 136 Off quotes.

ERR_BROKER_BUSY 137 Broker is busy.

ERR_REQUOTE 138 Requote.

ERR_ORDER_LOCKED 139 Order is locked.

ERR_LONG_POSITIONS_ONLY_ALLOWED 140 Long positions only allowed.

ERR_TOO_MANY_REQUESTS 141 Too many requests.

ERR_TRADE_MODIFY_DENIED 145 Modification denied because order too close to market.

ERR_TRADE_CONTEXT_BUSY 146 Trade context is busy.

ERR_TRADE_EXPIRATION_DENIED 147 Expirations are denied by broker.

ERR_TRADE_TOO_MANY_ORDERS 148 The amount of open and pending orders has reached the limit set by the broker.

Files:
errors.pdf  40 kb
 

Thanks guys for such a fast reply !

 

No problem. Help in this forum is very fast always.

 

Keep on getting 130

Here is my code - always give me a 130 error and sl and tp look a digit too short. Any thoughts??

if (RegularorCandleCloseStoploss == True)

{

if (StealthMode == False)

{

CalcStopLossPips = StopLossSell;

}

else

{

CalcStopLossPips = EmergencyStopLoss;

}

}

else

{

StopLossLevel =NormalizeDouble(Low, 10);

CalcStopLossPips = (MathAbs(Bid + StopLossLevel)) / pp;

}

if (UseTakeProfit) TakeProfitLevel = NormalizeDouble(Bid - TakeProfitSell * Point, 10);

else TakeProfitLevel = 0.0;

Print("Sell Stoploss: ", DoubleToStr(StopLossLevel, Digits));

Print("TP: ", DoubleToStr(TakeProfitLevel, Digits));

Print("Bid: ", DoubleToStr(Bid, Digits));

Print("Digits: ", Digits);

Ticket = OrderSend(Symbol(), OP_SELL, lotsForOrder, Bid, Slippage, NormalizeDouble(Bid + (CalcStopLossPips * Point), Digits), TakeProfitLevel, "Sell(#" + InternalMagicNumber + ")", InternalMagicNumber, 0, DeepPink);

Reason: