[ARCHIVE]Any rookie question, so as not to clutter up the forum. Professionals, don't pass it by. Can't go anywhere without you - 5. - page 69

 
Notter:

Good afternoon,

Also on a real account, there are a lot of mistakes when executing trade orders. For example, today:

2013.01.10 13:46:09 '15082': buy 0.15 EURUSD at 1.30844 sl: 1.30758 tp: 0.00000
2013.01.10 13:46:10 '15082': request was accepted by server
2013.01.10 13:46:10 '15082': requote 1.30843 / 1.30858 for open buy 0.15 EURUSD at 1.30844 sl: 1.30758 tp: 0.00000
2013.01.10 13:46:11 '15082': instant order buy 0.15 EURUSD at 1.30869 sl: 1.30785 tp: 0.00000
2013.01.10 13:46:11 '15082': request was accepted by server
2013.01.10 13:46:11 '15082': request in process
2013.01.10 13:46:13 '15082': order was opened : #12941470 buy 0.15 EURUSD at 1.30869 sl: 1.30785 tp: 0.00000

That is, from the signal to open the position, it took 4 seconds to execute. And as I suspect - this is not the limit.

The reason of this delay is that the order was requote by 15 points.

How do I fight it? I don't care about 15 pips. I want to open an order by market and it does not matter how much the price changes in a second. As a result, I opened higher at1.30869, while I should have opened it at 1.30858. This issue may become critical for profitability/losses of the Expert Advisor if it cannot open on the signal and waits for correction to start.

Thank you.



I strongly recommend to change your brokerage company. Can you send me the name of this brokerage company as a personal message?
 
tara:

The size of the "fuck off" is set by an order parameter called "slippage". In your case it was 0, so a 1 pt departure in the quote resulted in a requote.


As if there is no 1 pt there... don't make it up.
 

Heroix

I don't know much about brokerage companies, I have a contract with Finam, I trade via modem and I don't know which brokerage company my orders go to... I don't know which brokerage company my orders go to... I don't have a clue about that yet.

I don't know what my spreads will be. I have no idea what kind of spreads to trade with. As euro spread is floating, it may be less than 15 pips, although unlikely. I am thinking about 30 pips.

As soon as I got conditions to close the order, my terminal froze with a message

2013.01.10 14:47:45 TradeContext: ping error
2013.01.10 14:48:50 '15082': ping failed

After a few attempts to re-login the order has closed :)

In general, I would say trading is fun, it is automated, I have to correct errors all the time :)

 

Good afternoon all!

Folks, please advise how to solve the problem in the following code:

       double sSup=Sup-(Udal*Point);                           // Sup - это уровень поддержки, Udal - расстояние от него
       zapS=0;
       for(int iS=0; iS<=OrdersTotal(); iS++)                  // перебор открытых ордеров
         {
          if(OrderSelect(iS,SELECT_BY_POS,MODE_TRADES)==true)  // выбор рыночного ордера
            {
             if(OrderSymbol()!=Symb) continue;                 // только нужный инструмент
             if(OrderType()>1) continue;                       // только рыночные
             sPO=OrderOpenPrice();                             // его цена
             sellTip=OrderType();                              // его тип
             if(sPO==sSup && sellTip==1) zapS=1;               // если цена открытого ордера совпадает с sSup и уровень является Sell, то поднять флаг
            }
         }
The problem is in the line if(sPO==sup && sellTip==1) zapS=1; (or to be precise, in the fragment sPO==sup ) . The following problem: for example if sPO=1,3100 and sSup=1,3100 the flag still equals 0 (the value 1,3100 is printed at both values via Print ) . Where am I making a mistake? Why does zapS not become 1?
 
WindSW:

Good afternoon all!

Folks, please advise how to solve the problem in the following code:

The problem is in the lineif(sPO==sup && sellTip==1) zapS=1; (or to be precise, in the fragment sPO==sup ) . The following problem: for example if sPO=1,3100 and sSup=1,3100 the flag still equals 0 (the value 1,3100 is printed at both values via Print) . Where am I making a mistake? Why does zapS not become 1?


https://www.mql5.com/ru/articles/1561
 
ilunga:

https://www.mql5.com/ru/articles/1561
Thank you! I'll try to fix it
 
WindSW:

Good afternoon all!

Folks, please advise how to solve the problem in the following code:

The problem is in the lineif(sPO==sup && sellTip==1) zapS=1; (or to be precise, in the fragment sPO==sup ) . The following problem: for example if sPO=1,3100 and sSup=1,3100 the flag still equals 0 (the value 1,3100 is printed at both values via Print) . Where am I making a mistake? Why does zapS not become 1?

Check here...
 

Hello all, I can not understand what is wrong with several EAs working at the same time, only one order opens, the rest of them ignore signals, please advise what is wrong?Orders - function determining the number of orders on the magician

total=OrdersTotal();

if(total >=-1 && total == Orders(symbol,operation,magic))

 
dimarik0000:

Hello all, I can not understand what is wrong with several EAs working at the same time, only one order opens, the rest of them ignore signals, please advise what is wrong?Orders - function determining the number of orders on the magician

total=OrdersTotal();

if(total >=-1 && total == Orders(symbol,operation,magic))


what's this crazy condition?! :)

Write this operator in Russian and I will try to correct the string.

 
hoz:
I had an idea to use well known Price Action patterns calledDBLHC andDBHLC.




Conditions for its formation:

DBLHC (Bull Setup)- bars with identical lows and higher closes.
Two (may be three or more) consecutive bars with the same lows, with the closing price of the last one being higher than the maximum of the previous one. The difference in lows of adjacent bars may not exceed 3 pips. The more bars make up the set-up, the stronger the signal it generates.

DBHLC (Bearish Setup)- bars with equal highs and lower closes.
Two (three or more) consecutive bars with the same maximums with the closing price of the last one lower than the minimum of the previous one. The difference in maximums of adjacent bars must not exceed 3 points. The more bars make up the set-up, the stronger the signal it generates.

Take, for example, theDBLHC (Bullish Setup)

The open price of the current bar should be close to the minimum of the previous bar. It's easy to write. But we are interested in the case when there is more than one bar with the same minimum or almost the same minimum, for example, 5. How should we work in such a case? How to specify this condition so as to consider not only the previous bar but the bars located earlier in the history as well?

I suppose we should loop through the bars from the past to the present:

Then we should somehow set the condition that if the minimum of the next bar is also equal to the minimum of the previous one(s), then... further we compare it... How to implement this?

Here is a tip:

NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point --- difference between adjacent bars. If the condition is not fulfilled -> Return(False); (Returns false)

Return(False) after the loop has been passed

We can do it in a different way:

If the condition NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point is true, increase the counter of adjacent bars (initially equal to zero) by 1,

if the condition is false, we return the value of the adjacent bar counter.

The bigger the number returned by the function, the stronger the set. If zero is returned - the set-up is not present.

Reason: