Benim yaklaşımım. Çekirdek - Motor. - sayfa 50

 
Georgiy Merts :

Vitaly, sorun şu ki Peter bir hafıza devi. Nerede ve hangi indekslere sahip olduğunu, ne anlama geldiğini, hangi bağlantılara ve nerede olduğunu unutmaz.

Böyle şık bir hafıza ile - OOP çanları ve ıslıkları - sadece ekstra hareketler ve bazı performans düşüşleri. Neden o?

OOP, bir hafta içinde, bir değişkenin neden bu yerde değiştirilebileceğini, ancak bir sonrakinde neden değiştirilebileceğini artık hatırlamayanlar içindir. Kapsüllemeye, genel, korumalı ve özel sınıf bölümlerine, sanal arayüzlere, polimorfizme ihtiyaç duyanlar onlardır ... Ve her şey bir bilgisayar gibi bellekte olduğunda, herhangi bir OOP eklentisi olmadan her nesneye doğrudan erişmek çok daha kolaydır. .

Peter'a, nesneleri geçerken referansların sayısını dikkate alan bir akıllı işaretçiler sınıfı sunun ve sonra, kimse onlara başvurmadığında, bunlar silinir! Peter şaşıracak, her bir nesnenin ne zaman oluşturulduğunu, kaç kullanıcısı olduğunu, ne kadar süreyle var olması gerektiğini ve ne zaman silinmesi gerektiğini çok iyi hatırlıyor. Bunları kullanmanın ne anlamı var?


Hayır, bu da mümkün. Tek bir sorum var - KİM İÇİN? Peter, "bu tür kullanıcılardan oluşan bir katman oluşturacağını" iddia ediyor. Peki, peki... Bakalım.

İyi bir hafıza kesinlikle iyidir :) Ama hafızanın öyle bir özelliği var ki, yaşlandıkça bozuluyor veya seçici oluyor. Bir şeyi çok iyi hatırlıyorsun ama önemsiz olduğunu düşündüğün bir şey anında kafandan uçup gidiyor. :)

 
Yury Kulikov :

Garip bir rekabet ruhun var :)

Burada ilgi uğruna ve GUI'nizi böyle bir programın bir analogunu oluşturmak için kullanabilirsiniz:


Program, 2013 yılında iki ayda yazılırken, bir başka paralel proje de uygulanmaya devam ediyor.

Program en son 2014 yılında derlenmiştir, olaylar olabilir :)

Programı değişim enstrümanlarında çalıştırmak daha iyidir.

Moderatörler için açıklama: Bu program piyasada yok.

Güzel, güçlü GUI. Mekaniğinin %85'ini yapıcıyı kullanarak yeniden üretebilirim. Ayrıca "sürükle ve bırak", dinamik pencerelerim var. Gerisi programın görevidir (hücrelerde yanıp sönen sayılar, işlevler olarak adlandırılır ).

Talimatları olan pencerelere gelince - bu da tekrarlanabilir. Kısacası benim versiyonumda görünüm biraz farklı olacak ama işlevsellik hemen hemen aynı olacak.

Ancak ölçek ve sayılar benim için uygulanmadı. Ve ölçekleme yok.

Ancak, bu GUI'nin aksine, grafiklerim daha güzel olacak. Gradyanlar, simgeler, güzel çerçeveler, gölgeler... Öğelerin tümü elle çizilmiş.

Ancak modern bir pazar için ürününüz çok güçlüdür. Belki de en güçlülerinden biri.

Ve birkaç kişinin satın aldığı gerçeği - test kâsesine teşekkür edin. Kendileri dışında tüm ürünleri anlamsız hale getirdiler.

 
Igor Makanu :

Ve neden bu yeni tarz?

Size 30-100 sipariş için panelin geliştirilmesi için bir sipariş olduğunu yazdılar, daha sık değil, daha az sıklıkta oluyor

serbest çalışmak istiyorsanız https://www.mql5.com/ru/search#!keyword=%D0%BF%D0%B0%D0%BD%D0%B5%D0%BB%BB%D1%8C&module= adresini arayın. mql5_module_jobs

tüm talep bu ve ticaret panellerinin gerekli olduğunu ve paneldeki analiz ve takvimlerle kimsenin ilgilenmediğini unutmayın.

Not: Zor Joe hakkında bir şaka duydunuz mu? Tüm saygımla, ama GUI'niz iyi, ancak birkaç kişi ilgileniyor, daha az çabayla dll kullanarak herhangi bir sonuç alabilirsiniz, kullanıcıların ihtiyaç duyduğunu düşündüğünüz bir panel yapın ve Market'te bir ay içinde istatistikler olacak.. .

Not: C# .Net ile hiç uğraşmak istemedim, ancak geliştiriciler destek verdiğinden, bir form tasarımcısı olan SharpDevelop (14 Mb) ve google'dan basit bir c derleyicisi aramak için bir saat harcamak zorunda kaldım . dll, her şey çalışıyor ve işte bu "dönüyor", kelimenin tam anlamıyla ellerimle yazdığım kodun kendisi - 3 satır !!!

MQL geliştiricileri, C#'da .dll ile basit bir iş yaptı, bitmiş dll'yi Libraries klasörüne attı ve .dll'nin adını uzmanın ilk satırlarına yazdı - hepsi bu ;)

Anlamak istemediğin şey bu. Kimin umrunda? Sürümünüz kitleler için değil.

İnsanlar kâr peşinde. Bu aramada, aynı test cihazı kaselerine sabitlendiler. Yani, test edenin ifadesine dayalı olarak zenginleştirmeyi vaat eden programlar. Herşey. Sonraki bir çıkmaz sokak.

Sonsuza kadar sürecek mi? Test cihazına her zaman güvenecekler mi? On binlerce "ölü" robota baktıklarında asla hayal kırıklığına uğramayacaklar mı?

Bu çıkmazdan çıkmanın bir yolunu öneriyorum. Kullanıcının eylemlerinden sorumlu olacağı yarı otomatik programlar.

Kimsenin buna ihtiyacı olmadığını mı düşünüyorsun? Hatalısınız.

 
Алексей Тарабанов :

Peter, evet, işin aslı orada kullanılacak hiçbir şey yok. Herhangi bir pencere ya sadece bir dekorasyon ya da bir diyalog noktasıdır. Diyalog noktası, bu diyaloğa duyulan ihtiyacı ima eder.

Burada bir tüccar olduğunuzu ve programın size bir şey sorduğunu hayal edin. Senden bilmesi gerekiyor. Sana ne sorabilir ve sen bu soruyu bir butonla ya da bir formla cevaplayabilirsin? Bu konudaki fikrinizle ciddi şekilde ilgileniyorum - kırılmadıysa cevap verin.

Ve ikinci durum: programın çalışmasına müdahale etmenin gerekli olduğunu düşünüyorsunuz - hangi düğme/form bunu etkili bir şekilde yapmanıza izin verecek?

Faaliyetlerin otomasyonunun bu faaliyeti otomatikleştirenlerin görevi olduğu konusunda kesinlikle size katılıyorum, ancak bu alanda bir insan-makine arayüzü geliştirmek için bir araç takımının yaratıcısı olduğunuzu iddia ediyorsunuz. Düğmelerin ve formların arayüzü veya tüm MT grafik nesneleri ile tam teşekküllü çalışmaya izin veren normal bir GUI; nesne arabirimi mi yoksa kesintiler de mi var?

Bir standart oluşturduğunuzu iddia ediyorsunuz; Ben, bir şeyi otomatikleştirerek, benim tarafımdan oluşturulan grafiklerle herhangi bir veya hemen hemen her işlemin arayüzünüz tarafından kabul edileceğini farz ediyorum. Yoksa birbirimize ihtiyacımız yok.

Herhangi bir pencerenin birkaç olası işlevi olabilir:

  1. İletişim noktası ( iletişim kutusu ).
  2. Ayarlar penceresi.
  3. Bildirim penceresi.
  4. Bilgi çıkış penceresi (tablo).
  • Program, örneğin, mevcut stratejinin yeniden optimize edilmesini isteyebilir.
  • Son günlerde zayıf istatistikler nedeniyle ticaret algoritmasının yürütülmesinin sona ermesi hakkında.
  • Piyasa durumu değiştiğinde parametrelerin ayarlanması hakkında.
  • Çok daha fazlasını düşünebilirsiniz.
Bence ticaret zaman ve para kaybıdır. Ama başkalarının ne düşündüğü onların işi. Kimin umrunda? Programın çalışmasına müdahale etmenin gerekli olduğuna inananlar ve bunun gerekli olmadığına inananlar her zaman olacaktır. Neden kafanı bu sorularla dolduruyorsun? Birinci ve ikinci programlar yapmak ve satmak daha iyidir.
 
Реter Konow :

Herhangi bir pencerenin birkaç olası işlevi olabilir:

  1. İletişim noktası (iletişim kutusu).
  2. Ayarlar penceresi.
  3. Bildirim penceresi.
  4. Bilgi çıkış penceresi (tablo).
  • Program, örneğin, mevcut stratejinin yeniden optimize edilmesini isteyebilir.
  • Son günlerde zayıf istatistikler nedeniyle ticaret algoritmasının yürütülmesinin sona ermesi hakkında.
  • Piyasa durumu değiştiğinde parametrelerin ayarlanması hakkında.
  • Çok daha fazlasını düşünebilirsiniz.
Bence ticaret zaman ve para kaybıdır. Ama başkalarının ne düşündüğü onların işi. Kimin umrunda? Programın çalışmasına müdahale etmenin gerekli olduğuna inananlar ve bunun gerekli olmadığına inananlar her zaman olacaktır. Neden kafanı bu sorularla dolduruyorsun? Birinci ve ikinci programlar yapmak ve satmak daha iyidir.

İşte nedeni ve cevabı!

 
Vitalii Ananev :

İyi bir hafıza kesinlikle iyidir :) Ama hafızanın öyle bir özelliği var ki, yaşlandıkça bozuluyor veya seçici oluyor. Bir şeyi çok iyi hatırlıyorsun ama önemsiz olduğunu düşündüğün bir şey anında kafandan uçup gidiyor. :)

Senin de öyle bir hafızan var (ben de öyle).

Peter's tamamen farklıdır ve sadece yıllandıkça daha da güzelleşir, tıpkı kaliteli şarap gibi. Peter her zaman yazdığı her şeyi, nasıl ve neden ve aynı zamanda ne düşündüğünü hatırlar. Yani gerçekten OOP'ye ihtiyacı yok.

Peter'ın hafızasını kıskanıyorum.

 
Реter Konow :

Mekaniğinin %85'ini yapıcıyı kullanarak yeniden üretebilirim.

Şüpheler alır :) Sadece pencereler, düğmeler, kontroller ... Ama bu en az olanıdır.

Arayüzünüz DOM trafiğini bile işleyemeyecek ve ayrıca birkaç gösterge çizmeniz gerekiyor.

Evet ve bu, minimum tuval kullanımıyla gui kitaplığının ilk sürümüdür, şimdi metin girişi dışında her şey tuval üzerinde zaten uygulanmaktadır.

 
Реter Konow :

İnsanlar kâr peşinde. Bu arayışta, aynı test kâsesine takılıp kalmışlardır. Yani, test edenin ifadesine dayalı olarak zenginleştirmeyi vaat eden programlar. Herşey. Sonraki bir çıkmaz sokak.

Sonsuza kadar sürecek mi? Test cihazına her zaman güvenecekler mi? On binlerce "ölü" robota baktıklarında asla hayal kırıklığına uğramayacaklar mı?

Neden "ölü" olsun ki???

HERHANGİ bir robotun kazanç dönemleri vardır. HİÇ. Ligdeki en kötü TC'lerimin bile kısa kazanç dönemleri var. Yani - "ölü" olarak adlandırılamazlar.

Kıyafetlerde olduğu gibi. Elbette şort, parmak arası terlik ve panama Arkhangelsk'in hiçbir yerinde yaşam için uygun değil. Ama bunun "ölü kıyafetler" olduğunu iddia etmeyeceksiniz! Üstelik bazı günlerde Arkhangelsk'te bile giyilebilir.

Ve tam tersi - Karadeniz kıyısında, koyun derisi paltolar ve kürklü botlar yaz aylarında aptal görünüyor. Bununla birlikte, bazen Karadeniz kıyısında çok ihtiyaç duyulmaktadır.

Robotlarda da öyle - her pazarın kendi robotu var. Ve tüccarın görevi, şu anda piyasaya uygun olan robotu tam olarak seçmektir. Bu yüzden nasıl ki şort ve panama'da kimsenin hayal kırıklığına uğramaması, kürklü bir montta kimsenin hayal kırıklığına uğramaması gibi "insanlar hayal kırıklığına uğrayacak" demek mümkün değil. Sadece sıcakken - ilkini ve soğukken - ikinciyi giymeniz gerekir.


Test cihazı bir engel değildir ve her derde deva değildir. Pazarın son zamanlarda ne olduğundan bahsediyor ve ona uygun bir araç seçmenize izin veriyor. Ancak bu, önümüzdeki günlerde pazarın değişmeyeceği ve aracın buna karşılık gelmeyeceği anlamına gelmiyor. Ancak yine de tarihe sızmış bir robota, tarihe kar etmiş bir robot tercih edilir.

Öte yandan manuel ticaret, yalnızca geniş bir deneyime sahipseniz sürekli olarak karlı olabilir. Sadece ne zaman ve hangi tekniğin uygulanacağını anlamak için. Sence birçok insanda var mı?

 
Yury Kulikov :

Şüpheler alır :) Sadece pencereler, düğmeler, kontroller ... Ama bu en az olanıdır.

Arayüzünüz DOM trafiğini bile işleyemeyecek ve ayrıca birkaç gösterge çizmeniz gerekiyor.

Evet ve bu, gui-kütüphanenin minimum tuval kullanımıyla ilk sürümüdür, şimdi metin girişi dışında her şey tuval üzerinde zaten uygulanmaktadır.

Yapıcı evrensel çözümler için tasarlanmıştır. Programınız belirli görevler için uyarlanmıştır.

Yapıcıda bir bardak yapabilir ve çalıştırabilirsiniz ve işe yarayacaktır. Ancak herhangi bir gösterge çizmek henüz Yapıcı'nın görevlerinin bir parçası değil.

Bu, kullanıcı tarafından programında yapılabilir.


Ve cam trafiğinin çekmeyeceği gerçeği hakkında:



Gif'i görmek için resme tıklayın. Üzerinde görebileceğiniz gibi, tablo öğelerini yeniden çizme hızı, DOM trafiğini çekecek kadar yüksektir (orada daha da fazla hücre vardır).

 
Реter Konow :

Ve cam trafiğinin çekmeyeceği gerçeği hakkında:

Gif'i görmek için resme tıklayın. Üzerinde görebileceğiniz gibi, tablo öğelerini yeniden çizme hızı, DOM trafiğini çekecek kadar yüksektir (orada daha da fazla hücre vardır).

Oluşturma hızından değil, gui'niz ile kullanıcı programı arasındaki trafikten (değişim) bahsediyordum.

Tabii ki, herhangi bir program belirli bir görev için uyarlanmıştır, ancak örneğin standart kitaplığın yardımıyla pencereye hareketli bir nesne ekleyebilirsiniz, ancak GUI'nizde değil, bunu sormanız gerekir :(