İddialı fikirler!!! - sayfa 6

 
TheXpert :

Amip üzerinden düşünüyorsun :) .

"Küçük verimliliği unutmalıyız , diyelim ki zamanın yaklaşık %97'si: erken optimizasyon tüm kötülüklerin köküdür. Yine de bu kritik %3'lükteki fırsatlarımızı kaçırmamalıyız" (c) Donald Knuth

Bu forumda dördüncü kez alıntı yapıyorum .

Akıldan çok alıntı yapmanıza ve kopyala-yapıştır yapmanıza gerek yok, hatta bunu bir maymuna öğretmeyi deneyebilirsiniz. :)

Ancak düşüncenizi anlamlı bir şekilde açıklamak daha zordur ve zaten homo sapiens seviyesini iddia eder.

Peki, düşüncenizi anlamlı bir şekilde ifade etmeye çalışmak ister misiniz, yoksa gelişme düzeyi hala aynı değil mi? :)

 
HIDDEN :

Birkaç yıldır, çok para birimli bir strateji test cihazı uygulama fikriyle periyodik olarak eziyet çekiyorum.

Birkaç uygulama gördüm, fikirleri okudum, hatta MT5'i izledim.

Birçoğu hemen neden, çoklu para biriminin zaten terminalde olduğu MT5 varsa, birçok neden olduğunu söyleyecek, açıklamaya çalışacağım.

Kendi çoklu para birimi strateji test cihazınızı hatasız yazmak, nadiren tamamlanan çok zor bir iştir.

MetaTrader 5'i 64 bit sürümde tekrar denemenizi tavsiye ederim:

  • çoklu para birimi ve ayrıntılı ticaret stratejisi test cihazı
  • yayılma geçmişi de dahil olmak üzere tüm dakikalık geçmiş veriler hazır
  • MetaTrader 5'in 64 bit sürümü, büyük miktarda veri ile çalışmanıza izin verir (8/12/16 Gb bellek yeterlidir)
  • MQL5 kodunun hızı MQL4'ten birkaç kat daha yüksektir (SSE2'nin aktif kullanımıyla yerel koda derlenir)
  • nesne yönelimli MQL5 , çok daha karmaşık Uzman Danışmanlar yazmanıza olanak tanır
  • dağıtılmış test cihazı, test için birçok uzak aracı kullanmanıza olanak tanır
Geliştiriciler tarafından aktif olarak geliştirilen ve desteklenen tam görünümde, tekrar tekrar kanıtlanmış bir araç kullanmak daha iyidir.
 
Andrei01 :

Kod optimizasyonu, bir programcının, gerçekleştirilen temel işlemler (toplama, çarpma, bellek erişimi, adres hesaplama, vb.) açısından belirli bir kod parçasının ne kadar kaynak yoğun olacağına dair asgari düzeyde bir anlayışa sahip olmasını gerektirir. Bu olmadan, prensipte hiçbir optimizasyon mümkün değildir ve en iyi derleyici bile böyle talihsiz bir programcıya karşı güçsüz olmayacaktır. Bu bariz bir şey gibi görünüyor, ancak bunun birçokları için büyük bir haber olabileceğini görüyorum. :)



Bunu göze alamam, ama gerçekten kendimi senin yönünde güçlü bir şekilde ifade etmek istiyorum, ama peki, senin aptallık ve inat örneğini kullanmanın birçok kişi için açıklığa kavuşacağını varsayacağız.

Basit adreslemenizin görünürdeki etkinliğine, verdiğim örneklere ve verimli kod yazmanın temellerine kafayı takmış durumdasınız - okuyamıyorsunuz ve anlayamıyorsunuz, gelelim 2x2 alanından:

bir görev var, ancak zor bir görev var)) - hayatın hilesi - müşteri, her zaman olduğu gibi, çalışma sürecinde evrensellik kazanan minimum bir kod ister - aşağıdaki listedeki öğelerin sayıları:

1. 2 iki boyutlu matrisi çarpmak için bir fonksiyon yazın

2. 3 boyutlu matrisleri çarpmak için bir fonksiyon yazın

3. Evrensel işlevi - X * Y'yi kullanabilir misiniz?

4. ters matrisi bulabilir misiniz?

- sıradan bir programcı X[2] [2] * Y[2][2] dizisini çarpacak bir fonksiyon yazar

- "mantığınız" ile - X[4] ve Y[4] dizisinden ve X[4] * Y[4] ile çarpma işlevinden ve elbette dönüştürme işlevinden oluşacak müthiş hızlı bir kod yazıyoruz iki boyutlu bir dizi biçimindeki aptal giriş / çıkış verilerini doğru verilere - tek boyutlu bir diziye ve tek boyutlu matrisler için eşdeğer dönüşümler yazarak matris cebirini incelemek için oturun

- ilk programcı işlevine evrensellik katmaya başlar, ne yapacağınızı hayal bile edemiyorum (tek boyutlu diziye çevrilmiş yirmi boyutlu matrislerin çarpımını kurşun kalemle kontrol etmek zor olacak) ve son olarak temel sınıf - matrisi ayarlayan ve matris çarpma yöntemini oluşturan OOP'li bir programcı belirir;

- Dördüncü görevle ne yapacağınızı hayal etmek bile istemiyorum, çünkü bu "yeni parlak fikirlere sahip kurnaz müşteri" şimdiden ufukta beliriyor - ve OOP programcısı sadece ters matrisi bulmak için bir yöntem ekliyor ve daha sonra bir buhar banyosu yapmamak için yol boyunca - tüm matris işlemlerini ekledi ve programcıların geri kalanını buhar banyosu yapmamak için dağıttı.

normal programlama, OOP ve "parlak fikirlerinizle" kodun neye dönüşeceğini fark etmeyi başarırsanız (kodunuz zaten ikinci görevden itibaren hacim olarak bir çığ gibi büyüyecek ve herhangi bir verimlilik sorunu yoktur) - etkili bir şekilde programlamanın ne olduğunu anlayacaksınız, oh, evet, tamamen unuttum - matrislerle çalışırken hataların da kontrol edilmesi gerekiyor - biraz daha çalışmanız gerekiyor))))))))))))) )

tartışmaya çalıştığınız şey - tüm dünyadaki programcıların uzun yıllara dayanan deneyimi çoktan geçti, hiçbir Bill Gates'in etkili olmadığı takdirde OOP'de programlamayı zorlayamayacağına inanın, hepsi projenin gelişme beklentilerine bağlıdır - eğer proje genişliyor - OOP olmadan zaman kaybedilecek ve esneklik ve evrensellik olmadan kapsamlı kod yazılacak

 
Andrei01 :

Pekala, farklı şeyleri patlayıcı bir karışım halinde karıştırmanız ve karıştırmanız gerekiyor. :)

Biri nesnel olan bilginin kaynağı, diğeri ise öznel olan alıcıdır, çünkü her zaman tüm bilgiyi değil, sadece bir kısmını algılayabilir.

hiçbir şey böyle değil. Bilgi, yalnızca belirli bir kaynağa ve hedefe uygulandığında anlamlıdır. Bizim için "mutlak" bilgi olamaz, çünkü ona dokunduğumuzda veya ölçtüğümüzde hemen öznel bir alıcı oluruz. Bir kaynakta nesnel bilginin varlığını kanıtlamanın veya çürütmenin temelde imkansız olduğu sonucu çıkar - bu, Tanrı'nın varlığı/yokluğu hakkında tartışmaya benzer.

Ve genel olarak konuşursak, bilgi kavramının kendisi yalnızca hem kaynak hem de alıcı seçildiğinde ortaya çıkar.

 
alsu :

hiçbir şey böyle değil. Bilgi, yalnızca belirli bir kaynağa ve hedefe uygulandığında anlamlıdır. Bizim için "mutlak" bilgi olamaz, çünkü ona dokunduğumuzda veya ölçtüğümüzde hemen öznel bir alıcı oluruz.

Elbette Duc, her zaman bir bilgi kaynağı vardır. Aksi takdirde, bilgilerin dikkate alınması anlamsızdır.

Kaynağı olmayan bilgi basitçe var olamaz. :) Objektif bir bilgi kaynağı varsa, o zaman ondan gelen bilgi kendi içinde objektif olacaktır. Bilgiyi alan kişi her zaman öznel olacaktır, ancak tüm bilgileri bozulma olmadan algılarsa nesnelliğe sonsuz doğrulukla yaklaşabilir.

 
IgorM :

- "mantığınız" ile - X[4] ve Y[4] dizisinden ve X[4] * Y[4] ile çarpma işlevinden ve elbette dönüştürme işlevinden oluşacak müthiş hızlı bir kod yazıyoruz iki boyutlu bir dizi biçimindeki aptal giriş / çıkış verilerini doğru verilere - tek boyutlu bir diziye ve tek boyutlu matrisler için eşdeğer dönüşümler yazarak matris cebirini incelemek için oturun

Ne yazık ki, size iletmeye çalıştığım basit şeyi hala anlamadınız, ama bunun faydasız olduğunu görüyorum çünkü bir tesisatçı (örneğin) aniden bir programcı olarak yeniden eğitim almaya karar verirse, o zaman yine de tesisatçı olarak kalır ve şöyle düşünür: asıl işi sahada döşenen boruların uzunluğu olan bir tesisatçı. :)

Programın optimalliği için kriter, kodun uzunluğu değil, belirli bir görev için işlem sayısıdır. Sadece iki boyutlu bir matrisi çarpmanız gerekiyorsa ve çok daha genel ve gereksiz durumları uygulayacaksanız, o zaman bu amatör performans için kimsenin size teşekkür etmeyeceğini söylemeye gerek yok.

 
Andrei01 : Bilgiyi alan kişi her zaman öznel olacaktır, ancak tüm bilgileri bozulma olmadan algılarsa nesnelliğe sonsuz doğrulukla yaklaşabilir.

Alıcının öznelliği, kaynaktan gelenleri yanlış kabul etmesi değil, gelen bu akışın onun için farklı şekillerde yorumlanabilmesidir. Aynı bit akışı tamamen farklı bilgiler olabilir, biliyor musunuz?

Andrei01 , üzgünüm ama neden buraya bir şeyler yazdığını anlamıyorum. Roborat için mi, yoksa ne için? Gönderileriniz, bu konu için faydalı bir sinyal içermeyen bir tür sel sesi olarak algılanıyor. Lütfen giden akışı filtreleyin: insanlar hala okuyor, robotlar değil...

 
Mathemat :

1. Alıcının öznelliği, kaynaktan gelenleri yanlış kabul etmesi değil, bu gelen akışın onun için farklı yorumlanabilmesidir. Aynı bit akışı tamamen farklı bilgiler olabilir, biliyor musunuz?

Andrei01 , üzgünüm ama neden buraya bir şeyler yazdığını anlamıyorum. Roborat için mi, yoksa ne için? Gönderileriniz, bu konu için faydalı bir sinyal içermeyen bir tür sel sesi olarak algılanıyor. Lütfen giden akışı filtreleyin - insanlar hala okuyor, robotlar değil...

1. Alıcının herhangi bir nedene bağlı olarak bilgiyi farklı yorumlaması, onun öznel olduğunu söylemekten başka bir işe yaramaz.

2. Matematik maalesef bu cümledeki anlamı yakalayamadım. Buna çok fazla gürültü ekledin. :) Bu arada, bu bilgi kaynağının da taşabileceğine, yani kasten anlamsız bilgiler üretebileceğine bir örnek. :)

 
Andrei01 :

Ne yazık ki, size iletmeye çalıştığım basit şeyi hala anlamadınız, ama bunun faydasız olduğunu görüyorum çünkü bir tesisatçı (örneğin) geçici olarak bir programcı olarak yeniden eğitim almaya karar verdiyse, o zaman hala bir tesisatçı olarak kaldı ve bir tesisatçı gibi düşünüyor. asıl işi yere döşenen boruların uzunluğu olan tesisatçı. :)

Programın optimalliği için kriter, kodun uzunluğu değil, belirli bir görev için işlem sayısıdır. Sadece iki boyutlu bir matrisi çarpmanız gerekiyorsa ve çok daha genel ve gereksiz durumları uygulayacaksanız, o zaman bu amatör performans için kimsenin size teşekkür etmeyeceğini söylemeye gerek yok.


ne yazık ki, sadece "sorunu yarasadan" çözme açısından düşünüyorsunuz ve programın işleyişinin algoritmasında gelecekteki değişiklikleri düşünmüyorsunuz

hareket halindeyken problem çözme - bunlar oldukça özel görevlerdir, uygulama kolaylığı nedeniyle 20-30 dakika içinde çözülürler veya bu görevler daha büyük projelerde uygulanmıştır

C-4 , MACD tabanlı ticaret algoritmalarının geçmişte kaldığını zaten söyledi, tekrar etmeyeceğim

Not: kod optimizasyonunda en azından bazı gelişmeleri inceleyin, eğer bu sizin için can sıkıcı bir noktaysa, burada insanlar materyal üzerinde çalıştılar: http://www.realcoding.net/article/rubric/code_optim?page=6

Bu konuya bir kez daha veda ediyorum, tekrara gerek görmüyorum, OOP'nin ne olduğunu ve nasıl etkin program yazılacağını anlamak isteyenler kendi kendilerine anlayacaklarını veya google'a yazacaklarını düşünüyorum.

 
Andrei01 : 1. Alıcının herhangi bir nedene bağlı olarak bilgiyi farklı yorumlaması, onun öznel olduğunu söylüyor.

Yine öyle değil. Gelen akışın yorumlanması, alıcının üzerinde duran ve Oyun için koşulları belirleyen kişinin görevidir. Alıcı demirdir, Game Master tarafından kendisi için belirlenen algoritmaya göre bilgileri öğütür. Bu anlamda tamamen ve kesinlikle nesneldir, çünkü aptal bir demir parçasıdır. Ve Usta özneldir.

Çözülmekte olan problemin bağlamına bağlı olarak bilginin farklı şekillerde tanımlanabileceğini biliyor musunuz?

Neden: