MT5 için dilekler - sayfa 31

 

Düşünün lütfen


MQL5'e bir göstergeden veya Uzman Danışmandan veya bir komut dosyasından değişiklik yapılmasına izin veren işlevsellik eklemek için bir teklif

Penceredeki maksimum çubuk sayısı...

programdan kontrollü bir kısıtlama yapmak faydalı olabilir



 
geliştiriciler Lütfen 18097 numaralı başvuruma dikkat edin (küçük bir şeyin tartışmalı olduğunu anlıyorum, ama yine de öyle) ...


not

Ayrıca, mümkünse, lütfen, testler her zamanki gibi devam ediyorsa, optimizasyon sonuçları ve optimizasyon grafiği silinecek şekilde yapın.

Yoksa her an gözetleyebileceğiniz kurnazca bir hareket mi?

 
Interesting :


not

Ayrıca, mümkünse, lütfen, testler her zamanki gibi devam ediyorsa, optimizasyon sonuçları ve optimizasyon grafiği silinecek şekilde yapın.

Yoksa her an gözetleyebileceğiniz kurnazca bir hareket mi?

Böyle bir teklife itiraz edeceğim. Optimizasyondan sonra, sonuçları analiz etmek için, her zamanki gibi birçok geçişi ayrı ayrı kontrol etmem gerekiyor (ilgili geçişe tıklayarak elde edilir). Normal moddaki ilk testten sonra optimizasyon sonuçları kaybolursa, sonuçlarla çalışmak için değerli bir fırsat kaybedilir.

 
Yedelkin :

Böyle bir teklife itiraz edeceğim. Optimizasyondan sonra, sonuçları analiz etmek için, her zamanki gibi birçok geçişi ayrı ayrı kontrol etmem gerekiyor (ilgili geçişe tıklayarak elde edilir). Normal moddaki ilk testten sonra optimizasyon sonuçları kaybolursa, sonuçlarla çalışmak için değerli bir fırsat kaybedilir.

Pekala, ısrar etmiyorum, satırda ne yazıyor - > Yoksa her an dikizleyebilmeniz için bu kadar zor bir hareket mi?

 

1) Uyguladığınızı değil normal olayları eklemeniz gerekir.

aklıma gelen ilk şey

OnBar,OnBarClose,OnQuote,OnDomChanged...

OnPositionAçık,OnPositionKapalı...

Bağlı, Bağlantısız..

başvuruların durumundaki değişiklikler vb.

2) belgeleri buradaki gibi bir insan formuna dönüştürün: http://msdn.microsoft.com/en-us/library/system.data.aspx

3) "API'yi kitlelere verin" -)

ps Görünüşe göre geliştiriciler ya yeni başlayanlar için yazılım yapıyorlar ya da kendileri

System.Data Namespace ()
System.Data Namespace ()
  • msdn.microsoft.com
The namespace provides access to classes that represent the ADO.NET architecture. ADO.NET lets you build components that efficiently manage data from multiple data sources. In a disconnected scenario such as the Internet, ADO.NET provides the tools to request, update, and reconcile data in multiple tier systems. The ADO.NET architecture is...
 
anubis :

1) Uyguladığınızı değil normal olayları eklemeniz gerekir.

aklıma gelen ilk şey

OnBar,OnBarClose,OnQuote,OnDomChanged...

OnPositionAçık,OnPositionKapalı...

Bağlı, Bağlantısız..

başvuruların durumundaki değişiklikler vb.

2) belgeleri buradaki gibi bir insan formuna dönüştürün: http://msdn.microsoft.com/en-us/library/system.data.aspx

3) "API'yi kitlelere verin" -)

ps Görünüşe göre geliştiriciler ya yeni başlayanlar için yazılım yapıyorlar ya da kendileri

ÖZEL olaylar diye bir şey var. Bunlardan istediğiniz sayıda kendiniz uygulayabilirsiniz.

Örneğin, uzun zamandır bir zamanlayıcı aracılığıyla OnConnected ve OnDisconnected'ı yakalıyorum. Arzu ederseniz, OnBar ve OnBarClose veya diğer olayları da oluşturun.

Ardından, bu bloğu kullanarak onları OnChartEvent'te sakince yakalayın (tüm bunlar yardımda, tekerleği neden yeniden icat ettiniz?)

   if (id> CHARTEVENT_CUSTOM )
   //User event is received / Получено пользовательское событие
  {
  }

not

Ve sınıf düzeyinde, genel olarak, herhangi bir (neredeyse herhangi bir) olay oluşturulabilir ve işlenebilir ...

 
Interesting :

ÖZEL olaylar diye bir şey var. Bunlardan istediğiniz sayıda kendiniz uygulayabilirsiniz.

Örneğin, uzun zamandır bir zamanlayıcı aracılığıyla OnConnected ve OnDisconnected'ı yakalıyorum. Dilerseniz OnBar ve OnBarClose veya diğer olayları da oluşturun.

Ardından, bu bloğu kullanarak onları OnChartEvent'te sakince yakalayın (tüm bunlar yardımda, tekerleği neden yeniden icat ettiniz?)

not

Ve sınıf düzeyinde, genel olarak, herhangi bir (neredeyse herhangi bir) olay oluşturulabilir ve işlenebilir ...

Nasıl uyguladığınızı görmek ilginç (OnConnected?)

 

dentraf :

Nasıl uyguladığınızı görmek ilginç (OnConnected?)

Evet lütfen :)

CMqlManagerConnect sınıfını kullanarak Expert Advisor'da bu olayları işlemenin bir örneğini vereceğim (modül gönderiye eklenmiştir).

1. Modülü \MQL5\Include\ dizinine (tercihen bir alt dizine) kopyalayın

Hepsi burada - \MQL5\Include\Units\Objects

2. Uzmana bu dosyaya bir link ekleyin, bende bu var

 /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
//              Object classes, used in working the trade system              //
/// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
#include <\Units\Objects\UManagerConnect.mqh> //Class - CMqlManagerConnect

3. CMqlManagerConnect türünde bir değişken oluşturun.

 /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
//             Global variables, used in working the trade system             //
/// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
//****************************************************************************//
//               Objects created on the grounds of the classes                //
//****************************************************************************//
CMqlManagerConnect ManagerConnect; //Менеджер контролирующий состояние коннекта

4. Zamanlayıcıda şöyle yazıyoruz

 void OnTimer ()
{
//----------------------------------------------------------------------------//
//Work variables / Служебные переменные
//----------------------------------------------------------------------------//
//****************************************************************************//
//                  Контроль состояния соединения с сервером                  // 
//****************************************************************************//
ManagerConnect.OnEventTimer();
//----------------------------------------------------------------------------//
}

5 OnChartEvent'te şöyle yazıyoruz

 void OnChartEvent ( const int id,         // идентификатор события  
                   const long & lparam,   // параметр события типа long
                   const double & dparam, // параметр события типа double
                   const string & sparam   // параметр события типа string
                  )
{
//----------------------------------------------------------------------------//
//Work variables / Служебные переменные
//----------------------------------------------------------------------------//

//****************************************************************************//
//                          Processing user events                            //
//****************************************************************************//
   if (id> CHARTEVENT_CUSTOM )
   //User event is received / Получено пользовательское событие
  {
   //Выводим текстовое сообщение о событии в комментарий
   Comment ( "User Event " ,sparam);

     if (id== CHARTEVENT_CUSTOM + 1 )
     //Соединеие с сервером востановлено
    {
     //тут обрабатываем все что нам нужно
    }

     if (id== CHARTEVENT_CUSTOM + 2 )
     //Соединеие с сервером потеряно
    {
     //тут обрабатываем все что нам нужно
    }

  }
//----------------------------------------------------------------------------//  
}

not

Tabii ki, olayları OnChartEvent'e geçiremezsiniz, ancak onları doğrudan sınıfta (doğrudan tabanda veya mirasçılarda) işleyebilirsiniz. Ancak bu yaklaşımla bile OnChartEvent'e bir çağrı bırakmanızı tavsiye ederim, çünkü geri kalan çizelgelere neler olduğunu anlatmak gerekebilir... :)

Dosyalar:
 
Interesting :

Evet lütfen :)

CMqlManagerConnect sınıfını kullanarak Expert Advisor'da bu olayları işlemenin bir örneğini vereceğim (modül gönderiye eklenmiştir).

1. Modülü \MQL5\Include\ dizinine (tercihen bir alt dizine) kopyalayın

Hepsi burada - \MQL5\Include\Units\Objects

2. Uzmana bu dosyaya bir link ekleyin, bende bu var

3. CMqlManagerConnect türünde bir değişken oluşturun.

4. Zamanlayıcıda şöyle yazıyoruz

5 OnChartEvent'te şöyle yazıyoruz

not

Tabii ki, olayları OnChartEvent'e geçiremezsiniz, ancak onları doğrudan sınıfta (doğrudan tabanda veya mirasçılarda) işleyebilirsiniz. Ancak bu yaklaşımla bile OnChartEvent'e bir çağrı bırakmanızı tavsiye ederim, çünkü geri kalan çizelgelere neler olduğunu anlatmak gerekebilir... :)

CMqlManagerConnect sınıfı, kendiniz mi yazdınız? sunucuyla bağlantı kesildiğinde sunucular üzerinde yineleme yapmak için bir çözümünüz var mı?
 
dentraf :
CMqlManagerConnect sınıfı, kendiniz mi yazdınız? sunucuyla bağlantı kesildiğinde sunucular üzerinde yineleme yapmak için bir çözümünüz var mı?
Tabii ki kendim yazdım (örneğin), ama bu sorunu kendim farklı şekilde çözüyorum. Kaba kuvvet çözümü yok (en azından şimdilik), ancak bu sorunun da çözülmesi gerekecek (insanlar bu konuda geliştiricilerle zaten iletişime geçtiler) ...