OOP'nin bir uygulaması hakkında - sayfa 5

 
Dmitry Fedoseev :

Ama bir fark var, her zaman yazmak için böyle:

SymbolInfoDouble(Symbol(),SYMBOL_ASK) 

veya bunun gibi:

s.Ask() 

?

Ve arasında bir fark var:

a<-b

ve

for(i = 1; i < 1000; i++)

{

a[i] = b[i];

}

Ancak daha ilginç olanlar var, örneğin:

c <- b*a

burada tüm tanımlayıcılar matrislerdir ve bu matris işlemini gerçekleştirmek için Windows için en verimli kod kullanılır.

??????

Bu, onunla alakalı değil

MQL4 vardı - basitlik ve özellikler arasında mükemmel bir şekilde dengelenmiş bir dil, ama hayır, bir grup kodlayıcı "güzellikler" hakkında konuşmaya başladı ve bir türlü sakinleşemiyor. Böylece zhOPPu ve MİRAS kayıplarını aldık.

 
СанСаныч Фоменко :

Ve arasında bir fark var:

a<-b

ve

for(i = 1; i < 1000; i++)

{

a[i] = b[i];

}

Ancak daha ilginç olanlar var, örneğin:

c <- b*a

burada tüm tanımlayıcılar matrislerdir ve bu matris işlemini gerçekleştirmek için Windows için en verimli kod kullanılır.

??????

Bu, onunla alakalı değil

MQL4 vardı - basitlik ve özellikler arasında mükemmel bir şekilde dengelenmiş bir dil, ama hayır, bir grup kodlayıcı "güzellikler" hakkında konuşmaya başladı ve bir türlü sakinleşemiyor. Böylece, zhOPPu ve MİRASAL kayıplar elde ettik.

Matrisler ve sayılarla çalışan dilleri karşılaştırmak yanlıştır.
 
СанСаныч Фоменко :

Ve arasında bir fark var:

a<-b

ve

for(i = 1; i < 1000; i++)

{

a[i] = b[i];

}

Ancak daha ilginç olanlar var, örneğin:

c <- b*a

burada tüm tanımlayıcılar matrislerdir ve bu matris işlemini gerçekleştirmek için Windows için en verimli kod kullanılır.

??????

Bu, onunla alakalı değil

MQL4 vardı - basitlik ve özellikler arasında mükemmel bir şekilde dengelenmiş bir dil, ama hayır, bir grup kodlayıcı "güzellikler" hakkında konuşmaya başladı ve bir türlü sakinleşemiyor. Böylece zhOPPu ve MİRAS kayıplarını aldık.

Neydi, her şey kaldı. İstemiyorsanız, OOP kullanmayın. OOP'a dokunamazsınız, onu düşünmeyin, eskisi gibi yaşayın.

Bir pozisyon açmadan önce "c <-b*a" dan sonra yine de bir takım işlemleri gerçekleştirmeniz gerekir, bunları OOP kullanarak yaparsanız hayat daha keyifli ve eğlenceli hale gelir.

Neden bu programlardan pozisyon açmanın imkansız olduğu ve genel olarak doğrudan işlemlerin yürütülmesine bağlı olmadıkları gerçeğinden R veya Matlab'ın yaratıcılarından memnuniyetsizliği ifade etmiyorsunuz? Ayrıca herhangi bir programlama diline de ulaşabilirsiniz, neredeyse hiçbir dilde matrisler vb. Farklı kategorilerdeki şeyleri karşılaştırıyorsunuz.

 
Dmitry Fedoseev :

Neydi, her şey kaldı. İstemiyorsanız, OOP kullanmayın. OOP'a dokunamazsınız, onu düşünmeyin, eskisi gibi yaşayın.

Bir pozisyon açmadan önce "c <-b*a" dan sonra yine de bir takım işlemleri gerçekleştirmeniz gerekir, bunları OOP kullanarak yaparsanız hayat daha keyifli ve eğlenceli hale gelir.

Neden bu programlardan pozisyon açmanın imkansız olduğu ve genel olarak doğrudan işlemlerin yürütülmesine bağlı olmadıkları gerçeğinden R veya Matlab'ın yaratıcılarından memnuniyetsizliği ifade etmiyorsunuz? Ayrıca herhangi bir programlama diline de ulaşabilirsiniz, neredeyse hiçbir dilde matrisler vb. Farklı kategorilerdeki şeyleri karşılaştırıyorsunuz.

OOP kullanarak ekleyeceğim, gerekirse, matris işlemlerini uygulayan ve içinde + - * / = geçersiz kılan bir CMatrix sınıfı oluşturabilirsiniz.

Ve her şey aynı derecede kolay olacak. Bence CMatrix oluşturmanıza bile gerek yok, her şey uzun zamandır kütüphanelerden birinde uygulanıyor.

CMatrix m1, m2;
// заполняем матрицы
CMatrix m3 = m1 + m2;

Bu arada, şimdi San Sanych'i üzeceğiz)) Sevgili, en sevdiğin R'nin iki OOP sistemi içerdiğini biliyor musun?)))))))) Sadece kederle içmeyin)))

R. İstatistiksel veri analizi için kullanılan bu dil ayrıca 2 nesne yönelimli programlama sistemine sahiptir - S3 ve S4. Her ikisi de S dilinden miras alınır (R'nin ticari S'nin açık kaynaklı bir uygulaması olduğu göz önüne alındığında bu şaşırtıcı değildir). S4, çoğunlukla modern ana akım dillerdeki OOP uygulamalarına karşılık gelir. S3, temel olarak dil aracılığıyla uygulanan daha hafif bir seçenektir: alınan nesnenin "sınıf" özniteliği tarafından istekleri gönderen ortak bir işlev oluşturulur.

 
Alexey Volchanskiy :

OOP kullanarak ekleyeceğim, gerekirse, matris işlemlerini uygulayan ve içinde + - * / = geçersiz kılan bir CMatrix sınıfı oluşturabilirsiniz.

Ve her şey aynı derecede kolay olacak. Bence CMatrix oluşturmanıza bile gerek yok, her şey uzun zamandır kütüphanelerden birinde uygulanıyor.

Mümkün ama burada SanSanch bunun en iyi şekilde yapılmayacağını, bu R'de olduğu gibi, SanSanych'e göre bu matris işlemlerinin en iyi şekilde, muhtemelen saf assembler ile kodlama yaparak yapılmayacağı cevabını verecektir.

R ile farkı, R'de her şey hazır, sadece al ve kullan, ama burada her şeyi kendin yapmak zorundasın.

 
Dmitry Fedoseev :
Mümkün, ancak burada SanSanch bunun en iyi şekilde yapılmayacağını, bu R'de olduğu gibi, SanSanych'e göre bu matris işlemlerinin en iyi şekilde, muhtemelen saf assembler'da kodlama yaparak yapılmayacağını söyleyecektir.

Önceki gönderimi güncelledim - R'nin OOP'ye sahip olduğu ortaya çıktı. Korku))

Bu arada, bu R'yi denedim - nadir bir fren. Bu şaşırtıcı değil - tercüman. Yani asma yok.

 
Alexey Volchanskiy :

Önceki gönderimi güncelledim - R'nin OOP'ye sahip olduğu ortaya çıktı. Korku))

Bu arada, bu R'yi denedim - nadir bir fren. Bu şaşırtıcı değil - tercüman. Yani asma yok.

Kedi pişirmeyi bilmiyorsun, kapa çeneni...

R. İstatistiksel veri analizi için bu dil ayrıca 2 nesne yönelimli programlama sistemine sahiptir.

Ne olmuş? MQL'de olmayan daha birçok şey var. Ne olmuş?

Bu, onunla alakalı değil. Konu alanı ile ilgili olarak belirli bir olasılık eşiğinden sonra bir dilin diğerine göre algoritmik üstünlüğü hiç önemli değildir.

Burada çiğnemek koderovskuyu vkusovschina ve şahsen ben ticaret uğruna buradayım.

not.

Matris sınıflarınızın matris işlemleri için Intel'in kitaplığını kullanması gerekecek ve bu konuda R ile eşit olabilirsiniz.

 
Vasiliy Sokolov :

İşte buradasın. Standart kitaplıkta ticaret sınıfı hiyerarşisi:

Bundan , para yönetimi modülünün bir uzman olduğu anlaşılmaktadır. İzleyen durdurma da bir uzmandır. Bir uzman diğer uzmanları içerir. Bu tutarsız miras, hem takip hem de para yönetiminin temeldeki EA'nın bazı özel verilerine ve yöntemlerine erişim gerektirmesinden kaynaklanır.

Şey, bu sadece sınıf sisteminin düşünceli olmaması.

Öte yandan, EA şablonum tamamen Standart Kitaplık sınıflarına dayanıyor ve herhangi bir özel sorun görmüyorum. "Uzman parça fabrikası" ideolojisi uygulanıyor. Bir sınıf kullanıcısı için bir Uzman Danışman yazmak, aynı fabrikayı yazmaktan ibarettir; bu fabrika bir girdi üreteci, filtreler, SL-TP tanımlayıcıları ve TS'nin diğer bileşenlerini oluşturabilir.

 
СанСаныч Фоменко :

MQL4 vardı - basitlik ve özellikler arasında mükemmel bir şekilde dengelenmiş bir dil, ama hayır, bir grup kodlayıcı "güzellikler" hakkında konuşmaya başladı ve bir türlü sakinleşemiyor. Böylece zhOPPu ve MİRAS kayıplarını aldık.

Bir şey anlamıyorum... Peki, MQL5 yeniliklerini kullanmayın, hepsi bu.

Kalıtım ve sanal işlevleri gerçekten seviyorum. Ancak, basit bir şeyi hızlıca yapmak istediğinizde, onları kullanmıyorum. Aynı zamanda, karmaşık verilerin karmaşık işlenmesi gerektiğinde, OOP ile çok daha uygundur ve en önemlisi, daha fazla destek de büyük ölçüde basitleştirilir.

 
George Merts :

Bir şey anlamıyorum... Peki, MQL5 yeniliklerini kullanmayın, hepsi bu.

Kalıtım ve sanal işlevleri gerçekten seviyorum. Ancak, basit bir şeyi hızlıca yapmak istediğinizde, onları kullanmıyorum. Aynı zamanda, karmaşık verilerin karmaşık işlenmesi gerektiğinde, OOP ile çok daha uygundur ve en önemlisi, daha fazla destek de büyük ölçüde basitleştirilir.

Anlamlı bir ticaret için çok tatsız bir durum olmasa bile, size tamamen katılıyorum: MQL, tekliflerin istatistiksel olarak işlenmesi için araçlara sahip değildir. Bu, özellikle R ile uğraşırken fark edilir. Herhangi bir önemseme, programlama gerektirir. Ve model hakkında genellikle sessiz kalırım.

Ama hepsi bu değil.

Dış kütüphaneler ve dolayısıyla R pazarı yasaktır. Bu sınırlama olmasaydı, çok yüksek kaliteli göstergeler satarak hiçbir risk almadan zengin olurdum.

Ama hepsi bu değil.

Siteye yerleşmiş bir grup dövüş kodlayıcısı, mavi gözlü, bunun bir programcı sitesi olduğunu iddia ediyor, bu nedenle ticaretle ilgili gönderiler uygun değil.

İşte OOP için bir arka plan. Valla zevk meselesi