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
Ve yine - kod .. kod .. Kod iyidir .. ama aynı zamanda - taktikler, döngüler .. ;)
Peki, grafik yeni bir çubuğun oluşturulması hakkında bir mesaj almıyor mu? hayata inanmıyorum..
Bundan bir olay çıkarmak sorunlu mu? ve en azından önceden belirlenmiş bir değişken?
Ve genel olarak - olayları işlemek, kod dağlarını sarmaktan daha kolaydır .. Ve ayrıca - hatalarla (HATASIZ PROGRAMLAR - GERÇEKLEŞMEYİN!!!)))))
Yeni bir çubuğun bir olay olduğu ve burada olabileceği (ve programlanması gerektiği) konusunda kesinlikle size katılıyorum. uzun yıllar kafa patlatmak...
ZY Sanırım okuduktan sonra, yeni çubuğun TÜMÜNDE görünmeyebileceği sizin için netleşecek ... bir delik ...
Ve yine - kod .. kod .. Kod iyidir .. ama aynı zamanda - taktikler, döngüler .. ;)
Peki, grafik yeni bir çubuğun oluşturulması hakkında bir mesaj almıyor mu? hayata inanmıyorum..
Bundan bir olay çıkarmak sorunlu mu? ve en azından önceden belirlenmiş bir değişken?
Ve genel olarak - olayları işlemek, kod dağlarını sarmaktan daha kolaydır .. Ve ayrıca - hatalarla (HATASIZ PROGRAMLAR - YAPMAYIN!!!)))))
Test ederken hata veriyor
CTrade::PositionClose::OrderCheck: Geçersiz durdurma isteği
Danışmanın böyle hatları var
değişkenlerin beyanı (prosedürde)
CTrade m_trade;
.................
pozisyonu kapat
m_trade.PositionClose(_Symbol, eSlippage);
neden burada bir hata var? CTrade::PositionClose::OrderCheck: Geçersiz durdurma isteği
yanlış SL ve/veya TP
TRADE_RETCODE_INVALID_STOPS
bir pozisyonu kapatırken ne durur? yoksa bir şey anlamadım?
Yeni bir çubuğun bir olay olduğu ve burada olabileceği (ve programlanması gerektiği) konusunda kesinlikle size katılıyorum. uzun yıllar kafa patlatmak...
ZY Sanırım okuduktan sonra, yeni çubuğun TÜMÜNDE görünmeyebileceği sizin için netleşecek ... bir delik ...
Bağlantıya bakmaya cesaret ettim .. Belki de bu gerçekten okunmalı .. boş zamanınızda ..;)
Z.Y.'de Böyle bir etkinliğin olmasını istememizin sebebi bu.. Bar yok - etkinlik yok
Genel olarak, nasıl hayal ediyorsunuz? 20 zaman dilimi x 'Piyasa Gözleminde' sembol sayısı ve her biri için bir OnNewBar olayı oluşturuluyor mu? Ve her birini işlemeniz, hangi sembole ve zaman dilimine ait olduğunu belirlemeniz mi gerekiyor? Şimdi bir seçeneğiniz var: kendi NewBar fonksiyonunuzu yazın ve ne tür yeni çubuklar almak istediğinizi tanımlayın: bir sembol için tüm periyotlar, mevcut periyot için tüm semboller veya bazı özel durumlar. Belirli bir basit işlev ortaya çıkıyor. Bu, birçok kontrol içeren genel OnNewBar işlevinden daha iyidir.
20 zaman dilimi.. ulong parametresi için - bu sınır değil.. dakikada bir tüm bir değişkeni doldurmak için - doğru, zor değil..
Ve ne, OnTik "'Market Watch'taki x adet sembole bakar ve her biri için bir olay oluşturulur.."?????
Ve parça parça kontrol edin - inan bana, oldukça hızlı bir şey ..
Ve bir olay olsa bile
- kimse beni işlemeye zorlayamaz - gereksiz yere ..
- hiçbir şey _ek olarak veya "kendi NewBar işlevinizi yazın ve tam olarak hangi çubukları yeni çubuklar almak istediğinizi tanımlayın" yerine _ engelleyemez - gerekirse..
Evet ve şimdi her şeyi yapmak elbette BECERİCİ olmadıkça kolayca yapılabilir. Geliştiriciler OnTrade()'i yeniden yazmaya ve gerekli parametreleri oraya eklemeye söz verdiler. eğer yaparlarsa, işlenmesi daha da kolay olacaktır.
Hiç kimse bu tür durumları OnTick() veya OnTime()'da - alım satım işleminin yapıldığı yerde - yerinde işlemekle uğraşmaz; veya OnTrade()'de, doğrudan koddan kontrol edilmeyen kullanıcı eylemlerini veya alım satım işlemlerini yakalamak gerekiyorsa.
Hafiflik göreceli bir kavramdır ve biri için gram cinsinden, diğeri için ton cinsinden ölçülür. Bunu Expert Advisor'da BECERİCİ yapmak zorunda kaldım (eğer koduma böyle denilebilirse), çünkü SIMPLY ile seçenekler şu anda dilde mevcut değil, ama çok iyi var olabilirler, IMHO. Ve kodun mecazi olarak yüz satır daha uzun olması ve daha karmaşık görünmeye başlaması gerçeğinden pek keyif almadım.
Temel olarak, sorun şudur:
bir onay işareti geliyor, gösterge kapatmanız gerektiğini gösteriyor, ben kapatıyorum
bir sonraki onay işareti geliyor, gösterge kapatmam gerektiğini gösteriyor ve artık ne yapacağımı bilmiyorum - pozisyon kilitleniyor ve elbette şu anda ona ne olduğunu öğrenebilirsiniz, ancak beşinci nokta.
Bu karmaşıklığın neden hala burada olduğunu anlamıyorum? OnTrade() olayında ne olduğunu anlamak için neden bir ton kod yazmamız istendiğini anlamıyorum?
Ben sadelikten yanayım ve olmadığında üzücü oluyor
Hafiflik göreceli bir kavramdır ve biri için gram, diğeri ton cinsinden ölçülür. Bunu Expert Advisor'da BECERİCİ yapmak zorunda kaldım (eğer koduma böyle denilebilirse), çünkü SIMPLY ile seçenekler şu anda dilde mevcut değil, ama çok iyi var olabilirler, IMHO. Ve kodun mecazi olarak yüz satır daha uzun olması ve daha karmaşık görünmeye başlaması gerçeğinden pek keyif almadım.
Temel olarak, sorun şudur:
bir onay işareti geliyor, gösterge kapatmanız gerektiğini gösteriyor, ben kapatıyorum
bir sonraki onay işareti geliyor, gösterge kapatmam gerektiğini gösteriyor ve artık ne yapacağımı bilmiyorum - pozisyon kilitleniyor ve elbette şu anda ona ne olduğunu öğrenebilirsiniz, ancak beşinci nokta.
Bu karmaşıklığın neden hala burada olduğunu anlamıyorum? Neden onTrade() olayında ne olduğunu anlamak için bir ton kod yazmamız istendiğini anlamıyorum?
Ben sadelikten yanayım ve olmadığında üzücü oluyor
Yüz satırdan daha az kodla yaptım... :) çözüm güvenilir ve birden çok para birimi için hemen
Danışmanın askıda kaldığı süre yerine, istediğiniz herhangi birini belirtebilirsiniz. Yani, siparişler bir dönem içinde en fazla bir kez verilecektir.Peki, herhangi bir takas talebinden sonra, 30 saniye boyunca (örneğin) takas talebini yasaklayan bir gecikme yapmanız gerekir. Aksi takdirde, bir sonraki tikte sipariş geçmişte görünmeyebilir.
Genel olarak, nasıl hayal ediyorsunuz? 20 zaman dilimi x 'Piyasa Gözlemindeki' sembol sayısı ve her biri için bir OnNewBar olayı oluşturuluyor mu? Ve her birini işlemeniz, hangi sembole ve zaman dilimine ait olduğunu belirlemeniz mi gerekiyor? Şimdi bir seçeneğiniz var: kendi NewBar fonksiyonunuzu yazın ve ne tür yeni çubuklar almak istediğinizi tanımlayın: bir sembol için tüm periyotlar, mevcut periyot için tüm semboller veya bazı özel durumlar. Belirli bir basit işlev ortaya çıkıyor. Bu, birçok kontrol içeren genel OnNewBar işlevinden daha iyidir.
Standart çözüm hakkında konuşursak, her şey şöyle görünmelidir.
1. Açık bir grafiğe, periyoduna ve sembolüne bir olay eklenir. Yeni bir çubuk göründüğünde olay başlatılmalıdır (delikler yok sayılır).
2. Anladığım kadarıyla olay işleme, ayrı bir terminal iş parçacığında (veya iş parçacığında) gerçekleşmelidir.
not
Bunun gibi bir şey. Tabii bu pek çok özelliği hesaba katmadan kabaca bir tahmin...
Vladix :
Temel olarak, sorun şudur:
bir onay işareti geliyor, gösterge kapatmanız gerektiğini gösteriyor, ben kapatıyorum
bir sonraki onay işareti geliyor, gösterge kapatmam gerektiğini gösteriyor ve artık ne yapacağımı bilmiyorum - pozisyon kilitleniyor ve elbette şu anda ona ne olduğunu öğrenebilirsiniz, ancak beşinci nokta.
Bu karmaşıklığın neden hala burada olduğunu anlamıyorum? OnTrade() olayında ne olduğunu anlamak için neden bir ton kod yazmamız istendiğini anlamıyorum?
Ben sadelikten yanayım ve olmadığında üzücü oluyor
Yüz satırdan daha az kodla yaptım... :) çözüm güvenilir ve birden çok para birimi için hemen
Danışmanın askıda kaldığı süre yerine, istediğiniz herhangi birini belirtebilirsiniz. Yani, siparişler bir dönem içinde en fazla bir kez verilecektir.Peki, herhangi bir takas talebinden sonra, 30 saniye boyunca (örneğin) takas talebini yasaklayan bir gecikme yapmanız gerekir. Aksi takdirde, bir sonraki tikte sipariş geçmişte görünmeyebilir.
Bir gecikme ayarlayın - evet, kabul ediyorum, kaç satır kod alacak? Ve çoklu para biriminden bahsediyorsak, her biri için gecikmeyi hesaba katmak gerekir, değil mi?
Bunu çözen kodu yazdım. Sadece ondan hoşlanmıyorum, tıpkı senin gibi, üzgünüm ve seninki. Ve mesele önyargı değil, mesele şu ki, başka seçenek yok, basit ve zarif.