MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1803
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
Kodunuzda, bir açık pozisyon ile diğeri karşı sinyalde açılmayacaktır. Yani ilk olarak bir sinyal geldiğinde karşı pozisyon olup olmadığını kontrol etmeniz ve kapatmanız gerekir.
Ancak, tekrar ediyorum - tüm bunlar, stratejileri geliştirme olasılığını büyük ölçüde sınırlar.
Emirlerin varlığına/yokluğuna bağlı olmaktan uzaklaşmak gerekir (özellikle dörtte - orada hem bekleyen emirler (doğru olan) hem de pozisyonlar (doğru olmayan) emir olarak alınır).
Hayır, türlerine göre emir ve pozisyon sayısının elinizin altında olması doğru ve gereklidir. Ancak herhangi bir emrin yokluğunda sadece sinyallere güvenmek böyle bir şey ...
Genel olarak, emir ve pozisyon sayma fonksiyonlarına (emir ve pozisyon sayısı değiştiğinde yapıyı dolduran bir fonksiyon), pozisyon açma/kapama fonksiyonlarına, emir verme fonksiyonlarına ve sinyal fonksiyonlarına sahip olmak doğrudur. Artı - pozisyon verilerini (açık veya kapalı) herhangi bir değerle karşılaştırabilmek.
Bu setten herhangi bir strateji yapabilirsiniz.
senin kodun
(Bar açıldı ve sipariş yok)
sinyali kontrol etti - sinyal yok
... bir sonraki barı beklemek
Geçen seferkiyle aynı hatayı yaptın
not
Bu
bir sipariş açıldıktan sonra yürütülmelidirGenel olarak, kodum başka bir şeye yönelikti. Sadece açılış fiyatlarında işlem gören bir robot için. Az önce kendimden aldım ve kullanıcı koduna kanunlara saygılı bir vatandaş ekledim ve yorumlara göre değiştirdim. Tüm nüanslar aynı anda dikkate alınamaz. Yalnızca robotun test edilmesi sırasında görünürler.
Ama bir tane var ama. Ve sen de her şeyi hesaba katmış görünüyorsun. Bir sinyal geldi, bSignalSell veya bSignalBuy işlevi, bir sipariş açmak için kuyruğa bir komut gönderdi ve doğru (ilk an) döndü. İkinci nokta ise henüz bir emir açılmamış olmasıdır (komut terminalde sırasını beklemektedir). Sıra takıma geldiğinde takım elbise, sunucuya gönderilir (bu hala zaman). Sunucu üzerinde çalışır. Veya sunucu birkaç olası nedenden biri nedeniyle yürütmeyi reddediyor (daha fazla ayrıntı için belgelere bakın). Veya ulaşmadı (parazit, zayıf bağlantı ve diğer ağ hataları). Ve robotunuz bir sipariş açtığını düşünür ve barın açılış saatini günceller. Kusursuzca. Ancak bu sipariş, sonunda açık siparişler listesinde değildi. Böylece, listede 0 siparişiniz olduğunu ve robotun "düşündüğünü" hayal edin: her şey yolunda, pazara girdim. Sonuç olarak, tüm bar boyunca, başarısız bir girişten sonra bir sinyal vardır, ancak uzman bunu "görmez" ve hiçbir şey yapmaz. Böyle bir durum mümkün mü? Mümkün! Yani kodunuz da süper çalışmıyor. Daha iyi düşün. Ya da yasalara saygılı vatandaş düşünsün. Ve ne yazık ki şu anda yapamam. Çok ilginç bir proje üzerinde çalışıyorum. Ayrıca, iyi ve karlı bir ticaret sistemi için tüm mekanizmalara sahip doğru ve tam olarak çalışan bir Uzman Danışmanı oluşturmak mantıklıdır. Ve robotu test cihazına sürün ve bunun başka bir depozito süzgeci olduğundan emin olun, benim, hatta sizin seçeneğinizde bile. Burada önemli değil.
şimdi fark ettim
Dizin 1.
MA'nız 0 indeksindeyken! Yani bar boyunca yürür ve Aç ve Kapat'ın ötesine geçebilir. Bu nedenle, MA'yı indeks 1 ile de yapmak daha iyidir.
Daha sonra tüm sinyaller yalnızca oluşturulan çubukta alınacak ve robot açılış fiyatlarındaki sinyallerle ticaret sistemine tam olarak uyacaktır. Böylece robotun çubuğun açılma anını takip etmesi (bu kodu zaten ekledim) ve en yeni oluşturulan çubuktan girmesi yeterli olacaktır. Daha güvenilir olacaktır. Ve Makar'ın başlangıçtaki yanlış giriş algoritması nedeniyle yapmak zorunda kaldığı gibi, saptırmaya gerek kalmayacak.
şimdi fark ettim
Dizin 1.
MA'nız 0 dizinindeyken! Yani, bar boyunca yürür ve Aç ve Kapat'ın ötesine geçebilir. Bu nedenle, MA'yı indeks 1 ile de yapmak daha iyidir.
Daha sonra tüm sinyaller yalnızca oluşturulan çubukta alınacak ve robot açılış fiyatlarındaki sinyallerle ticaret sistemine tam olarak uyacaktır.
Bu, sinyalin özüdür.
Mevcut MA, önceki mumun gövdesine girer ve bu mumun (UP / DN) sinyal olduğuna bağlı olarak.
Bu, sinyalin özüdür.
Mevcut MA, önceki mumun gövdesine girer ve bu mumun (UP / DN) sinyal olduğuna bağlı olarak.
Bu durumda MA, alt zaman diliminde indeks 1 ile alınmalıdır. O zaman sapkın olmaya gerek kalmayacak. Eski zaman diliminin Açılış ve Kapanışında, daha genç zaman diliminde birkaç (veya daha fazla) çubuk olacaktır. Zaman çerçevelerinin neden icat edildiğini biliyor musunuz? Değilse, Japon şamdanlarının ortaya çıkış tarihi ile bu konuyu incelemeye başlayın. Kısacası, mesele teknik analizi basitleştirmek. Ve dijital çağın gelişiyle birlikte, ticaret sistemlerinin ayrıklaştırılmasını da basitleştiriyor.
Bu durumda MA, alt zaman diliminde indeks 1 ile alınmalıdır. O zaman sapkın olmaya gerek kalmayacak. Eski zaman diliminin Açılış ve Kapanışında, daha genç zaman diliminde birkaç (veya daha fazla) çubuk olacaktır. Zaman çerçevelerinin neden icat edildiğini biliyor musunuz? Değilse, Japon şamdanlarının ortaya çıkış tarihi ile bu konuyu incelemeye başlayın. Kısacası, mesele teknik analizi basitleştirmek. Ve dijital çağın gelişiyle birlikte, ticaret sistemlerinin ayrıklaştırılmasını da basitleştiriyor.
Bana neden kızdığını anlamıyorum. Kişi stratejisini gördüğü gibi yazar ve bu kişi ben değilim.
Az önce sorusunu yanıtladım: "Aynı çubukta birden fazla açıklık nasıl önlenir?"
Ben kendim ne çalışmam gerektiğini biliyorum ve bilmiyorsam da soruyorum. Şimdi kimseye bir şey sormadım.
Bana neden kızdığını anlamıyorum. Kişi stratejisini gördüğü gibi yazar ve bu kişi ben değilim.
Az önce sorusunu yanıtladım: "Aynı çubukta birden fazla açıklık nasıl önlenir?"
Ben kendim ne çalışmam gerektiğini biliyorum ve bilmiyorsam da soruyorum. Şimdi kimseye bir şey sormadım.
Garip. Ben sorunu çözmeye çalışıyorum ve sen bir hesaplaşmadan bahsediyorsun. Ben sadece programlamadan bahsediyorum. Bir şey seni incitirse, gücenme. 15 yıldır program yazıyorum. Sizce kodumun doğru çalışmadığını söylüyorsunuz. Ama ben gücenmiyorum, ama size her şeyin aslında otomatik ticaret sistemlerinde nasıl düzenlendiğini açıklamaya çalışıyorum. Sadece teknik nitelikte bir konuşma ortaya çıkıyor. Ve benimle bazı şikayetler hakkında konuşuyorsun ... :)
Garip. Ben sorunu çözmeye çalışıyorum ve sen bir hesaplaşmadan bahsediyorsun. Sadece programlama konusunda konuşuyorum. Bir şey seni incitirse, gücenme. 15 yıldır program yazıyorum. Sizce kodumun doğru çalışmadığını söylüyorsunuz. Ama ben gücenmiyorum, ama size her şeyin aslında otomatik ticaret sistemlerinde nasıl düzenlendiğini açıklamaya çalışıyorum. Sadece teknik nitelikte bir konuşma ortaya çıkıyor. Ve benimle bazı şikayetler hakkında konuşuyorsun ... :)
15 yıldır program yazıyorum.
Bir teklif var. Bana telgrafını kişisel olarak ver.
Bu yüzden size kodunuzun neden yanlış olduğunu açıkladım (bu durumda) ve danışmanı yeniden yapmanız gerektiğini söylüyorsunuz)
Bu durumda, saptırılmaması için yeniden yapılması gerekir. Çünkü eklediğim kod, daha önce de söylediğim gibi, sadece açık fiyatlarla sinyalleri olan bir robot için tasarlandı. Garip olduğunu düşündüm. Ve sonra sebebini buldum. Her şey baştan doğru yapılırsa, gelecekte özel bir sorun olmayacaktır. Bu nedenle, her zaman neden aranmalı ve etkisi ile mücadele edilmemelidir.