Sormak! - sayfa 163

 
jizhong68:
Sevgili Guru,

İki boyutlu bir dizi kullanıyorum, diyelim ki ZigZag[2][100]. ve ilk boyuta göre sıralamak istiyorum. Aşağıdaki işlevi kullanıyorum:

ArraySort(ZigZag,WHOLE_ARRAY,0,MODE_DESCEND);

ama ne birinci boyuta göre ne de ikinci boyuta göre sıralanmış gibi görünüyor. burada bana yardım edebilecek kimse var mı?

Çok teşekkürler

MQL belgeleri, ArraySort'un birinci boyuta göre sıraladığını belirtir, eğer doğru sonuçları almıyorsanız, dizinin giriş ve çıkışını gönderin.

Basit bir hızlı sıralama işlevi yazmak çok fazla zaman almaz. Yeni bir dizi oluşturun, sıralanan sonuçları saklayın, ardından ZigZag'i aramak ve ikinci boyutu kopyalamak için bir for döngüsü yapın. Verimsiz, muhtemelen, ama işi yapıyor.

 

işte kod

beckham.is.619:
MQL belgeleri, ArraySort'un birinci boyuta göre sıraladığını belirtir, eğer doğru sonuçları almıyorsanız, dizinin giriş ve çıkışını gönderin. Basit bir hızlı sıralama işlevi yazmak çok fazla zaman almaz. Yeni bir dizi oluşturun, sıralanan sonuçları saklayın, ardından ZigZag'i aramak ve ikinci boyutu kopyalamak için bir for döngüsü yapın. Verimsiz, muhtemelen, ama işi yapıyor.

Cevabın için teşekkürler.

Destek ve direnç çizgilerini bir grafikte hesaplamak ve görüntülemek istiyorum. algoritması, geçmişte 100 ZigZag bul ve her ZigZag'ın ağırlığını say. Her bir ZigZag'ın ağırlığı nasıl hesaplanır? Her bir ZigZag için, değeri bu belirli ZigZag'a 5 puan yakın olan diğer ZigZag'ların miktarını bulmak için tüm diziyi aramaya çalışırım, örneğin, belirli bir ZigZag 1.5000 ise, o zaman diğer tüm ZigZag'ları bulmak istiyorum. bu iki ZigZag arasındaki mesafe 5 Puan dahilindedir, eğer öyleyse, bu belirli ZigZag'a 1 sayı ekliyorum ve bunu 100 ZigZag'ın tamamı için yapıyorum.

Bunu bitirdiğimde, tüm bu ZigZag'ları karşı boyuta göre sıralamaya çalışıyorum. göstergede bulabileceğiniz gibi. ama ArraySort(0 fonksiyonu çalıştırıldı) öncesi ve sonrası değeri yazdırarak çok denedim.

Referans için göstergeyi gönderiyorum.

Şimdiden teşekkürler.

İşte Göstergenin kodu:

//+------------------------------------------- -------------------+

//| Risisstance ve Support.mq4 |

//| Telif hakkı ?200 |

//+------------------------------------------- -------------------+

#özellik telif hakkı "Telif hakkı ?2006, Nick Bilak"

// bir kanal ind'ye hacklendi. t_david tarafından 2007'nin başlarında

#özellik göstergesi_chart_window

dış int Boşluk = 5;

dış int Derinlik = 24;

dış int Sapma=5;

harici int BackStep=3;

harici int GeriBaşlangıç=288;

int ZigN=100;

çift ZigZag[2][100];

int Gösteri Çubukları = 500;

int uzak=24;

int init() {

dönüş(0);

}

int start() {

int k,i,j,limit,hhb,llb;

int counted_bars=IndicatorCounted();

//---- son sayılan çubuk yeniden sayılacak

if(counted_bars>0) counted_bars--;

ShowBars=Barlar-sayılan_barlar;

FindZigZag();

DirençSupport();

// for(i=0;i<10;i++)

{

// ObjectDelete("P_Line");

// ObjectCreate("P_Line", OBJ_HLINE,0, CurTime(),Close[0]);

ObjectDelete("RS0");

ObjectCreate("RS0",OBJ_HLINE,0,CurTime(),ZigZag[1][0]);

ObjectDelete("RS1");

ObjectCreate("RS1",OBJ_HLINE,0,CurTime(),ZigZag[1][1]);

ObjectDelete("RS2");

ObjectCreate("RS2",OBJ_HLINE,0,CurTime(),ZigZag[1][2]);

ObjectDelete("RS3");

ObjectCreate("RS3",OBJ_HLINE,0,CurTime(),ZigZag[1][3]);

ObjectDelete("RS4");

ObjectCreate("RS4",OBJ_HLINE,0,CurTime(),ZigZag[1][4]);

ObjectDelete("RS5");

ObjectCreate("RS5",OBJ_HLINE,0,CurTime(),ZigZag[1][5]);

ObjectDelete("RS6");

ObjectCreate("RS6",OBJ_HLINE,0,CurTime(),ZigZag[1][6]);

ObjectDelete("RS7");

ObjectCreate("RS7",OBJ_HLINE,0,CurTime(),ZigZag[1][7]);

ObjectDelete("RS8");

ObjectCreate("RS8",OBJ_HLINE,0,CurTime(),ZigZag[1][8]);

ObjectDelete("RS9");

ObjectCreate("RS9",OBJ_HLINE,0,CurTime(),ZigZag[1][9]);

}

// if (ShowBars >= Barlar) ShowBars = Barlar;

/*

for (i=0;i<ShowBars;i++) {

b1=0;

b2=0;

b3=0;

b4=0;

b5=0;

b6=0;

b8=0;

hhb = iEn Yüksek(Symbol(),0,MODE_HIGH,dist,i-dist/2);

llb = iLowest(Symbol(),0,MODE_LOW,dist,i-dist/2);

eğer (i==hhb)

b3=Yüksek+SinyalGap*Nokta;

eğer (i==llb)

b4=Düşük[llb]-SignalGap*Nokta;

b1=Yüksek;//+SinyalGap*Noktası;

b2=Düşük[llb];//-SinyalGap*Noktası;

}

*/

dönüş(0);

}

//on ZigZag'ı bul,

geçersiz FindZigZag()

{

int i=GeriBaşlangıç;

int ii=0;

int m=0;

int n=0;

while(ii<ZigN)

{

if(iCustom(NULL,0,"zikzak",Derinlik,Sapma,BackStep,0,i)>0.1) //1=Yüksek

{

ZigZag[0]=0;

ZigZag[1]=iCustom(NULL,0,"zikzak",Derinlik,Sapma,BackStep,0,i);

// Print("ZigZag: ",ZigZag[1]);

ii++;

}

ben++;

}

}

// Direnç ve Destek Bul

Void ResistanceSupport()

{

int i,n;

for(i=0;i<ZigN;i++)

{

for(n=0;n<ZigN;n++)

{

if(MathAbs(ZigZag[1]-ZigZag[1][n])<Nokta*Boşluk)

{

ZigZag[0]++;

}

// Print(i+":ZigNumber: "+ZigZag[0]+" ZigZag: "+ZigZag[1]);

}

// Yazdır("Bitir");

}

ArraySort(ZigZag, WHOLE_ARRAY ,0,MODE_DESCEND);

for(i=0;i<ZigN;i++)

{

// Print(i+":ZigNumber: "+ZigZag[0]+" ZigZag: "+ZigZag[1]);

}

// Yazdır("Bitir");

}

 

Ona MQL4 için bir soru sorabilir miyim?

Berlin'den merhaba,

Bu forumda yeniyim ve Kodlayıcıların gurusunun MQL4 Kursunu okudum. Öğrettiğiniz için çok teşekkürler! Şimdi kolay programlar denemek istiyorum ve çoktan başarısız oldum MA-çizgisi neden ana çizelgemde gösterilmiyor? Yardımın için teşekkürler.

#özellik göstergesi_chart_window

#özellik göstergesi_renk1 Kırmızı

harici int Dönem_MA = 21;

bool Fact_Up = doğru;

bool Fact_Dn = doğru;

int başlangıç()

{

çift MA;

MA=iMA(NULL,0,Period_MA,0,MODE_SMA,PRICE_CLOSE,0);

if (Teklif > MA && Fact_Up == doğru)

{

Fact_Dn = doğru;

Fact_Up = yanlış;

Alert("Fiyat MA'nın üzerindedir(",Period_MA,").");

}

if (Teklif < MA && Fact_Dn == doğru)

{

Fact_Up = doğru;

Fact_Dn = yanlış;

Alert("Fiyat MA'nın altında(",Period_MA,").");

}

dönüş(0);

}

 

Merhaba,

Özel bir gösterge için bir fikir üzerinde çalışıyorum. Bunun bir komut dosyasında mümkün olup olmadığını bilmem gerekiyor:

MT4, herhangi bir zamanda faremin altında hangi mumun olduğunu tanıyabilir mi? Bu yüzden, belirli bir mumun (fareyi üzerine tıklayarak veya üzerine getirerek seçtiğim) açılışında veya kapanışında yatay bir çizgi çizmek istiyorum, bu mümkün mü?

Bununla ilgili herhangi bir bilgi bulamadım.

Çok yardımcı olur, teşekkürler!

 

EA'lar için sipariş/işlem yöneticisi

Merhaba,

EA'lar için sipariş/işlem yönetimi için bir MQ4 kitaplığına aşina olan var mı? Esas olarak aşağıdaki iki işlevle ilgileniyorum:

1. Sanal stop emirlerinin yerleştirilmesi: Stop emri ile uygulanan OrderSend(...) yerine aynı parametrelerle MyOrderSend(...)'i kullanırsınız ve yönetici fiyat ve yer takibi yaparken her şeyle ilgilenir. fiyat durağa dokunduğunda piyasa emri.

Bunun asıl amacı gereksiz STOPLEVEL yükünün üstesinden gelmek ama aynı zamanda "gölge" emirlere de izin verecek.

2. Yönetici, bekleyen, yürütülen ve sonlandırılan siparişlerin durumunu ve istatistiklerini toplayacaktır. Bu bilgiyi kullanarak, süslü MM stratejileri ve fantezi durdurma stratejileri uygulayabilirsiniz (örneğin, canlı bir pozisyonun para kazanma sayısı, kâr koruma veya durdurma mekanizmaları için kullanılabilir).

Bir süredir etrafta arama yaptım, bu yüzden böyle bir kitaplığın bütünüyle var olmasını beklemiyorum, ancak kısmi çözümlere ve ilgili kod parçacıklarına aşina iseniz bu harika olacak.

Şerefe,

trend

 

EA'lar için sipariş/işlem yöneticisi

Az önce, korunan pozisyonlara izin vermek için mql5'te çok güzel bir sipariş yöneticisinin geliştirildiğini buldum. paulsfxrandomwalk blogspot'a bakın (henüz bağlantı göndermeye izin verilmedi).

Tam değil ama çok güzel bir kod parçası.

C++ OOP kodunu son derece sınırlı mql4'e düşürmesi gerektiğinden, onu mql4'e çevirmek kolay olmamalı, ancak yine de mümkün olmalıdır. Büyük bir israf gibi görünüyor

Bu yüzden bağlantılarınız için çağrım hala devam ediyor...

 

MA Çizgileri Grafikte

ssh95:
Berlin'den merhaba,

Bu forumda yeniyim ve Kodlayıcıların gurusunun MQL4 Kursunu okudum. Öğrettiğiniz için çok teşekkürler! Şimdi kolay programlar denemek istiyorum ve çoktan başarısız oldum MA-çizgisi neden ana çizelgemde gösterilmiyor? Yardımın için teşekkürler.

#özellik göstergesi_chart_window

#özellik göstergesi_renk1 Kırmızı

harici int Dönem_MA = 21;

bool Fact_Up = doğru;

bool Fact_Dn = doğru;

int başlangıç()

{

çift MA;

MA=iMA(NULL,0,Period_MA,0,MODE_SMA,PRICE_CLOSE,0);

if (Teklif > MA && Fact_Up == doğru)

{

Fact_Dn = doğru;

Fact_Up = yanlış;

Alert("Fiyat MA'nın üzerindedir(",Period_MA,").");

}

if (Teklif < MA && Fact_Dn == doğru)

{

Fact_Up = doğru;

Fact_Dn = yanlış;

Alert("Fiyat MA'nın altında(",Period_MA,").");

}

dönüş(0);

}

Merhaba Berliner,

Grafikteki MA çizgilerini çizme rutinleri yukarıdaki kodunuzdan eksik görünüyor.

Çizelgede MA çizgilerini nasıl çizeceğinizi öğrenmek için koda bakabileceğiniz birçok iyi MA göstergesi örneği için bu TSD Forumunda hızlı bir arama yapın.

İyi şanslar... ve öğrenmeye devam edin!

Robert

 

MTF göstergesinde yenileme sorunu

Merhaba,

Bu gösterge hakkında yardıma ihtiyacım var. MTF MACD eğimi, ancak yenilemede bir sorunu var, düzeltmek için TF'yi değiştirmem gerekiyor.

Zaten değiştirmeyi dene

limit=Barlar-sayılan_barlar; to limit=Bars-counted_bars/Period();

ve ayrıca Refreshrates();

sonuç olmadan.

Üzgünüm, kodu .mql içine yüklemem gerekiyor, php etiketini kullanarak yüklemeyi deneyin ama çok uzun.

Resmi MTF konusuna da yüklüyorum

Arkadaşlar önce teşekkürler.

Dosyalar:
 
codersguru:
Merhaba millet,

Bazı kod parçalarına yardım etmemi isteyen çok sayıda özel mesajım var.

MQL4 ile ilgili sorularınızı buraya yazabilirsiniz, ben de cevaplamak için elimden geleni yapacağım.

kodlargurusu,

Programlama hakkında hiç bilgim yok. Ve bu execute_line indi'ye alarm ve uyarı (harici gösterge olarak) koyarak bana yardım etmenize ihtiyacım var.

Şimdiden teşekkür ederim.

Şerefe, Terry

Dosyalar:
 

Waddah Attar kafa derisi soyma

Merhaba!

Scalping odaklı ilginç bir gösterge buldum.

Geri test etmek istiyorum ama birkaç gün sonra herhangi bir çubuk yazdırmıyor.

Lütfen birkaç bin çubuk yazdırmak için kodda nelerin düzenlenmesi gerektiğini görebilir misiniz? Meta düzenleyicide bir sayı yazma seçeneği varsa lütfen bana söyleyin. bir şey bulamadım.

zaman ayırdığınız için teşekkürler

Xander

waddah_attar_scalping.ex4

waddah_attar_scalping.mq4

Neden: