MT5 ve iş başında hız - sayfa 32

 
Renat Fatkhullin :

Lütfen bu sütunun durumuna yanıt verin.

Sadece boş olmakla kalmaz, aynı zamanda kullanılabilir alanın büyük bir kısmını da yer.

 
fxsaber :

https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_state

Başarılı bir OrderSendAsync işleminden sonra Başlatıldı durumu oluşmuyor mu?

Durum oluşabilir, ancak bilet oluşmaz.

Sipariş, piyasaya karşılık gelmese bile , doldurmanın resmi doğruluğunun kontrolünden geçti. Asenkron düzen basitçe boru hattından geçti ve kaderi daha sonra ve başka bir yerde belirlenecek.

 
fxsaber :

Lütfen bu sütunun durumuna yanıt verin.

Sadece boş olmakla kalmaz, aynı zamanda kullanılabilir alanın büyük bir bölümünü yer.

Evet bu doğru.

Tarihteki anlaşmalardan sanal pozisyonları toplarken yorumu doğru aktarmayı unuttuk. Hadi düzeltelim.

 
Renat Fatkhullin :

Durum oluşabilir , ancak bilet oluşmaz.

Bu durum görülemez, çünkü OrdersTotal() değişmez.

 
fxsaber :

Bu durum görülemez, çünkü OrdersTotal() değişmez.

Eksik kapıyı çalmayın.

Ayrıntılı olarak açıkladım - "sipariş resmi olarak doğru olup olmadığı kontrol edildi ve bir yere gönderildi." Bu siparişin numarası yoktur, sadece konveyörün bir sonraki aşamasına aktarılmıştır. Sadece yürütme sırasını geçtiğinde kendisine bir numara atanacaktır.

Eşzamansız bir paket hakkında daha fazla bilgi alamazsınız. Pazar/ticaret durumunuz, bir süre sonra asenkron talebiniz hakkında OnTradeTransaction'da görülebilecek adım adım bir ayrıntı alana kadar değişmeyecektir.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
В языке MQL5 предусмотрена обработка некоторых предопределенных событий. Функции для обработки этих событий должны быть определены в программе MQL5: имя функции, тип возвращаемого значения, состав параметров (если они есть) и их типы должны строго соответствовать описанию функции-обработчика события. Именно по типу возвращаемого значения и по...
 
Renat Fatkhullin :

Eksik kapıyı çalmayın.

Ayrıntılı olarak açıkladım - "sipariş resmi olarak doğru olup olmadığı kontrol edildi ve bir yere gönderildi." Bu siparişin numarası yoktur, sadece konveyörün bir sonraki aşamasına aktarılmıştır. Sadece yürütme sırasını geçtiğinde kendisine bir numara atanacaktır.

Eşzamansız bir paket hakkında daha fazla bilgi alamazsınız. Pazar/ticaret durumunuz, bir süre sonra asenkron talebinizle ilgili olarak OnTradeTransaction'da yakalanabilecek adım adım bir ayrıntı alana kadar değişmeyecektir.

Açıklama için teşekkürler, inceleyeceğim.

 

Belki hikaye büyümüştür.

Ancak b2617'de bu Uzman Danışman tekrar Alert oldu.

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

MT5 ve iş başında hız

fxsaber , 2020.09.08 19:46

 // Демонстрация полного (не частичного) пересбора HistorySelect-кеша.
#include <fxsaber\Benchmark.mqh> // https://c.mql5.com/3/321/Benchmark.mqh

input int inAlertTime = 1 ; // Нижний порог в миллисекундах

#define _B2(A) _B(A, inAlertTime)

const bool Init = EventSetTimer ( 1 );

void OnTimer ()
{
   static MqlTradeRequest Request = { 0 };
   static MqlTradeResult Result = { 0 };

   if ( PositionSelectByTicket (Result.order)) // Если позиция открыта - закрываем.
  {
    Request.type = ORDER_TYPE_SELL ;
    Request.price = SymbolInfoDouble ( _Symbol , SYMBOL_BID );
    Request.position = Result.order;
  }
   else // Иначе - открываем.
  {
    Request.action = TRADE_ACTION_DEAL ;
    Request.type = ORDER_TYPE_BUY ;
    Request.symbol = _Symbol ;
    Request.volume = 0.1 ;
    Request.price = SymbolInfoDouble ( _Symbol , SYMBOL_ASK );
    Request.position = 0 ;
  }

   if ( OrderSend (Request, Result))
    _B2( HistorySelect ( 0 , INT_MAX ));
}
 

Beta 2619'da kontrol edin lütfen.

Geçmiş getirme işlemlerini hızlandırmak için bir dizi optimizasyon yaptık. Bir zorunlu önbellek geçersiz kılma vakası vardı.

 
Renat Fatkhullin :

Beta 2619'da kontrol edin lütfen.

Geçmiş getirme işlemlerini hızlandırmak için bir dizi optimizasyon yaptık. Bir zorunlu önbellek geçersiz kılma vakası vardı.

Hızlanma gerçekleşti ama ne yazık ki nedense önbellek güncellemesi bir milisaniyeye sığmıyor, bu yüzden geçmişin güncellendiği her adımda uyarı veriyor.

 2020.09 . 24 05 : 17 : 49.541 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 49.543 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 50.526 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 50.527 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 51.569 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 51.571 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 52.530 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.
2020.09 . 24 05 : 17 : 52.532 Alert : Time[Test6.mq5 460 : HistorySelect ( 0 , INT_MAX )] = 1 ms.


Lütfen harika bir hikaye üzerinde deneyin.


ZY Bu milisaniyenin önbellek güncellemesi sırasında bellek tahsisi sırasında ortaya çıktığını varsayıyorum. Mesela yavaşlayacak bir şey yok.

 
fxsaber :

Açıklama için teşekkürler, inceleyeceğim.

Bayraklarınızı ayarlayın, bu eski bir konu.