MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1857

 
Порт-моне тв açılış zamanı nasıl alınır ve ikinci ve sonraki siparişlerin açılış fiyatı nasıl alınır, çünkü OpenOrderPrice()'e benzer şekilde, ilkinin fiyatını da döndürür

her şeyi toplayın (veya hatırlayın/bilin), açılış saatine göre sıralayın. İşte budur ve açılış saati değişmez :-)

danışmanın mantığı 1'den fazla düzenin varlığını ima ediyorsa (örneğin bir ızgara), o zaman ister istemez ezberlenmeleri gerekecek. Veya yavaşlayın, her hapşırık için her şeyi sıralayın

 
Mykhailo Turovskyi # :
Söyle bana, geçmişin karı mavi daire içine alınmış, bu zaten eksi komisyon ve takas mı?
Numara.
 
Порт-моне тв açılış zamanı nasıl alınır ve ikinci ve sonraki siparişlerin açılış fiyatı nasıl alınır, çünkü OpenOrderPrice()'e benzer şekilde, ilkinin fiyatını da döndürür

OrderSelect() fonksiyonu ile hangi emir seçilecek, o emrin zamanını ve fiyatını alacaksınız.

 
Mihail Matkovskij # :

Bildiğim kadarıyla, belgelerde bundan bahsedilmiyor. Bu yüzden güvenli oynamak daha iyidir. Kesinlikle daha kötüye gitmeyecek.

Bu prosedürün çok fazla CPU zamanı aldığına dair şikayetler vardı.

Michael Matkovskij   # :

SL ve TP ile ilgili olarak, bunlar   hesaplandı. Ve böylece onlar   kesinlikle   basamak değerine göre normalize edin.

Burada, her durumda, yazarın fikrini tanımak gerekir.

 
Andrey Sokolov # :

Bu prosedürün çok fazla CPU zamanı aldığına dair şikayetler vardı.

Hesaplanan SL ve TP'nin normalleştirilmesi 2 kat daha fazla zaman alır. Ancak bunun optimizasyon üzerinde ve hatta robotları test etmede çok güçlü bir etkisi olduğunu söylemeyeceğim.

Burada, her durumda, yazarın fikrini tanımak gerekir.

Belgeler , hesaplanan seviyeleri normalleştirmek için siyah beyaz diyor! Ve "yazarın fikri" ne olabilir? Neden SL ve TP'yi normalleştirmiyorsunuz? Seninle tartışmayacağım çünkü bariz gerçekler var!

 
Порт-моне тв açılış zamanı nasıl alınır ve ikinci ve sonraki siparişlerin açılış fiyatı nasıl alınır, çünkü OpenOrderPrice()'e benzer şekilde, ilkinin fiyatını da döndürür

Bu bir soruysa, ilkinin biletini alın, bileti != ilk olan ilk ve sonrakileri seçin.

 
Mihail Matkovskij # :

Hesaplanan SL ve TP'nin normalleştirilmesi iki kat daha uzun sürer. Ancak bunun optimizasyon üzerinde ve hatta robotları test etmede çok güçlü bir etkisi olduğunu söylemeyeceğim.

Etkiler ve bu forumda verilen prosedürün basitleştirilmesi hakkında sorular vardı.

Alınan ve normalleştirilmeyen fiyatların hataya neden olduğu bir durum bilmiyorum.

Yardımdan:

Michael Matkovskij   # :

Ve "yazarın fikri" ne olabilir? Neden SL ve TP'yi normalleştirmiyorsunuz? Seninle tartışmayacağım çünkü bariz gerçekler var!

Fikir yuvarlama olabilir. Teorik olarak bu böyle yapılmaz, ancak bu yöntem, daha az sayıda basamağa yuvarlama durumunda, fiyatlar SL ve TP için doğruysa, işe yarayacaktır. Buna göre, her durumda neyin amaçlandığını bulmak gerekir.

 
Urman Ru fraktal almak   bu göstergenin arabelleğinden. En yüksek ve en düşük, ancak standart değil, ancak solda i-2 ve sağda 0, böylece sonucun üzerine yazılmaz.

Kendim çözmeye çalıştım, kabaca bu göstergenin koduna ekledim ama bir şey çalışmıyor. Derlenmesine ve hata olmamasına rağmen.

Belki iCustom ve göstergenin kolu aracılığıyla gerekli?

Sorunu tanımlamaya çalışırsanız ve daha sonra tam olarak neyin işe yaramadığını daha ayrıntılı olarak açıklarsanız, yanıt alma olasılığı çok daha yüksek olacaktır.

 
Mihail Matkovskij # :

Hesaplanan SL ve TP'nin normalleştirilmesi 2 kat daha fazla zaman alır. Ancak bunun optimizasyon üzerinde ve hatta robotları test etmede çok güçlü bir etkisi olduğunu söylemeyeceğim.

Ayrıca, bazı insanlar aşağıdaki gibi basit kontrolleri ihmal eder:

 if (name == NULL )
   return ;

çok fazla CPU zamanı alacağına inanmak :)

Ama aslında, ObjectCreate ve ObjectDelete gibi işlevler CPU zamanını alır. Programcının geçerli bir grafik nesneleri dizisi varsa ve bunlar her tıklamada silinir ve yeniden oluşturulursa, bu konuda kesinlikle bir şeyler yapılması gerekir. Basit kontroller ve hesaplamalar zaman içinde ihmal edilebilirken. Bu nedenle, birçok programcı yanlış yere bakıyor.

 
Andrey Sokolov # :

Etkiler ve bu forumda verilen prosedürün basitleştirilmesi hakkında sorular vardı.

Kimi veya neyi etkilediğini bilmiyorum. NormaizeDouble ile hiç problem yaşamadım. Bu nedenle, herhangi bir kod uygulamanın hızını etkiler. Ancak her şey çok kritikse, OnTick veya OnCalculate işleyicilerini boş bırakabilirsiniz. Daha sonra uygulama genellikle uçacaktır. :) Veya fonksiyonları assembler'da yeniden yazın, bir DLL'de derleyin ve uygulamaya bağlayın.

Alınan ve normalleştirilmeyen fiyatların hataya neden olduğu bir durum bilmiyorum.

Ama belgeler biliyor! Ve belgelerdeki tavsiyeleri ihmal ediyorsunuz. Nasıl istersen. Sana kalmış. Bence her şey ortada ve bu konuda seninle tartışmayacağım, bir kez daha tekrar ediyorum!

Fikir yuvarlama olabilir.

Yuvarlama yoktur, ancak 2'den fazla ondalık basamak olan her şeyi keser

 NormalizeDouble ((Ask1+StopLoss*Point1), 2 )

Yazarın niyetini de bilmiyorum. Ama buna ihtiyacım yok. Bence kendi başına çözecektir.