"MQL5'te Tik Göstergeleri Oluşturma" makalesi için tartışma

 

Yeni makale MQL5'te Tik Göstergeleri Oluşturma yayınlandı:

Bu makalede, iki göstergenin oluşturulmasını ele alacağız: fiyatın tik grafiğini çizen tik göstergesi ve belirtilen sayıda tik ile mumları çizen tik mum göstergesi. Göstergelerin her biri gelen fiyatları bir dosyaya yazar ve göstergenin yeniden başlatılmasından sonra kaydedilen verileri kullanır (bu veriler diğer programlar tarafından da kullanılabilir)

Yazar: Denis Zyatkevich

 

Bu ilginç makale için teşekkür ederim.

Verileri tamponlamak için bir dosya kullanmak zorunlu muydu?

Statis dizisi kullanarak geçmiş verilerini bellekte tamponlamak mümkün değil miydi?

Saygılarımla

 

İyi günler!

İkinci grafikleri görmek istiyorum - bir mum birkaç saniyedir (5 sn, 6 sn, 10, 12,15). Zamana göre fiyat değişikliklerini görmek için.

 
Silent:

Yazım hatası mı?

Makale metninde. Örnekte doğru, AskBuffer
Evet, bu bir yazım hatası. Düzeltildi. Teşekkür ederim.
 

İyi günler!

Test cihazında sanal tiklerin oluşturulmasını devre dışı bırakırken ve enstrüman fiyatlarındaki verilerin zamana göre senkronizasyonunu yaparken, test cihazında çoklu para birimi testi için önerilen gösterge tarafından alınan tik dosyalarını kullanmak mümkün müdür?

Teşekkür ederim.

Документация по MQL5: Получение рыночной информации / SymbolIsSynchronized
Документация по MQL5: Получение рыночной информации / SymbolIsSynchronized
  • www.mql5.com
Получение рыночной информации / SymbolIsSynchronized - Документация по MQL5
 
robinz:

İyi günler!

İkinci grafikleri görmek istiyorum - bir mum birkaç saniyedir (5 sn, 6 sn, 10, 12,15). Zamana göre fiyat değişikliklerini görmek için.

Bu grafikler bu makalenin kapsamı dışındadır, bu nedenle bunları kendiniz oluşturmanızı öneririm - makalede açıklananlardan daha karmaşık değildir.
rrr:

İyi günler!

Test cihazında sanal tiklerin oluşturulmasını devre dışı bırakırken ve enstrüman fiyatlarındaki verilerin zamana göre senkronizasyonunu yaparken, test cihazında çoklu para birimi testi için önerilen gösterge tarafından alınan tik dosyalarını kullanmak mümkün müdür?

Teşekkür ederim.

Gösterge tarafından oluşturulan tırnaklı dosyalar elbette başka amaçlar için kullanılabilir. Gereksiz işlevleri (örneğin, grafik çizme) ve veri işlemeyi (örneğin, farklı enstrümanların verilerinin senkronizasyonu) devre dışı bırakmanızı öneririm. Bu arada, bence, böyle bir Uzman Danışman yardımıyla bir dosyaya teklif yazmak daha kolay (ekli dosyada da var):

int h;
void OnInit()
  {
   string s;
   StringConcatenate(s,Symbol(),".txt");
   h=FileOpen(s,FILE_READ|FILE_WRITE|FILE_ANSI|FILE_SHARE_READ);
   FileSeek(h,0,SEEK_END);
  }

void OnTick()
  {
   string s;
   StringConcatenate(s,TimeCurrent(),"  ",DoubleToString(SymbolInfoDouble(Symbol(),SYMBOL_BID),_Digits)," ",DoubleToString(SymbolInfoDouble(Symbol(),SYMBOL_ASK),_Digits));
   FileWrite(h,s);
   FileFlush(h);
  }

void OnDeinit(const int reason)
  {
   FileClose(h);
  }
Dosyalar:
ticklog.mq5  1 kb
 

Harika makale, göstergeler için teşekkürler!

Tickindicator.mq5'i çalıştırırken bu sorunu yaşıyorum .

Göstergeyi derledim. Çalıştırdım.

Gösterge penceresi görünüyor. Hem minimum hem de maksimum büyük sayılara sahip bir ölçek var. Ve gösterge yatay çizgi boyunca hareket ediyor. Göstergenin minimum ve maksimum değerlerini sabitlemeyi denedim. Gösterge görünüyor, ancak teklifte bazı dikey çizgiler var.


 
denkir:

Harika makale, göstergeler için teşekkürler!

Tickindicator.mq5'i çalıştırırken bu sorunu yaşıyorum .

Göstergeyi derledim. Çalıştırdım.

Gösterge penceresi görünüyor. Hem minimum hem de maksimum büyük sayılara sahip bir ölçek var. Ve gösterge yatay çizgi boyunca hareket ediyor. Göstergenin minimum ve maksimum değerlerini sabitlemeyi denedim. Gösterge görünüyor, ancak teklifte bazı dikey çizgiler var.

Gösterge tamponundaki tüm değerleri başlatmak gerekir.

Büyük olasılıkla IMHO - koda bakmadım)

 

Bana bir şeyi nerede düzelteceğimi söyleyin.

M30'dan daha büyük zaman dilimlerinde ölçek vahşi sayılar göstermeye başlar.

 
fyords:

Bana bir şeyi nerede düzelteceğimi söyleyin.

M30'dan daha büyük zaman dilimlerinde ölçek vahşi sayılar göstermeye başlar.

Meslektaşım Dima_S 'nin önerdiği gibi, göstergeyi başlatırken tamponları bir şeyle doldurmaya değer.

Ve TickIndicator.mq5 koduna sahip olduğumuz için:

//+------------------------------------------------------------------+
//| OnInit() fonksiyonu|
//+------------------------------------------------------------------+
void OnInit()
  {
// BidBuffer[] dizisi bir gösterge tamponudur
   SetIndexBuffer(0,BidBuffer,INDICATOR_DATA);
// AskBuffer[] dizisi bir gösterge tamponudur
   SetIndexBuffer(1,AskBuffer,INDICATOR_DATA);
// Teklif çizgisinin sıfır değerleri çizilmez
   PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0);
// Ask çizgisinin sıfır değerleri çizilmez
   PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,0);
  }

Aşağıdaki satırları eklemek gerekir:

ArrayInitialize(BidBuffer,0);
ArrayInitialize(AskBuffer,0);
 
denkir:

Meslektaşım Dima_S 'nin önerdiği gibi, göstergeyi başlatırken tamponları bir şeyle doldurmaya değer. Ben de öyle yaptım:

ArrayInitialize(BidBuffer,EMPTY_VALUE);
ArrayInitialize(AskBuffer,EMPTY_VALUE);

Bunu yaptım, ama yardımcı olmadı.

ArrayInitialize(BidBuffer,0.0);
ArrayInitialize(AskBuffer,0.0);
Bu şekilde de.