NormalizeÇift paradoks - sayfa 10

 
barabashkakvn :
Her şey yavaş yavaş gelir. Öncelikle cümlelerin büyük harfle yazıldığını ve parçalanmış dizelerin tarzının foruma uygun olmadığını unutmamalısınız. Sonra kendiliğinden hem normalleştirme hem de indeksleme ile sıfırdan ortaya çıkacaktır.

bu yorumu bekliyordum

 

bir sohbet tarzında hızlı bir şekilde yazmaktan daha doğal bir şey yoktur - tek satırda

1'den saymak kadar doğal

ve aynı yuvarlatılmış biçimde elde etmek için sayıyı yuvarlama

Hadi ama, formalizmle dolu alaycı yorum akışınız nerede?

hayat, iyi yerleştirilmiş noktalardan, virgüllerden ve ikili biçimlerden daha fazlasıdır

bu bir duygu akışı ve güzel olmalı

bu özgürlük ve yaratıcılık

bunun için bana ne cevap vereceksin?

 
transcendreamer :

Şaka yapıyorsun, değil mi?

sadece bir kesirli sayıyı çöp olmadan yazdırmam gerekiyordu

ve bana bir şeyi yanlış anladığımı kanıtlıyorlar

mql benim için başlı başına bir amaç değil, sadece bir araçtır,

bence bariz şeyler var, örneğin - bir değişkene bir sayı yazdım, yazdığımın aynısını yazdırdım ...

Kesinlikle orada nasıl düzenlendiği ve numaranın nasıl saklandığı önemli DEĞİLDİR, bu sistem seviyesidir

ve bu yazıların saçma olduğu ve uygulama düzeyinde bir kusur olduğu açık - dostça değil

ama burada yine programcılar hakkında bir tür şaka çıkıyor: "bu bir hata değil, bu bir özellik"

boşuna değil bu şakalar ortaya çıktı, boşuna değil))))))))

Hesaplanan parametreleri ticaret taleplerinde fiyat olarak gönderirken NormalizeDouble() normalleştirmesi gerekir. Gerekli bit derinliğine zaten normalleştirildiklerinden, Alış, Teklif fiyatını normalleştirme olmadan gönderebilirsiniz. Örneğin, bir Bid-stopLoss*Point stop için fiyatları hesaplarsanız, bu ifadenin normalleştirilmesi gerekir. Bekleyen emirlerin fiyatları tamamen aynıdır: onları önceden hesaplarsınız, yani normalleştirilmeleri gerekir.

İki gerçek sayıyı karşılaştırdığınızda, normalleştirilmiş farklarını sıfırla veya bazı minimum değerlerle karşılaştırmanız gerekir.

Orada ne hesapladığınızı görmeniz gerektiğinde, bunu ekranda ihtiyacınız olan doğrulukla görüntülemek için DoubleToString() kullanmanız gerekir. IntegerToString() ihtiyacınız olan parametrelerle.

Anlaşılması ve öğrenilmesi gereken budur.

 
transcendreamer :

bir sohbet tarzında hızlı bir şekilde yazmaktan daha doğal bir şey yoktur - tek satırda

1'den saymak kadar doğal

ve aynı yuvarlatılmış biçimde elde etmek için sayıyı yuvarlama

Hadi ama, formalizmle dolu alaycı yorum akışınız nerede?

hayat, iyi yerleştirilmiş noktalardan, virgüllerden ve ikili biçimlerden daha fazlasıdır

bu bir duygu akışı ve güzel olmalı

bu özgürlük ve yaratıcılık

bunun için bana ne cevap vereceksin?

Özgürlük ... ve biri seni zorla tutuyor mu?

Yaratıcılık ... tüm MK işlevleri için kendi ambalajlarınızı yaratın, yazın ve güzelliğin tadını çıkarın.

 
artmedia70 :

İşlem emirlerinde hesaplanan parametreleri fiyat olarak gönderirken NormalizeDouble() normalleştirmesi gerekir. Gerekli bit derinliğine zaten normalleştirildiklerinden, Alış, Teklif fiyatını normalleştirme olmadan gönderebilirsiniz. Örneğin, bir Bid-stopLoss*Point stop için fiyatları hesaplarsanız, bu ifadenin normalleştirilmesi gerekir. Bekleyen emirlerin fiyatları tamamen aynıdır: onları önceden hesaplarsınız, yani normalleştirilmeleri gerekir.

İki gerçek sayıyı karşılaştırdığınızda, normalleştirilmiş farklarını sıfırla veya bazı minimum değerlerle karşılaştırmanız gerekir.

Orada ne hesapladığınızı görmeniz gerektiğinde, bunu ekranda ihtiyacınız olan doğrulukla görüntülemek için DoubleToString() kullanmanız gerekir. IntegerToString() ihtiyacınız olan parametrelerle.

Anlaşılması ve öğrenilmesi gereken budur.

evet, bunu çok iyi anlıyorum, teklif 5 haneli ise 1.234567 siparişi gönderemezsiniz

çift sayıları karşılaştırma konusunda referanslarla tanıştım ..... ve bu korkunç

ama anladığım kadarıyla, A ve B belirgin şekilde farklı olduğu sürece A>B'yi karşılaştırmak güvenlidir.

ancak, örneğin, açıkça A=1.23456 ve B=1.23456 olarak ayarladıysam ve (A==B) false döndürürse, bu zaten bir tür suçtur

 
artmedia70 :

Hesaplanan parametreleri ticaret taleplerinde fiyat olarak gönderirken NormalizeDouble() normalleştirmesi gerekir. Gerekli bit derinliğine zaten normalleştirildiklerinden, Alış, Teklif fiyatını normalleştirme olmadan gönderebilirsiniz. Örneğin, bir Bid-stopLoss*Point stop için fiyatları hesaplarsanız, bu ifadenin normalleştirilmesi gerekir. Bekleyen emirlerin fiyatları tamamen aynıdır: onları önceden hesaplarsınız, yani normalleştirilmeleri gerekir.

İki gerçek sayıyı karşılaştırdığınızda, normalleştirilmiş farklarını sıfırla veya bir minimum değerle karşılaştırmanız gerekir.

Orada ne hesapladığınızı görmeniz gerektiğinde, bunu ekranda ihtiyacınız olan doğrulukla görüntülemek için DoubleToString() kullanmanız gerekir. IntegerToString() ihtiyacınız olan parametrelerle.

Anlaşılması ve öğrenilmesi gereken budur.

baskı ve uyarı eğrileri - Bunu zaten öğrendim
 

ama genel olarak, bir kesirli sayıyı hesaplayarak, normalleştirerek, bir değişkene yazarak, sonra okuyarak ve tekrar normalleştirerek, kuyruk aldığım gerçeğinden rahatsızım.

Örneğin

basis[0]=NormalizeDouble(sum_A,2);

GlobalVariableSet("Equity-"+portfolio_id,basis[0]); 

...

current=NormalizeDouble(GlobalVariableGet("Equity-"+portfolio_id),2);

text = "Positions synchronized at " + current + " for portfolio: " + portfolio_name;

if(!automatic) MessageBox(text,""); else Print(text);

şimdi değişti

text = "Positions synchronized at " + DoubleToStr(current,2) + " for portfolio: " + portfolio_name;

if(!automatic) MessageBox(text,""); else Print(text);

ve görünüşe göre kuyruklar çıkmıyor, pah pah

 

daha doğrusu - orijinal versiyonda (string)geçerli idi

yani, normalleştirilmiş sayı sol kuyrukların dönüşümü

bazen (her zaman değil)

 

Örneğin, bir sayı bir sabit tarafından verilir ve ikincisi bölme / çarpma yoluyla hesaplanırsa, iki katı karşılaştırma sorunu ortaya çıkacaktır.

 

Her durumda, umutsuz bir insancıl için zamanınızı boşa harcadığınız için tekrar teşekkürler, eğer birini rahatsız edersem, o zaman tekrar özür dilerim, kötü niyet olmadan sadece fikrimi ifade ediyorum.

Geçen bir trend ve herkes için iyi bir haber.