Hey millet!
Bu açıkçası tüm kod değil, ama bu benim saçımı çektiğim ana kısım. Lütfen kodu "<<<<<<<<<<<<<" ile kontrol edin. Bunlar benim kafamı karıştıran noktalar.
Teşekkürler RaptorUK - Mümkün olan en nazik şekilde, bu bana hiçbir şeyi açıklamıyor mu? Meslekten olmayanların terimleriyle mi?
Bu, işlevlerin tanımlarını tekrar etmekten başka birinin gerçekten bana yardım edebileceği bir forum mu ("yardım" bölümünden 100'lerce kez okudum ...)
Ne de olsa, sorduğum şeyin (buradaki bazı konulara kıyasla!) birinin zamanı için ücret talep etmesini sağlamak için yeterli olduğunu hissetmiyorum...?
Meslekten olmayanların terimlerini çevirmek, bugün, bir kez, bu özel konuda size yardımcı olacaktır.. ve açıklayıcı için biraz zaman ayırın.
Tanımlardan hangilerini anlamadığınızı söylerseniz, belki bir dahaki sefere kendi problemlerinizi çözebilirsiniz ve bir süre sonra başkalarının problemlerini çözenlerden biri olabilirsiniz.
Sorunu kendiniz dener ve araştırırsanız, daha fazlasını da öğreneceksiniz. Örneğin, şunu deneyin:
Alert (iHighest( Symbol (), 0 , MODE_HIGH, iBarShift( Symbol (), 0 , triggerBarTime, true ), 0 ));
ve işlev tarafından hangi değerin döndürüldüğünü göreceksiniz ... (Raptor'un dediği gibi, bu bir fiyat değil) ve muhtemelen işlevin tanımını daha kolay anlayacaksınız.
Bunun gibi şeyler, tahtadaki birinin kodunuzu test etmek ve kendiniz için nasıl yapacağınızı öğrenmeniz gereken aynı sorun giderme işlemlerini yapmak için zamanı olduğunu ummaktan daha fazla yardımcı olacaktır.
Ha? Kafam çok karıştı - Çok fazla yardım mı istiyorum?
Sonuçta, tüm EA'mı sıfırdan oluşturdum (ki bunu kendime öğrettim...) Sadece benden daha fazla bilgisi olan birinden rehberlik istiyorum... :s
" Bunun gibi şeyler, tahtadaki birinin kodunuzu test etmek ve kendi başınıza nasıl yapacağınızı öğrenmeniz gereken sorun giderme işlemlerini yapmak için zamanı olduğunu ummaktan daha fazla yardımcı olacaktır."
Ne oluyor... Bunu kimseden beklemiyordum!?
Gönderiniz duruma daha fazla ışık tuttu - Takdir edin.
Bu forum gerçekten çok komik... Kimseden ücretsiz yükleme yapmayı planlamıyordum! Sadece EMA'nın çizgisiyle kesişen çubuğu nasıl doğru bir şekilde tanımladığım konusunda biraz açıklama istedim...
Tanrım...
raptor'un cevabını okuduğumda, size yaptığınız sorunu tam olarak anlatıyor.
fiyatlar çift değişken olarak saklanır, örneğin 1.12345
iHighest işlevleri bir tamsayı (i nt ) döndürür, örneğin 1 veya 2 veya -100 .... açıkça bir fiyat değil.
Neyi başarmaya çalıştığınızı bilmiyorum ama iHighest işlevi muhtemelen kullanmak istediğiniz işlev değil.
Meta düzenleyicide, kodunuzdaki iHighest'e tıklarsanız, ardından F1'e basarsanız, bunu kendiniz keşfederdiniz...
Kafa karıştıran şeyin kaynağını bilmiyorum. int ve double değişkenleri arasındaki farkı bilmiyorsanız, bazı hayati temel bilgileri kaçırıyorsunuz, yani yürümeden önce koşmaya çalışıyorsunuz ve başka birinin sizi taşımasını istiyorsunuz :/
EDIT: Başka birine sormadan önce kendi sorun gidermenizi yapmanız gerektiğini beklemiyordunuz ?!?
Birden fazla hareketli ortalama aynı anda kesişmez .
Neden çift mesaj atıyorsun? Sorunuz daha önce cevaplandı .
Hepsinin uygun sırayla bulunduğu en eski çubuğu bulun.
int DIR = 0 ; for ( int iBar = 0 ; iBar < Bar; iBar++){ double MA20 = ... iBar), MA5 = ... iBar); : if ( MA20 > MA5 && MA5 > ...) DIR = - 1 ; else if (MA20 < MA5 && MA5 < ...) DIR = + 1 ; // All fanning up. else if (DIR != 0 ){ iBar--; break ; } // Last one was cross. }
int ve double arasındaki farkı anlıyorum ...
If ifadelerinden sonra, MA'ların aralıklı olduğu noktada kesişen çubuğu bulmak istiyorum. Kullanırsam düşündüm:
"triggerBarTime = Zaman[1];" - "If" ifadelerinden sonra, ilgilendiğim aralığın ilk çubuğunu kilitlemek için iBarShift ile birlikte triggerBarTime kullanılabilir mi?
Ardından, iHighest'i kullanmak, bu bilgiyi bir int'ye dönüştürmeme ve onu sipariş fonksiyonumda kullanmama izin verir mi? (Buy_Fiyat)?
int ve double arasındaki farkı anlayabilirsiniz, ancak çubuk numarası (int) ile fiyat (double) arasındaki farkı anlamıyorsunuz.
iHighest, tarih saatinizi bir çubuk numarasına (int.) dönüştürmenize izin verir, ancak OrderSend yalnızca bir fiyat alır (iki katı) 9'da bir emir açmanın bir anlamı yoktur.
Ah! Anladım!
Çok teşekkür ederim :) Gerçekten minnettarım!
Bana karşı sabırlı olduğun için teşekkürler - kimsenin benim için bir şey yapmasını bekleyecek şekilde karşılaşmak istemedim; Yardım konusunda bana biraz açıklama yapmak (her şeyde F1'e basmak benim için her zaman o kadar net olmuyor.) tek istediğim buydu.
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hey millet!
Kodumla ilgili biraz yardım umuyordum - Şu anda bu lanet olası kısımda takılıp kaldım!
Aşağıdaki koda yazmaya çalıştığım süreç bu:
1) Tüm MA'lar "yavaşlıyor" ve fiyatın tüm hareketli ortalamaların üzerinde olması ve uzun bir potansiyele işaret etmesi için çarpılıyorsa.
2) Daha sonra, hareketli ortalamaların hareketli ortalamaların çaprazında "havalandırıldığı" tam çubuğu (Zaman kullanarak) bilmek istiyorum.
3) 1 ve 2 doğruysa, herhangi bir çubuğun geri gelmesini beklerim (uzun bir pozisyon olması durumunda) ve 21 EMA'ya dokunurum.
4) İlk Çubuk'tan (MA'nın çarpıp yelpazelendiği) şimdi 21 EMA'ya dokunan çubuğa kadar - Bekleyen bir emir istiyorum VEYA bu aralığın en yükseğinin (1 ve 3) YUKARIDA yer alan piyasa ticaretinde.
5) Herhangi bir noktada fiyat 60 EMA'nın altında KAPANIRsa, emri tetiklemeden ÖNCE - o zaman emir iptal edilmelidir.
Bu açıkçası tüm kod değil, ama bu benim saçımı çektiğim ana kısım. Lütfen kodu "<<<<<<<<<<<<<" ile kontrol edin. Bunlar benim kafamı karıştıran noktalar.
GERÇEKTEN birinin yardımıyla yapabilirdim - gerçekten çok memnun olurum!
Şimdiden çok teşekkürler!