"Yeni Başlayanlar için MQL5’te Uzman Danışman Yazmak İçin Adım Adım Açıklamalı Kılavuz" makalesi için tartışma - sayfa 17
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
Dosyayı indirdim ve kodda hata ayıkladım ve bu uyarıyı gösterdi birisi bana bu konuda yardımcı olabilir mi?
'OrderSend' in dönüş değeri kontrol edilmeli
Merhaba, ben bir acemiyim ve ben de Robotu test ediyorum
Bunu deneyin:
// OrderSend(mrequest,mresult);
bool res=OrderSend(mrequest,mresult);
// sonuç kodunu al
if(res && (mresult.retcode==10009 || mresult.retcode==10008)) //Request tamamlandı veya sipariş verildi
{
Alert("A Buy order has been successfully placed with Ticket#:",mresult.order,"!!");
}
başka
{
Alert("Satın alma emri talebi tamamlanamadı -hata:",GetLastError());
ResetLastError();
geri dön;
}
Eğer yanılıyorsam, lütfen beni düzeltin!
Araştırma kaynağı: https://www.mql5.com/en/forum/23663
Hata ayıklama yaparken, siparişi gönderdiğimde her zaman bir hata alıyorum. Kodumdan kaynaklandığını düşündüm, ancak mql5 dosyasını indirmek için test ettiğimde bile bana hata veriyor.
Hata ayıklama yaparken, siparişi gönderdiğimde her zaman bir hata alıyorum. Kodumdan kaynaklandığını düşündüm, ancak mql5 dosyasını indirmek için test ettiğimde bile bana bir hata veriyor.
Sanırım örnek para birimlerinde, bu yüzden 0.1 olan lot değişkeni testiniz için uygun değil, şu şekilde değiştirmeyi deneyin (mrequest.volume değişkenini değiştirerek):
double minSymbolLot = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);
mrequest.action = TRADE_ACTION_DEAL; // anında emir gerçekleştirme
mrequest.price = NormalizeDouble(latest_price.ask,_Digits); // en son satış fiyatı
mrequest.sl = NormaliseDouble(latest_price.ask - STP*_Point,_Digits); // Zararı Durdur
mrequest.tp = NormaliseDouble(latest_price.ask + TKP*_Point,_Digits); // Kar Al
mrequest.symbol = _Symbol; // para birimi çifti
mrequest.volume = minSymbolLot; // işlem yapılacak lot sayısı
mrequest.magic = EA_Magic; // Sipariş Sihir Numarası
mrequest.type = ORDER_TYPE_BUY; // Satın Alma Emri
mrequest.type_filling = ORDER_FILLING_FOK; // Sipariş yürütme türü
mrequest.deviation=100;
Bu EA'yı mini endeksler veya mini dolarlar için kullanıp kullanamayacağımı bilen var mı?
Stratejiyi anladınız mı? Risklerin farkında mısınız? SL ve TP seviyelerini analiz ettiniz mi? Kullanılan teknik göstergeleri biliyor musunuz? Bunları nasıl parametrelendireceğinizi biliyor musunuz? Her varlık için değişkenleri nasıl özelleştireceğinizi biliyor musunuz (WIN ve WDO)?
Kodun kendisi herhangi bir varlık için geliştirilmiştir ve bunu "_Symbol" ve herhangi bir grafik zamanı için "_Period" aracılığıyla tanımlayabilirsiniz.
Şimdi EA'yı çalıştırdığınızda ne yaptığınızı bilmeniz önemlidir. Bunu yapmayı seçerseniz, araca hakim olana ve borsayı daha iyi anlayana kadar yalnızca demo hesaplar üzerinde çalışmanızı öneririm.
[ ]'s
Beyler,
Aynı anda birden fazla siparişin açılmasıyla ilgili bir hata yaşıyorsanız, bu basit ve hızlı bir şekilde değiştirilmiş bir koddur.
Bu kodu değiştirin: 167 -177 satırından
bununla:
Teşekkürler @Samuel Olowoyo
Lütfen sorunun nasıl çözüleceğini tavsiye edin. Uzman Danışman, satın almak için arka arkaya birkaç pozisyon açar, aynı şey satış için de geçerlidir.
Uzman Danışman, kodda bir kontrol olmasına rağmen, halihazırda açık Alış ve Satış pozisyonları olduğunu görmez ve yenilerini açar.
zaten açık olan pozisyonlar için. Kontrol bazı nedenlerden dolayı çalışmıyor.
Buradaki trol moderatörlerden yardım gelmediği için cevabı İngilizce forumdan kopyalayacağım:
Arkadaşlar, aynı anda açılan birkaç emirle ilgili bir hatanız varsa, bu basit, hızlı değiştirilebilir bir koddur. Bu kodu değiştirin: satır 167'den -177'ye
Bununla:
Buradaki trol moderatörlerden yardım alamadığım için cevabı İngilizce forumdan kopyalayacağım:
Arkadaşlar, aynı anda birden fazla siparişin açılmasıyla ilgili bir hata yaşıyorsanız, bu basit ve hızlı bir şekilde değiştirilebilir bir koddur. Bu kodu değiştirin: satır 167'den -177'ye
Bununla: