Algoritmalar, karar yöntemleri, performanslarının karşılaştırılması - sayfa 12

 
Sergey Dzyublik :

1. Çözümünüzde bir sihirbaz bulmak ortalama kaç mikrosaniye sürer?

2. Çözümünüzü bir EA'ya entegre etmek (size göre) ne kadar kolay?

 
Artyom Trishkin :

Şahsen, Peter'ın azmini farklı bir yöne yönlendirmesini istiyorum - bahçeleri çitle çevirmek için değil, ona ne teklif edildiğini anlamak için.

Teşekkür ederim. İyi niyet her zaman hoştur.

Yani ben sebze bahçeleri dikiyorum ve siz bana bir şeyler sunmaya çalışıyorsunuz. İyi.

Sergey Dzyublik tarafından yayınlanan çözüm hakkında ne düşünüyorsunuz?

Açıkçası, bu önerdiğiniz karar tarzıdır.

O zaman lütfen bana söyle:

1. Bu çözüm, bir Expert Advisor'a nasıl kolay ve hızlı bir şekilde entegre edilebilir?

2. Basit çözümümden nasıl daha iyi olur?

 

Beni düzeltin ama dize uzunluğu sonlu değil mi?

https://msdn.microsoft.com/en-us/library/sx08afx2.aspx

MQL5 için bu sınırlamayı bulamıyorum ...

Максимальная длина строки
Максимальная длина строки
  • msdn.microsoft.com
В режиме совместимости с ANSI требуется, чтобы компилятор принимал до 509 символов в строковом литерале после объединения. Максимальная допустимая длина строкового литерала в Microsoft C — приблизительно 2048 байтов. Однако если строковый литерал состоит из двух частей, заключенных в двойные кавычки, препроцессор объединяет эти части в одну...
 
Реter Konow :

Teşekkür ederim. İyi niyet her zaman hoştur.

Yani, ben bahçeler yapıyorum ve siz bana bir şeyler sunmaya çalışıyorsunuz. İyi.

Sergey Dzyublik tarafından yayınlanan çözüm hakkında ne düşünüyorsunuz?

Açıkçası, bu önerdiğiniz karar tarzıdır.

O zaman lütfen bana söyle:

1. Bu çözüm, bir Expert Advisor'a nasıl kolay ve hızlı bir şekilde entegre edilebilir?

2. Basit çözümümden nasıl daha iyi olur?

Numara. Size yabancı bir çözüm tarzı önermiyorum. Kendi tarzınızda yazın - kimse kimseye bir şey dayatmaz.

Ancak, karakteristik azimle, sorunları en baştan en iyi şekilde çözmenizi öneririm. Ne yapıyorsun? Başlangıçta mümkün olan en uygun olmayan çözümü seçersiniz ve onu her yönden yenmeye başlarsınız. Bu görev için, çözümü düşünme aşamasında bile, yalnızca seçeneğinizden vazgeçmek değil, aynı zamanda bu yönde düşünmemek bile gerekliydi - metinle çalışmak çok kaynak tüketiyor. Ve metin işlevleri bunun için değil.

Bir Expert Advisor entegrasyonuna ve önerilen çözümün avantajlarına gelince, bunu öneren kişinin size cevap vermesine izin verin.

 
Artyom Trishkin :

Numara. Size yabancı bir çözüm tarzı önermiyorum. Kendi tarzınızda yazın - kimse kimseye bir şey dayatmaz.

Ancak, karakteristik azimle, sorunları en baştan en iyi şekilde çözmenizi öneririm. Ne yapıyorsun?

1. Başlangıçta mümkün olan en uygun olmayan çözümü seçersiniz ve onu her yönden yenmeye başlarsınız. Bu görev için, çözümü düşünme aşamasında bile, yalnızca seçeneğinizden vazgeçmek değil, aynı zamanda bu yönde düşünmemek bile gerekliydi - metinle çalışmak çok kaynak tüketiyor. Ve metin işlevleri bunun için değil.

2. Expert Advisor'a entegrasyona ve önerilen çözümün avantajlarına gelince - bunu öneren kişinin size cevap vermesine izin verin.

1. Uygulama açısından, bunlar gerçeklerle savaştığınız boş sözlerdir. Sihirbazı aramak için zamanlayıcıyı gösterdim. Çözümü bir Uzman Danışmana entegre etmenin kolaylığını gösterdim. Kararımı sadece iftira olarak gösteriyorsun. Başka hiçbir şey.

2. Danışmana entegrasyon anahtardır . Çözüm çok kafa karıştırıcıysa (eminim Sergey Dzyublik'in çözümünün nasıl çalıştığını bile açıklayamazsınız), o zaman bir tüccar için pratik değeri nedir? Süper karışık çözümlerden normal bir Uzman Danışman oluşturmak imkansızdır.

Sergey Dzyublik'in çözümünü yargılamıyorum. Henüz açıklamadı. Açıkladığında, kimin "bahçeyi çitle çevirdiği" netleşecek.

 
Sergey Dzyublik :

  1. Neden stil, önce arayüzler, sonra sınıflar (ilgili arayüzlerin mirasçıları olarak) yazılacak şekildedir?
  2. Bu neden yapılıyor?

 // TODO bypass the problem with explicit template specialization
template < typename T>
IGenerator<T>* CreateGenerator(){
   string generatorName = typename (T);
   StringToUpper (generatorName);
   
   if (generatorName == "INT" ){
       return new IntGenerator();
   }
    
   return NULL ;
}


Belli ki unutmuş

       delete generator;
      
       return TEST_DURATION( "GetValue" );


Bunu CArrayList aracılığıyla yapmalarına ve az önce tartışılan HashMap'i kullanmamalarına biraz şaşırdım. İşlemlerin bilet değil endeks olduğu yazarın çarpık orijinaline odaklanmaya değmezdi.

HashMap büyük ihtimalle daha görsel, daha pratik ve daha hızlı olacaktır.


Böyle bir kodu kolaylıkla okuduğuma kendi kendime şaşırdım. Ancak kendisi henüz programlamada gösterilen soyutlama seviyesine ulaşmadı. Bana prosedürel stil + OOP iken. Bu saf OOP. Görünüşe göre, bu bir tür iyi öğrenilmiş programlama okulu. Bu kaynakta sadece Stanislav Korotky'den benzer bir soyutlama seviyesi gördüm.

 
Реter Konow :

1. Uygulama açısından, bunlar gerçeklerle savaştığınız boş sözlerdir. Sihirbazı aramak için zamanlayıcıyı gösterdim. Çözümü bir Uzman Danışmana entegre etmenin kolaylığını gösterdim. Kararım üzerine sadece iftira atıyorsun. Başka hiçbir şey.

2. Danışmana entegrasyon anahtardır . Çözüm çok kafa karıştırıcıysa (eminim Sergey Dzyublik'in çözümünün nasıl çalıştığını bile açıklayamazsınız), o zaman bir tüccar için pratik değeri nedir? Süper karışık çözümlerden normal bir Uzman Danışman oluşturmak imkansızdır.

Sergey Dzyublik'in çözümünü yargılamıyorum. Henüz açıklamadı. Açıkladığında, bahçeyi kimin çitle çevirdiği ortaya çıkacak.

Gururlu olanlarla ne zor. Fazla gururlu.

Sanırım sessiz kalsam iyi olacak - daha yapılması gereken çok şey var. Burada ilgileniyorum çünkü Vasily tarafından gündeme getirilen konu, hazırladığım konuyla güçlü bir şekilde kesişiyor.

Ve azim ve gururun - onlar sadece senin ve başka kimse ilgilenmiyor.

Bu cevap sizin için doğru mu?

 
Artyom Trishkin :

Gururlu olanlarla ne zor. Fazla gururlu.

Sanırım sessiz kalsam iyi olacak - daha yapılması gereken çok şey var. Burada ilgileniyorum çünkü Vasily tarafından gündeme getirilen konu, hazırladığım konuyla güçlü bir şekilde kesişiyor.

Ve azim ve gururun - onlar sadece senin ve başka kimse ilgilenmiyor.

Bu cevap sizin için doğru mu?

Epeyce. Gururdan başka bir şey değil. Kendini onaylama mümkündür.

Ama bu herkes için.

 
Реter Konow :

Epeyce. Gururdan başka bir şey değil. Kendini onaylama mümkündür.

Ama bu herkes için.

Şimdiye kadar, kendinizi çok garip bir insan olarak kabul ettiniz. Kesinlikle bilgisiz ve dükkandaki yoldaşlardan kesinlikle bahşiş kabul etmiyor.

Çoğunluğun doğasında var - yaşam boyunca çalışmak, gerekli bilgiyi elde etmek, kafirlerini gereksiz olarak geçmek.
Çoğu insan hatalarının farkındadır ve verilen ipuçları ve yardım için minnettardır. Ama ne yazık ki, senin için değil.

Devam et.

 
Artyom Trishkin :

Şimdiye kadar, kendinizi çok garip bir insan olarak kabul ettiniz. Kesinlikle bilgisiz ve dükkandaki yoldaşlardan kesinlikle bahşiş kabul etmiyor.

Çoğunluğun doğasında var - yaşam boyunca çalışmak , gerekli bilgiyi elde etmek, yanlışlarını gereksiz olarak silmek .
Çoğu insan hatalarının farkındadır ve verilen ipuçları ve yardım için minnettardır. Ama ne yazık ki, senin için değil.

Devam et.

Düşünmenin birçok dogması ve klişesi vardır .

Anlamaya alışkın olduğunuzdan farklı bir şekilde öğreniyorum. Bilgileri kendi eleştirel düşüncemin prizmasından geçiriyorum ve bu süreçte neyin değerli neyin değersiz olduğunu anlıyorum.

fazlalıkları atıyorum. Geriye kalan, kabul ettiğim çıplak özdür.

Başka bir deyişle, düşüncesizce ve tamamen kabul edenlerin aksine, bilgiyi bilinçli ve parçalı olarak "tüketiyorum".

Bilgi (işe yarıyorsa) düşünmenin süzgecinden geçmelidir.


Hatalarımı, onlara ikna olduğum anda anlıyorum. Bugüne kadar kimse kararımın yanlış olduğunu kanıtlayamadı . Bekleyecek.