MQL5'te acemi soruları. Profesyoneller geçmez. - sayfa 6

 
_o0O :

Ayrıca, hiçbiri değil, bu nedenle herhangi bir soruya açığız.

Kılavuzda bundan bahsedilmiyor. DRAW_NONE, #property veya PlotIndexSetInteger(0,PLOT_DRAW_TYPE,DRAW_NONE), PlotIndexSetString(0, PLOT_LABEL, "Buff") içinde çalışmaz, bu nedenle, clrNONE belirlemeye götüren mantık tam olarak nedir? amaçlanan amaç?

Ayrıca, herkes dille ilgili belgeleri nasıl okuyacağını bilmiyor.

Sunulan kod, kontrol etmek ve anlamak için her şeye sahiptir.

 
Alexey Viktorov :

Ayrıca, herkes dille ilgili belgeleri nasıl okuyacağını bilmiyor.

Sunulan kod, kontrol etmek ve anlamak için her şeye sahiptir.

Konuşmak ister misin?

TAMAM. Lütfen yardımda sorunumun çözümünün olduğu yeri gösterin. Ve kodunuz bir koltuk değneğidir, belgelenmemiş bir özelliktir, çünkü tamponun çizilmemesi için clrNONE belirtilmesi çılgınca görünür.

 
Alexey Viktorov :

Türü DRAV_NONE olarak değil, rengi clr_NONE olarak ayarlamak gereklidir.

İşte test kodu

Açıklamak:

 limit = rates_total-prev_calculated; // Это тупо для примера. В нормальном индикаторе так делать нельзя!

Neden? Neden kırmızı, ama bir ünlemle?

 
_o0O :

Bazı gösterge arabelleklerinin grafikte çizilmediğinden , değerlerinin " Veri Penceresi " gösterge penceresinde görüntülendiğinden nasıl emin olunur?

Bunu seviyorum:


ama yine de gösterge bir arabellek çizer.

Burada bir örnek görebilirsiniz:

3TF_RSI_Average
3TF_RSI_Average
  • www.mql5.com
Индикатор Three timeframes RSI Average - отображает в отдельном окне три индикатора Relative Strength Index с заданных таймфреймов и их среднее значение. Имеет десять настраиваемых параметров: RSI period - период расчёта RSIOverbought - уровень перекупленностиOversold - уровень перепроданностиDrawing mode - режим рисованияFirst RSI timeframe...
 
Artyom Trishkin :

Burada bir örnek görebilirsiniz:

hayır bu değil.

sizin örneğinizde, 4 arabellek çizilir ve 4 veri penceresinde . ancak çizilmemeleri gerekir, ancak aynı zamanda veri penceresinde olmaları ve belirli bir ada sahip olmaları gerekir.

 
_o0O :

hayır bu değil.

sizin örneğinizde, 4 arabellek çizilir ve 4 veri penceresinde . ancak çizilmemeleri gerekir, ancak aynı zamanda veri penceresinde olmaları ve belirli bir ada sahip olmaları gerekir.

Peki ya yakından bakarsanız? Ayrıca dört tampondan üçünün birer birer devre dışı bırakan bir görüntüsü vardır. Ancak devre dışı bırakıldığında, veri penceresinde ve programlı olarak belirtilen adlarla görüntülenmeye devam ederler - her şey istendiği gibi. Yoksa soruyu anlamadım?

 
Artyom Trishkin :

Peki ya yakından bakarsanız? Ayrıca dört tampondan üçünün birer birer devre dışı bırakan bir görüntüsü vardır. Ancak devre dışı bırakıldığında, veri penceresinde ve programlı olarak belirtilen adlarla görüntülenmeye devam ederler - her şey istendiği gibi. Yoksa soruyu anlamadım?

evet orada görüyorum

PlotIndexSetInteger (0,PLOT_DRAW_TYPE,InpShowRSI1);

InpShowRSI1, 0 veya 1 değerlerini alır, bu şekilde çalışır.

Ama ben PlotIndexSetInteger(0,PLOT_DRAW_TYPE, DRAW_NONE); ve işe yaramadı

 
_o0O :

evet orada görüyorum

PlotIndexSetInteger(0,PLOT_DRAW_TYPE,InpShowRSI1);

InpShowRSI1, 0 veya 1 değerlerini alır, bu şekilde çalışır.

Ama ben PlotIndexSetInteger(0,PLOT_DRAW_TYPE, DRAW_NONE); ve işe yaramadı

DRAW_NONE == 0

DRAW_LINE == 1

Yani bir yerlerde başka bir şeyiniz var. Teoride, her şey sizin için çalışmalı.

 
Artyom Trishkin :

Açıklamak:

Neden? Neden kırmızı, ama bir ünlemle?

Gösterge birkaç çubuğun hesaplanmasını içeriyorsa, böyle bir uygulama dizinin dışına uçacaktır. Bu nedenle, her durumda, başın kaslarını zorlamanız gerekir ...
 
Alexey Viktorov :
Gösterge birkaç çubuğun hesaplanmasını içeriyorsa, böyle bir uygulama dizinin dışına uçacaktır. Bu nedenle, her durumda, başın kaslarını zorlamanız gerekir ...

Hayır, teşekkürler. Limit>1 ile her şey bir kez yapılır. Bu, tarihin ilk lansmanı ve yüklenmesidir. Ve periyod_sm=10 yumuşatma işlemine sahipseniz, bu durumda limit 10'dan az olmalıdır. Buna göre, şöyle:

 if (limit> 1 )
  {
   limit=rates_total-period_sm- 1 ;
   ArrayInitialize (Buffer,InitValue);
  }

InitValue - arabelleği uygun şekilde - 0 veya EMPTY_VALUE ile başlatacak değer. Ya da belki -100500...

Neden: