Init() ve DeInit() yürütme sırası - sayfa 17

 
fxsaber :

Hizmetlerin hemen hemen tüm Açık işlevlerine sahip olacağı ortaya çıktı: OnInit, OnDeinit, OnTick(string), zamanlayıcı, OnTicaret, OnTradeTransaction, OnTester, OnTesterInit, OnTesterPass, OnTesterDeinit , OnBookEvent, OnChartEvent(uzun ChartID, ...), OnCalculate , ...


Ve gösterge arabelleklerine ihtiyacınız yoksa ve göstergelerin/EA'ların koltuk değnekleriyle uğraşmak istemiyorsanız, (MT'nin önceki sürümlerinden) zarar görmeyen yeni bir tür program yazın - Hizmetler.

Aynen öyle.

OnCalculate olmaz.

OnChartEvent ile henüz çözüm yok

 
Slawa :

Aynen öyle.

Bu koltuk değnekleri muhtemelen birçok insanı

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

Eski TF'den gösterge verileri alınamıyor

Sergey Dzyublik , 2017.04.14 10:55

Kullanıcının elinde piyasanın "gücünü" ölçen bir gösterge vardı.
Gösterge mevcut TF ve döviz çifti üzerinde çalıştı.

Görev, görüntüleme için bağımsız bir TF seçme yeteneği ile 8 popüler para biriminin sonuçlarını tek bir grafikte göstermekti.
Kullanıcı TF'si ne olursa olsun, parametrelerde ayarlanmış olanın sonucunu göstermelidir.

Gerekli TF için diğer para birimlerinden trafik yükleme sorunu aşağıdaki koltuk değneği ile çözüldü:

   for ( int i = ArraySize (symbols_load) - 1 ; i >= 0 ; --i){
       int counter = 0 ;
       int max_count = 10 ;
       while (counter < max_count){
         RefreshRates ();
         double tmp_arr[];
         int res = CopyClose (symbols_load[i] + Suffix, int (TF), 0 , 3 , tmp_arr);
         if (res == 3 )
             break ;
         RefreshRates ();
         ++counter;
      }
   }

nerede:

symbol_load - yüklenecek para birimlerinin listesi
son ek   - döviz çiftlerinin adının olası ön eki
TF - gerekli zaman dilimi

Belirli bir cilt için geçmiş verilere (çubuklar ve işaretler) abone olmak/abonelikten çıkmak mümkün müdür? Verilen semboller için Hizmet için her zaman belirli bir boyutta bir önbelleğe (yeni çubuklar ve onay işaretlerinden) sahip olmak.


O zaman, örneğin pazar tarayıcılarını yazmak ne kadar kolay olurdu.

 
Slawa :

Göstergeler amaçlarına uygun olarak kullanılmalıdır.

Başka bir deyişle, grafiğin -dönemi sembolünü değiştirirken göstergenin OnInit ve OnDeinit'in yürütme sırası kimseyi endişelendirmemelidir .

Bu yaklaşım çok şeyi açıklıyor.

Yani onu olduğu gibi kabul etmeniz gerekiyor, asıl mesele onu bilmek.

 
Slawa :

Numara.

Göstergelerin ne olduğunu tekrar okuyun. Akelis'te. Colby'de. Evet, Yandex'e piyasa göstergelerinin ne olduğunu sorun.

MT3'te özel göstergeler kavramını tanıttığımızda, yalnızca 2 gösterge tamponu olduğu için grafiklerdeki nesnelerle çalışmasına izin verdik.

Tarihe küçük bir giriş. İlk önce FXCharts vardı, şirkete sadece Ekim 2002'de katıldığım için onu bulamadım. Sonra MetaTrader vardı. Şirkete MQL II'yi geliştirmek için geldim (FXCharts zaten bir ticaret stratejisi diline sahipti). MQL II ve uzmanları yaptığımızda adı MetaTrader 2 olarak değiştirdik. Özel göstergeler yazmayı mümkün hale getirdiğimizde MetaTrader üçüncü oldu - MetaTrader 3.

Sonra MetaTrader 4 ve MQL4 vardı. Özel göstergeler, 8 gösterge tamponu ile çalışabilme özelliğine sahiptir. Grafikteki nesnelerle çalışma yeteneği kalır. Ancak göstergeler arayüz dizisinde hesaplandığından, çok az kişi nesnelerle çalışmayı kötüye kullandı.

Ve işte MT5. Mimari tamamen farklıdır, ancak grafikteki grafik nesnelerle çalışma yeteneği açısından MT4'ün rehineleri haline geldik. Evet, biz Stakhanovites'iz, kahramanlar gibi, tabloyu göstergelerden yönetmek için neredeyse sınırsız olanaklar ekledik. Vardık. İllüstrasyon - Hiçbir şey hakkında 16 sayfalık tartışmalar.

servislere geçelim

Hizmetler klasörü MQL5 düzenleyicisinde göründü, ancak bu aracın nasıl kullanılacağı henüz net değil. https://www.mql5.com/ru/forum/190129


Services , новый функциона в архитеркуте MT5, похороны MT4 не за горой.
Services , новый функциона в архитеркуте MT5, похороны MT4 не за горой.
  • www.mql5.com
Хотелось бы подробней с примерами использования обсудить новый функционал...
 
Slawa :

Göstergeler amaçlarına uygun olarak kullanılmalıdır.

Başka bir deyişle, grafiğin -dönemi sembolünü değiştirirken göstergenin OnInit ve OnDeinit'in yürütme sırası kimseyi endişelendirmemelidir.

Ve neden tüm tartışmalar grafik nesnelere dönüştü? Küresel değişkenler, dosyalar vb. (göstergelerde amaçlandığı gibi kullanılabilirler mi?) gibi başka küresel kaynaklar da vardır, bunlar bir hata kaynağı olacaktır " Sembolü değiştirirken göstergenin OnInit ve OnDeinit'in yürütme sırası - grafiğin periyodu kimseyi rahatsız etmiyor ". Bir kez daha dikkatinizi çekiyorum ki, artık çekirdek, MQL programcısının init/deinit çağrılarının sırasının belirsizliğinden kaynaklanan komisyonu atlamak için sıra hakkında endişelenmesi gerektiği şekilde uygulanıyor. MQL hakkında endişelenmemek için, dahili olarak belirsizliği çözmekle ilgilenen bir çekirdeğe ihtiyacınız var.
 
Stanislav Korotky :
Ve neden tüm tartışmalar grafik nesnelere dönüştü? Küresel değişkenler, dosyalar vb. (göstergelerde amaçlandığı gibi kullanılabilirler mi?) gibi başka küresel kaynaklar da vardır, bunlar bir hata kaynağı olacaktır " Sembolü değiştirirken göstergenin OnInit ve OnDeinit'in yürütme sırası - grafiğin periyodu kimseyi rahatsız etmiyor ". Bir kez daha dikkatinizi çekiyorum ki, artık çekirdek, MQL programcısının init/deinit çağrılarının sırasının belirsizliğinden kaynaklanan komisyonu atlamak için sıra hakkında endişelenmesi gerektiği şekilde uygulanıyor. MQL hakkında endişelenmemek için, dahili olarak belirsizliği çözmekle ilgilenen bir çekirdeğe ihtiyacınız var.
Bu dosyalarla ilgili - iyi bir soru. Başlatmama sırasında bir şeyi sıfırlamanız ve sonraki başlatma sırasında bir şey okumanız gerekirse, bazı sorunlar olabilir.
 
Stanislav Korotky :

Hizmetler veya birden fazla Uzman Danışmanı tek bir çizelgede çalıştırma yeteneği neden tartışılan sorunları tam olarak karşılayamayacak?

Konuda belirtilen gösterge vakaları yerine, göstergenin tüm hesaplama bölümünü içerecek olan Hizmetin başlatılacağını hayal edin. Ve gösterge tamponlarında Hizmet tarafından hesaplanan verileri görselleştirecek olan göstergeyi çizelgeye koyacaktır.


Göstergeleri amaçlanan amaçları için kullanmanız ve yalnızca göstergelerin bir grafikte birkaç kez başlatılabilmesi nedeniyle evrensel bir şey yapmamanız gerekir. Böylece göstergelerde OrderSend yasağından şikayet etmeye başlayabilirsiniz.

 
fxsaber :

Hizmetler veya birden fazla Uzman Danışmanı tek bir çizelgede çalıştırma yeteneği neden tartışılan sorunları tam olarak karşılayamayacak?

Konuda belirtilen gösterge vakaları yerine, göstergenin tüm hesaplama bölümünü içerecek olan Hizmetin başlatılacağını hayal edin. Ve gösterge tamponlarında Hizmet tarafından hesaplanan verileri görselleştirecek olan göstergeyi çizelgeye koyacaktır.

Onlar. Hizmet aracılığıyla bir gösterge oluşturmak mümkün olacak mı?
 
Alexey Kozitsyn :
Onlar. Hizmet aracılığıyla bir gösterge oluşturmak mümkün olacak mı?
Bu, Uzman Danışman tarafından hala mümkündür (bazı kısıtlamalarla).
 
fxsaber :
Bu, Uzman Danışman tarafından hala mümkündür (bazı kısıtlamalarla).
Onlar. koltuk değneği kullanmak? Bir örnek alabilir miyim?