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

 
Roman :

Ve böylece sunucuya belirli bir sıklıkta ve gecikmeden ping atıyorum.

16 ms'den daha sık mı? sunucu nedir? Bu kadar sık ping atmanın anlamı nedir?

 
fxsaber :

LS'ye gönderildi.

Derleme sırasında CTRL + BREAK'e %22'de basarsanız, ME askıda kalır.

 
Andrey Khatimlianskii :

16 ms'den daha sık mı? sunucu nedir? Bu kadar sık ping atmanın ne anlamı var?

16 ms'de değil ve gecikmesiz bir döngüde algılayın.
Soketi okur ve kalp atışını pingler.

 
Roman :

16 ms'de değil ve gecikmesiz bir döngüde algılayın.
Soketi okur ve kalp atışını pingler.

Anladım, soket okuma.

Ve neden o zaman hiç kayma? Yoksa bir soketi gecikmeden okumak kötü bir şey mi?

Bu kadar sıklıkta kalp atışının anlamını anlayamıyorum (

 
Andrey Khatimlianskii :

Anladım, soket okuma.

Ve neden o zaman hiç kayma? Yoksa bir soketi gecikmeden okumak kötü bir şey mi?

Bu kadar sıklıkta kalp atışının anlamını anlayamıyorum (

Peki makro ne işe yarar?
Soket gecikmesiz bir döngüde okunur ve aynı döngüde belirli bir frekansta kalp atışı gecikmeden yapılır.
Fiş burada iş değil, fişin yığına yazıldığını yazdım, işine yarayabilir.
Makronun anlamı, bir döngüdeki bazı kodların yürütme sıklığını gecikmeden ayarlamaktır.
Mutlaka kalp atışı değil. Farklı frekanslarda istediğiniz kadar makro yapabilirsiniz
ve bir döngüde gecikmeden farklı şekilde yürütülürler.
Örneğin Nikolai, OnTimer için bir sınıf yazdı. https://www.mql5.com/ru/code/31306
Ve burada mikrosaniyelere inebileceğiniz bir döngü için.

Multi Timer
Multi Timer
  • www.mql5.com
Данная библиотека Вам пригодится, когда Вам необходимы несколько таймеров с независимой обработкой и неконфликтующие между собой. Для работы с данной библиотекой важно запомнить следующие правила: В теле вашей программы не должно быть функции OnTimer , т.к. эта функция уже присутствует в файле Timer.mhq Не надо создавать никаких экземпляров...
 
Roman :

Peki makro ne işe yarar?
Soket gecikmesiz bir döngüde okunur ve aynı döngüde belirli bir frekansta kalp atışı gecikmeden yapılır.
Fiş burada iş değil, fişin yığına yazıldığını yazdım, işine yarayabilir.
Makronun anlamı, bir döngüdeki bazı kodların yürütme sıklığını gecikmeden ayarlamaktır.
Mutlaka kalp atışı değil. Farklı frekanslarda istediğiniz kadar makro yapabilirsiniz
ve bir döngüde gecikmeden farklı şekilde yürütülürler.
Örneğin Nikolai, OnTimer için bir sınıf yazdı. https://www.mql5.com/ru/code/31306
Ve burada mikrosaniyelere inebileceğiniz bir döngü için.

Yani her şey bununla ilgiliydi:

 while ( true )
{
   static ulong prev = 0 ;
   if ( GetMicrosecondsCount() - prev >= InpPause_msc )
   {
     prev = GetMicrosecondsCount();
     // do something
   }

?


O halde mikrosaniyenin neden kaydığı hala net değil. Görünüşe göre, sadece "yığına". Neyse olsun)

 
Andrey Khatimlianskii :

Yani her şey bununla ilgiliydi:

?

O halde mikrosaniyenin neden kaydığı hala net değil. Görünüşe göre, sadece "yığına". Neyse olsun)

Peki, böyle yazabilirsin. Basitçe switch ve makro ile yaptım.
Ve örneğinizde GetMicrosecondsCount'a iki çağrı var, bende bir tane var.
Ve evet, yığına kayma, bu döngüde bir mikro saniye kaymasının ne kadar yararlı olduğunu asla bilemezsiniz.
Sadece bir mikro saniye kaymasının mümkün olduğu gerçeği.

 
Andrey Khatimlianskii :

Anladım, soket okuma.

Ve neden o zaman hiç kayma? Yoksa bir soketi gecikmeden okumak kötü bir şey mi?

Bu kadar sıklıkta kalp atışının anlamını anlayamıyorum (

Bu durumda, kayma genellikle zararlıdır. Başka bir iş parçacığına öncelik verdiği için, kendi işini yavaşlatır.

 
Roman :

Peki, böyle yazabilirsin. Basitçe switch ve makro üzerinden yaptım.
Ve örneğinizde GetMicrosecondsCount'a iki çağrı var, bende bir tane var.
Ve evet, yığına kayma, bu döngüde bir mikro saniye kaymasının ne kadar yararlı olduğunu asla bilemezsiniz.
Sadece bir mikro saniye kaymasının mümkün olduğu gerçeği.

İmkansız

 
Slava :

İmkansız

Tamam, yeniden ifade edeceğim. İşlemcinin saat hızına bağlı olarak mql içinde bu kabaca mümkündür.
Peki ya PWM? - sabit frekans ve değişken görev döngüsü darbe sinyali.
Kalıcılık sağlamaz mı?