"Çok Sayıda Enstrüman Üzerinde Alım Satım Yapan bir Expert Advisor Oluşturma" makalesi için tartışma - sayfa 2

Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Zamanlayıcı olmadan MQL4'te her şey iyi çalışıyor.
Peki, MQL4'te yok, ayrıca yapılar ve sınıflar da orada yok, onları burada terk etmeyi mi öneriyorsunuz?
IMHO
Standart kütüphaneyi kullanmak ya da kullanmamak herkesin zevkine kalmış bir şey (en kötü ihtimalle sadece kendi kodunuzu kullanabilirsiniz) ama sırf MT4'te yok diye tüm avantajlardan vazgeçmek pek makul değil.....
Ben bunun hakkında hiç yazmadım.
MQL5'in hatalı olduğunu ve belirli enstrüman kombinasyonlarında hatalı veriler ürettiğini yazdım.
Örneğin: EURUSD grafiğinin üzerine EURJPY veya EURGBP yerleştirilirse, her şey yolunda.
Ancak EURCAD'i üst üste bindirirseniz, grafikteki veriler hatalı olurken, MQL4'te böyle bir hata yoktu.
Ben bu konuda hiç yazmadım.
MQL5'in belirli enstrüman kombinasyonlarında hata verdiğini ve hatalı veriler ürettiğini yazdım.
Örneğin: EURUSD grafiğinin üzerine EURJPY veya EURGBP yerleştirilirse, her şey normaldir.
Ancak EURCAD'i üst üste bindirirseniz, grafikteki veriler bir hata ile, MQL4'te durum böyle değildi, hata yok.
Ben bu konuda hiç yazmadım.
MQL5'in belirli enstrüman kombinasyonlarında hata verdiğini ve hatalı veriler ürettiğini yazdım.
Örneğin: EURUSD grafiğinin üzerine EURJPY veya EURGBP yerleştirilirse, her şey normaldir.
Ancak EURCAD'i üst üste bindirirseniz, grafikteki veriler bir hata ile, MQL4'te durum böyle değildi, hata yok.
Lütfen bana hatalı bir örnek verin.
//--------- MQL4 ile seçenek ---------
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Aqua
extern string InstrumentName = "EURCAD";
double Buffer[];
SetIndexBuffer(0,Buffer); // Diziyi tampona ata
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Çizgi stili
while(i >= 0){//-- Sağdan sola doğru hareket (yani en yüksekten hala oluşmakta olan 0 barına doğru) --
Buffer[i] = (iHigh(InstrumentName,0,i) + iClose(InstrumentName,0,i) + iLow(InstrumentName,0,i)) / 3;
i--;//-- next Bar
}//next (while)
//----------- Şimdi MQL5'te neredeyse aynı varyant --------
#property indicator_separate_window // Indic. ayrı bir pencerede çizilir
#property indicator_buffers 1
#property indicator_plots 1
#property indicator_type1 DRAW_LINE
#property indicator_color1 Aqua
input string InstrumentName = "EURCAD";
double Buffer[];
int handle1;
copied=CopyClose(InstrumentName,0,0,CountBars,Buffer);
//--Şimdi EURUSD üzerine atıyoruz.
//--Göstergeyi hangi enstrümana yerleştirdiğimiz önemli değil, grafik değişmemelidir.
Lütfen kodu doğru bir şekilde ekleyin, anlaşılmasını kolaylaştırır.
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Aqua
extern string InstrumentName = "EURCAD";
double Buffer[];
int init()
{
SetIndexBuffer(0,Buffer); // Diziyi tampona ata
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Çizgi stili
}
int start()
{
while(i >= 0){
Buffer[i] = (iHigh(InstrumentName,0,i) + iClose(InstrumentName,0,i) + iLow(InstrumentName,0,i)) / 3;
i--;//-- next Bar
}//next (while)
}
//----------- Şimdi MQL5'te neredeyse aynı varyant --------
#property indicator_separate_window // Indic. ayrı bir pencerede çizilir
#property indicator_buffers 1
#property indicator_plots 1
#property indicator_type1 DRAW_LINE
#property indicator_color1 Aqua
input string InstrumentName = "EURCAD";
double Buffer[];
int OnInit()
{
IndicatorSetString(INDICATOR_SHORTNAME,InstrumentName);
SetIndexBuffer(0,Buffer,INDICATOR_DATA);
}
int OnCalculate(....)
{
copied=CopyClose(InstrumentName,0,0,0,CountBars,Buffer);
}
//--Şimdi EURUSD üzerine atıyoruz.
//--İndikatörü hangi enstrüman üzerine yerleştirdiğimiz önemli değil, grafik değişmemeli.
Lütfen tekrarlanabilir bir örnek yapın. Yani, derleyebileceğiniz, bir grafiğe atabileceğiniz ve sonuç alabileceğiniz hazır bir koda ihtiyacınız var.
Bu olmadan, çok az insan neden bahsettiğimizi anlayacaktır.Bilinçten yoksun olanlara yardım edeceğim.
İdeal olarak olmaması gerekir, ancak algoritmalarla gıcırdatıyorum, sadece 1 TF'de göründü, diğerlerinde kategorik olarak boşluk gösterdi .....
bir saatlik testten sonra bile.....
ve geçmişi yükleme girişimleri