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
Hayır, istediğin her şey olabilirler. tıpkı yorum gibi. onları bir tür sayısal yorum olarak görün. Normal MT4 kullanıcı arayüzü ile açılan tüm manuel işlemler sihirli sayı 0'a sahip olacaktır, böylece örneğin tüm siparişleri döngüye alabilir ve tüm EA işlemlerine dokunmadan tüm manuel işlemleri ve siparişleri kapatabilir/silebilirsiniz.
Yalnızca belirli bir siparişi benzersiz şekilde tanımlamak için bilet numarası vardır.
Bunu temizlediğiniz ve görüşlerinizi paylaştığınız için teşekkür ederiz. Fwiw, çok şey öğrendim..
MathPow()'a ihtiyacım yok, neden kimse bunu görmedi?
şimdi ilk gönderiyi güncelliyoruz.
MathPow()'a ihtiyacım yok, neden kimse bunu görmedi?
Akla gelen üç ana neden:
Netliği azalttığını söyleyemem. Ana amacım performans değil, netlik, zarafet ve doğruluktur.
Herhangi bir bitsel operatör kullanmadan gerçek bit kaydırmayı yapmak için güç, çarpma, bölme (ve modulo) da kullanabilirim. Ama zarafet (ve aynı zamanda netlik) adına, bunu ya yalnızca biri ya da diğeriyle yapmalı, ancak karıştırılmamalı. Ve işlevin anlamı bitleri kaydırmak olduğundan, yalnızca çarpmalarla bit kaydırmaları yaparsam kodu karıştırırdım.
Ayrıca, tamsayılarla toplama ve çarpma yapılabilirken, MathPow() işlevi dahili olarak logaritma kullanır, yaklaşıklık gibi kokar ve ihtiyacım olan şeye kıyasla inanılmaz derecede karmaşıktır, kullanır ve bir çift değer döndürür ve bunun bir tamsayı ile ilgisi yoktur. yalnızca n bit kaydırması gereken işlev.
Belki de bunu neden görmedim sorusunu sormalıydım. Neden ilk etapta MathPow()'u kullandım? bilmiyorum. En son 15 yıl önce bir montajcı yaptığımda, bugün daha yüksek soyutlamalardaki problemler hakkında düşünmeye alışığım. Belki de nedeni buydu. Beynimde bir yerde n'inci bitin 2^n olmasıyla güçlü bir bağlantı var, bunu bir saniye bile düşünmeden yazdım. Bir montajcı programcısı bunu asla yapmazdı. Sola kaydırmak 2 ile çarpmaktır, 2 ile çarpmak sola kaydırmaktır.
Kalıcılık için çözümüm, kullandığım tf'leri (10 tanesi), siparişi açan uzman sürümü veya ticaret yöntemini (bunlardan 4 tanesine sahibim) tutmak için int'nin 32 bitini kullanmaktır. Hala ihtiyacım olursa yedeklenecek çok parça var. Bunu halletmek için bitsel işlemleri ve bazı dönüştürme işlevlerini kullanıyorum. Başkalarının bunu veya buna benzer bir şey yaptığını biliyorum, ancak bu sizin durumunuz için yeterli görünmediğinden, hala kafamı sorduğum soruya sarmaya çalışıyorum.
Örneğinizde Symbol() nasıl MN'nin bir parçası olur? Bir EA numaranız ve bir Zaman Çerçevesi numaranız var, peki ya sembol?
Yaklaşımınızın avantajlarını görebiliyorum ve gelecekte bir noktada bunu kullanabilirim. Ama bir NuB olarak MQL4.Com'daki kod tabanından MM kullanıyorum. Dolayısıyla programlama öğrenme eğrimin bu noktasında MM benim önceliğim değil. Ekleyebileceğim daha iyi bir yöntem bulabilirsem, MM öncelik listemin en üstüne çıkana kadar yapacağım, onu kullanmaya karşı değilim. Biz NuB'lerin alabileceğimiz tüm yardıma ihtiyacımız var!
İsim ve/veya versiyon numarası ile ilgili olarak, MN sadece rakamlara izin verir, harflere izin vermez.
Kodunuzu incelemedim, ancak algoritmanızın adı MN'nizin bir parçasına dönüştürdüğünü varsayıyorum, bu durumda hangi döviz çiftini adreslediğinizi hemen söylemez.
algoritmanız adı MN'nizin bir parçasına dönüştürüyor, bu durumda hangi döviz çiftine hitap ettiğinizi hemen söylemez.
Herhangi bir dizeyi güvenilir bir şekilde benzersiz bir tam sayıya dönüştürür. Bu dönüşüm tek yönlü bir yoldur, ancak asla geri dönüştürmeye ihtiyacım yok.
Tek bilmem gereken, aynı numaraya sahip bu işlemlerin birbirine ait olduğu. Döngüde tek bir if() ile bu özel EA/sembol/TF kombinasyonunun tüm işlemlerini kolayca bulmak için yalnızca bir kimlik numarasıdır. Bu sayı hakkında bilinmesi gereken tek şey, her EA/sembol/zaman aralığı kombinasyonu için benzersiz olması ve deterministik olması ve bilgisayarımın çökmeye karar vermesi durumunda değişmeyeceğidir.
Mantıken birbirine ait olan tüm işlemler aynı MN'ye sahip olacaktır. Daha sonra hangi sembolün yapıldığını söylemem gerekirse (örneğin ay sonunda bazı istatistikler yapmak için) bu siparişlerde basitçe OrderSymbol() kullanabilirim.
Hey millet, neden aynı tf ve sembolü aynı ayarlarla çalıştıran birden fazla uzmana ihtiyacınız olduğunu merak ediyorsunuz?
Kalıcılık için çözümüm, kullandığım tf'leri (10 tanesi), siparişi açan uzman sürümü veya ticaret yöntemini (bunlardan 4 tanesine sahibim) tutmak için int'nin 32 bitini kullanmaktır. İhtiyacım olursa hala birçok parça yedek. Bunu halletmek için bitsel işlemleri ve bazı dönüştürme işlevlerini kullanıyorum. Başkalarının bunu veya buna benzer bir şey yaptığını biliyorum, ancak bu sizin durumunuz için yeterli görünmediğinden, hala kafamı sorduğum soruya sarmaya çalışıyorum.
Başkası adına konuşamam ama bir siparişi kapatması biraz zaman alabilen bir EA'm var ve önceki siparişten hala kapanmadığı için yeni giriş noktalarını kaçırıyor. Her girişi bağımsız olarak ele almasını ve her ticareti her ticaretin kurallarına göre takip etmesini istiyorum (sl'yi hareket ettirmek, tp'ye ilk ulaştığında yarıyı kapatmak, vb.).
Başkası adına konuşamam ama bir siparişi kapatması biraz zaman alabilen bir EA'm var ve önceki siparişten hala kapanmadığı için yeni giriş noktalarını kaçırıyor. Her girişi bağımsız olarak ele almasını ve her ticareti her ticaretin kurallarına göre takip etmesini istiyorum (sl'yi hareket ettirmek, tp'ye ilk ulaştığında yarıyı kapatmak, vb.).Anlıyorum. Yani sunucu yanıtını beklemek bağlı ve bu arada başka siparişler açabilirsiniz?
Ancak, ticaret bağlamının meşgul olması, siparişle ilgili herhangi bir eylemi durdurmuyor mu?
Sanırım işe yaradığı sürece, gerçekten önemli olan tek şey bu.
Çok fazla sunucu yanıtı değil, sadece bir siparişin açık olması. Böylece EA bir satın alma sinyali alabilir ve satın alabilir ve ardından açık kalabilir. Birkaç saat sonra başka bir alım sinyali geliyor, ancak zaten açık bir pozisyon olduğu için ilk emri kapatmayı beklediği için alım yapmıyor. Ancak, ilk satın alma sinyalinin ikinciden daha karlı olacağını veya EA'nın ek siparişler açmasına izin vermeden önce ilkinin kapanmasını beklemekten elde edilecek bir şey olduğunu varsaymak için hiçbir neden yok. Ama hala üzerinde çalışıyorum, bu yüzden benim için hala teori. :)