Errors, bugs, questions - page 1810

 
Dmitriy Skub:
They've messed something up again.

Compiled in version 1531. On startup got:

2017.02.16 18:55:19.101 MQL5 'TradePanel.ex5' has newer unsupported version, please update your client terminal

Good thing I'm not on a live account.

The answer is in the Service Desk:

Support Team
2017.02.16 09:46

Sorry for the inconvenience, we will post another build shortly.

Unfortunately there is a mismatch between the terminal build and the compiler version in the editor.

Specifically in this case, because of the resources used in the MQL program, terminal version 1532 or higher is required.
I have an unplanned day off today. )
 
Anatoli Kazharski:
I have an unplanned day off today. )
Everyone ;)
 
Artyom Trishkin:
Everyone ;)
I must be doing something wrong as 1531 has been running for over a day with all its code.
 
fxsaber:
I must be doing something wrong as 1531 has been running for over 24 hours with all its code.
This problem does not occur with all code.
 
for (int i=0; i<PositionsTotal();i++)
     {if (PositionSelect(_Symbol))
      {if (PositionGetInteger(POSITION_TIME)<TimeBuffer[0])
               {MqlTradeRequest request={0};
                MqlTradeResult result={0};
                request.action=TRADE_ACTION_DEAL;        
                request.symbol=_Symbol;                  
                request.volume=Volume;                      
                request.sl=NormalizeDouble(Minimum+((Delta*KoefSL)/100), _Digits);              
                request.tp=NormalizeDouble(Minimum-((Delta*(100-KoefTP))/100), _Digits);                          
                request.type=ORDER_TYPE_SELL;        
                request.price=Bid;  // open price
                request.type_time=ORDER_TIME_GTC;                    
                //--- send a trade request
                trade2=OrderSend(request,result);}}}
Hello Dear forum users. I can't understand where the error is in the lineif(PositionGetInteger(POSITION_TIME)<TimeBuffer[0]). TheTimeBuffer[0] contains the open time of the current bar. I need to compare if the time of open position is less than the time of current bar.
 
Dmitri Custurov:
for (int i=0; i<PositionsTotal();i++)
     {if (PositionSelect(_Symbol))
      {if (PositionGetInteger(POSITION_TIME)<TimeBuffer[0])
               {MqlTradeRequest request={0};
                MqlTradeResult result={0};
                request.action=TRADE_ACTION_DEAL;        
                request.symbol=_Symbol;                  
                request.volume=Volume;                      
                request.sl=NormalizeDouble(Minimum+((Delta*KoefSL)/100), _Digits);              
                request.tp=NormalizeDouble(Minimum-((Delta*(100-KoefTP))/100), _Digits);                          
                request.type=ORDER_TYPE_SELL;        
                request.price=Bid;  // open price
                request.type_time=ORDER_TIME_GTC;                    
                //--- send a trade request
                trade2=OrderSend(request,result);}}}
Hello Dear forum users. I can't understand where the error is in the lineif(PositionGetInteger(POSITION_TIME)<TimeBuffer[0]). TheTimeBuffer[0] contains the open time of the current bar. I need to compare if the time of open position is less than the time of the current bar.
The highlighted line is unnecessary. Or do PositionGetSymbol, but better PositionSelectByTicket(PositionGetTicket).
 
Can you please tell me why an EA on the UPU does not open orders? True, I leave a remote desktop open on my home computer with the same terminals and EAs. Perhaps these EAs are interfering with each other? As soon as I call and close the EA on my home PC, the EA opens a position as if nothing has happened.
 
Yousufkhodja Sultonov:
Please, tell me why the EA on the UPU does not open orders? It's true, I leave a remote desktop on my home computer with the same terminals and EAs open. Perhaps these EAs are interfering with each other? As soon as I call and close the EA on my home PC, the EA opens a position as if nothing has happened.

A UPU is essentially the same as a computer, only it is not located in your room, but usually somewhere far away, and it is connected to your trading account. The Expert Advisor itself can't get the information about how many connections there are at any given time in the trading account. The Expert Advisor can build its logic based on

  • the number of open positions
  • which magic numbers are at the open positions
  • number of pending orders
Also the wording "... why an EA on a UPU does not open ... ..." is inaccurate. What do you mean it's not opening? It is trying to open, but reports an error?

In general, we should first know the internal logic of the EA - what its market entries depend on. There is no way to do it without it.

 
Vladimir Karputov:

A UPU is essentially the same as a computer, only it is not located in your room, but usually somewhere far away, and it is connected to your trading account. The Expert Advisor itself can't get the information about how many connections there are at any given time in the trading account. The Expert Advisor can build its logic based on

  • the number of open positions
  • which magic numbers are at the open positions
  • number of pending orders
Also the wording "... why an EA on a UPU does not open ... ..." is inaccurate. What do you mean it's not opening? It is trying to open, but reports an error?

In general, we should first know the internal logic of the EA - what its market entries depend on. You cannot do it without it.

Can my computer interfere with the EA's work on UPU or not? Because the same EA is working properly on my computer.
 
Yousufkhodja Sultonov:
My computer may interfere with the EA's work on UPU or not? Because, the same EA on my computer is working properly.

Forum on trading, automated trading systems and trading strategy testing

Bugs, bugs, questions

Vladimir Karputov, 2017.02.17 18:50

...

If you do not know the Expert Advisor's internal logic, you should first understand its logic and determine its market entries. There is no way to do it without it.


Reason: