Kodlama yardımı - sayfa 463

 
mrcodix:
Merhaba,

ArrayMaximum - MQL4 Belgeleri

Baktım ve bu fonksiyon dizideki tüm değerlerin en yüksek değerini döndürüyor gibi görünüyor. Aradığım şey, bir göstergenin bir zaman dilimi içinde ulaştığı en yüksek değeri size söyleyen bir fonksiyon. Bunu nasıl kaydedebilirim? Örneğin, X göstergesi en son çubuğu oluşturuyor. 3'ten 5'e 4'ten 7'ye gidiyor ve zaman çerçevesi kapandığında 2 değerinde bitiyor. Ulaştığı en yüksek değer 7'ydi. Bu değeri nasıl kaydedebilirim?

Bunu sizin için otomatik olarak yapacak bir işlev yok

Basitçe şöyle bir şey yapın:

int count = 0;

int hftbar = iBarShift(NULL,HigherTimeFrame,Time);

for (int k = 0; (i+k)<(Bars-1); k++)

if (iBarShift(NULL,HigherTimeFrame,Time)==hftbar)

count++;

else break;

(varsayım, ana döngünüzde i değişkenini kullandığınızdır)

Bu yürütüldükten sonra, sayım değişkeni, en yüksek veya en düşük en düşük için aramanız gereken ve hala daha yüksek zaman çerçevesi çubuklarına ait olan çubukların tam sayısına sahip olacaktır.

 
mladen:
Bunu sizin için otomatik olarak yapacak bir işlev yok

Basitçe şöyle bir şey yapın:

int count = 0;

int hftbar = iBarShift(NULL,HigherTimeFrame,Time);

for (int k = 0; (i+k)<(Bars-1); k++)

if (iBarShift(NULL,HigherTimeFrame,Time)==hftbar)

count++;

else break;

(varsayım, ana döngünüzde i değişkenini kullandığınızdır)

Bu yürütüldükten sonra, sayım değişkeni, en yüksek en yüksek veya en düşük en düşük için aramanız gereken ve hala daha yüksek zaman çerçevesi çubuklarına ait olan çubukların tam sayısına sahip olacaktır.

Merhaba,

HigherTimeFrame ile ne demek istiyorsunuz?

 
mrcodix:
Merhaba, HigherTimeFrame ile ne demek istiyorsunuz?

Buna "bir zaman aralığı çubuğu" dediniz. .

Geçerli zaman çerçevesi ise, en yüksek ve en düşük, yalnızca mevcut çubuğun değerleridir.

Yalnızca daha yüksek bir zaman dilimi çubuğuna ait çubukları arıyorsanız, bunu aramak mantıklıdır (örneğin, 15 dakikalık bir grafiktesiniz ve minimum veya maksimum 15 dakikanın ne olduğunu görmek istiyorsunuz). geçerli gün için şimdiye kadar ulaşılan gösterge değerleri)

 

Merhaba Mladen, bu göstergenin düz çizgilerini hareketli ortalama olarak yumuşak çizgilere dönüştürerek bu göstergeyi değiştirmenin mümkün olup olmadığını sormak istedi. pratikte bu gösterge, ona MA rahatsızlığı ile programlanıp programlanamayacağını sorduğum gösterge olarak çalışır, umarım her ikisi de bunu yapabilir

non_repainting_supertrend_alerts.mq4 [ATTACH]

 
morenokosta:
Merhaba Mladen, bu göstergenin düz çizgilerini hareketli ortalama olarak yumuşak çizgilere dönüştürerek bu göstergeyi değiştirmenin mümkün olup olmadığını sormak istedi. pratikte bu gösterge, ona MA rahatsızlığı ile programlanıp programlanamayacağını sorduğum gösterge olarak çalışır, umarım her ikisi de bunu yapabilir

non_repainting_supertrend_alerts.mq4 [ATTACH]

morenokosta

Süper trend trendleri doğrudan bu değerlere bağlı olduğu için yapılamaz. Bu değerleri değiştirmek, süper trend göstergesini az çok işe yaramaz hale getirecektir.

 
mladen:
morenokosta Süper trend trendleri doğrudan bu değerlere bağlı olduğu için yapılamaz. Bu değerleri değiştirmek, süper trend göstergesini az çok işe yaramaz hale getirecektir.

Oradan her şey yolunda değil.... ancak müsaitlik durumunuz için teşekkürler

 
morenokosta:
Oradan her şey yolunda değil.... ancak müsaitlik durumunuz için teşekkürler

morenokosta

Süper trendin "trendi" de grafikte gördüğümüz değerlere bağlıdır. Bu değerler değiştirilirse, süper trend "trend" değiştirilir - ve artık aynı olmayacak - orijinal süper trende kıyasla tüm farklı yerlerde trendler gösterecek.

 

Merhaba!

Yardım edebilir misin bilmiyorum ama bu harika olurdu!

EA için koşulları anlamaya çalışıyorum. Ama bollinger bantları ile kod yazarken bir tür problemle karşılaşıyorum.

EA'ya, tüm mum gövdesi bollinger üzerinden geçerse ticaretin yapılmasını istediğimi nasıl söyleyebilirim: bu, mumun her iki tarafı anlamına gelir.

Şu an için şartım var:

Kapat[0]>bantlar(0,0)+Above_Below_Range*P*Point

Ne yazık ki, böyle olduğunda ticareti alır:

Tüm vücut şu şekilde dışarıdayken takası yapmasını istiyorum:

Herhangi bir çözüm?

teşekkürler

Dosyalar:
 

Merhaba

Bu indi'yi buldum ve ihtiyaçlarıma uyacak şekilde değiştirdim.

Lütfen, örneğin CAD içeren tüm döviz çiftleri için çizelgeleri açmak için bir giriş kutusu koyabileceğimi/nasıl koyabileceğimi söyleyin.

Değilse, içine bir çift yüklemem için bir giriş kutusu ve ardından çizelgeleri açın.

Zaman ayırdığınız için teşekkür ederim,

Darren

string şablon_ = "DCC";

//

OnStart() geçersiz

{

//

uzun numara;

nr = ChartOpen(Symbol(),1440);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),240);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),60);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),15);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),5);

ChartApplyTemplate(nr,şablon_);

//

}

 
DCC66:
Merhaba

Bu indi'yi buldum ve ihtiyaçlarıma uyacak şekilde değiştirdim.

Lütfen, örneğin CAD içeren tüm döviz çiftleri için çizelgeleri açmak için bir giriş kutusu koyabileceğimi/nasıl koyabileceğimi söyleyin.

Değilse, içine bir çift yüklemem için bir giriş kutusu ve ardından çizelgeleri açın.

Zaman ayırdığınız için teşekkür ederim,

Darren

string şablon_ = "DCC";

//

OnStart() geçersiz

{

//

uzun numara;

nr = ChartOpen(Symbol(),1440);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),240);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),60);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),15);

ChartApplyTemplate(nr,şablon_);

nr = ChartOpen(Symbol(),5);

ChartApplyTemplate(nr,şablon_);

//

}

İlk önce adında "CAD" içeren sembolleri kontrol etmeniz gerekir.

Bunun için bu göstergeden gelen kodu kullanabilirsiniz: https://www.mql5.com/en/forum/173060/page118

Neden: