OnTicaretİşlem - sayfa 6

 
prostotrader :

Hiçbir şey hatırlamayabilirsin.

Bunun işe yarayacağını kabul edin (tam dolu olması durumunda)
void OnTradeTransaction ( const MqlTradeTransaction &Trans, const MqlTradeRequest &Request, const MqlTradeResult &Result )
{
   if ((Trans.type == TRADE_TRANSACTION_DEAL_ADD ) && (Trans.position > 0 ) && ! PositionSelectByTicket (Trans.position))
     Print ( "Position #" + ( string )Trans.position + " - triggered SL/TP." );
}

Ancak, konuşma biraz daha geniş yapılmaya başlandı .
 
Andrey Dik :

Çok dikkatsizsin, konu başlatıcı değilim.

Bunun gibi bir kod gösterir misiniz:

//——————————————————————————————————————————————————————————————————————————————
void    OnTradeTransaction ( const MqlTradeTransaction &trans,   // структура торговой транзакции
                           const MqlTradeRequest      &request, // структура запроса
                           const MqlTradeResult       &result)   // структура ответа
{
  
}  

Peki, nedir - kim kendisi eklemeli, beğenmezse - bir iş var! Ne olmuş?

Sorunuza cevap vermek için yeterince zaman harcadım.

Sorunuz bu kadar "soyut" olmasaydı, belki de cevap daha spesifik olurdu.

Yani:

1. FORTS veya FOREX

2. Ne tür bir ağ veya çit kullanıyorsunuz?

3. Pozisyonun ömrü boyunca başka emirlerin kullanılıp kullanılmadığı

Peki soru nedir - böyle bir cevap

 
fxsaber :
Bunun işe yarayacağını kabul edin (tam dolu olması durumunda)
void OnTradeTransaction ( const MqlTradeTransaction &Trans, const MqlTradeRequest &Request, const MqlTradeResult &Result )
{
   if ((Trans.type == TRADE_TRANSACTION_DEAL_ADD ) && (Trans.position > 0 ) && ! PositionSelectByTicket (Trans.position))
     Print ( "Position #" + ( string )Trans.position + " - triggered SL/TP." );
}

Ama sanki konuşma biraz daha geniş yapılmaya başlandı .

ST / TP için ses seviyesini ayarlayabileceğinizi hatırlamadığım bir şey.

Değilse (kontrol edeceğim), pozisyon TAMAMEN veya SL veya TP kapatılacaktır.

 
prostotrader :

Hatırlamadığım bir şey, ST / TP'yi beklerken ses seviyesini ayarlayabilirsiniz, değilse,

daha sonra pozisyon TAMAMEN veya SL veya TP kapatılacaktır.

Likidite sadece yeterli olmayabilir.
 
fxsaber :
Likidite sadece yeterli olmayabilir.
Evet ve Broker elektriği kapatabilir :)....
 
prostotrader :
Evet ve Broker elektriği kapatabilir :)....
Düşük sıvılı bir alet alıyoruz ve hepsi bu.
 
fxsaber :
Düşük sıvılı bir alet alıyoruz ve hepsi bu.

Bu yüzden bekleyen siparişleri kullanmanızı tavsiye ettim.

Katma

Çok şey pazara ve araca bağlıdır...

 

OnTradeTransaction olayına hangi siparişin yanıt geldiğinin tam olarak belirlenmesi için, siparişin ilk etkinliği dışındaki tüm etkinlikler bir bilet ile imzalanır.

İlk olay hem bilet hem de request_id tarafından imzalanır. request_id kullanıcı, OrderSendAsinc işlevinden siparişi gönderdikten hemen sonra alır. Bu nedenle, belirli bir OrderSendAsinc yinelemesi, OnTradeTransaction'da elde edilen sonuçlarla bağlantılıdır.

OrderSendAsync'de bir bilet olabilir veya olmayabilir ve büyük olasılıkla, siparişler saniyede 10 parçada tetiklenirse olmayacak (en iyi ihtimalle 10008 retcode ve psio).

 
dmipec :

OrderSendAsync'de bir bilet olabilir veya olmayabilir ve siparişler saniyede 10 parçada tetiklenirse büyük olasılıkla olmayacaktır (en iyi ihtimalle 10008 retcode ve psio).

Şey, tsat değil, sadece 30 saniyede. standart bir oturum açmada.

Her şey doğru yazılırsa, sipariş(ler) zorunlu olacaktır.

 
Vasiliy Sokolov :

Olayları analiz etmek yerine , ticaret ortamının durumunu analiz etmek gerekir ve sadece ticaret ortamı değiştiyse gerekli kararları verin. OnTransaction yalnızca çok sınırlı durumlarda kullanılabilir ve kural olarak, işinizde onsuz yapmak daha iyidir. MetaTrader 4'e bakın, OnTransaction'a sahip değil ve onsuz herkes gayet iyi geçiniyor.

Kabul ediyorum. Ancak ne yazık ki MT5'te, MT4'ün aksine ticaret ortamı gerçeğe uygun olmayabilir. Örneğin, bekleyen bir emir birkaç milisaniye için yürütüldüğünde, hiçbir yerde olmayabilir. Ve OnTradeTransaction bile burada yardımcı olmaz.