Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Evet? Yeni, bağımsız bir nesne yaratmıyor mu?
Şimdi kontrol edelim - Aşağıdaki satırları ekleyeceğim:
birlikte
ve test komut dosyası:
Sonuç:
Bir nesne oluşturuldu, ardından İKİNCİ nesne (yeniden yaratma olmadığı ortaya çıktı - yeni bir tane oluşturuldu), SATIN AL pozisyonları sihirli "0" ile açıldı - yani ikinci "ticaret" ile açıldı nesne.
Ardından, iki nesnenin ters sırada yok edildiğini görebilirsiniz: önce ikincisi (sihirli "0" ile) ve sonra birincisi (sihirli "123" ile).
Evet? Yeni, bağımsız bir nesne yaratmıyor mu?
evet, CTrade sınıfının yeni bir örneği olacak
kapsam normal bir değişkenle aynıdır ve dahası void OnTick() çıktığında, CTrade yıkıcı çağrılacak ve bir sonraki OnTick()'te CTrade yapıcısı yeniden çağrılacak
evet, CTrade sınıfının yeni bir örneği olacak
kapsam normal bir değişkenle aynıdır ve dahası void OnTick() çıktığında, CTrade yıkıcı çağrılacak ve bir sonraki OnTick()'te CTrade yapıcısı yeniden çağrılacak
Evet, bunu Artyom'un cevabından hemen sonra anladım.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Okul çocukları için OOP.
Artyom Trishkin , 2019.10.08 20:23
Her şey değişkenlerle tamamen aynıdır.
Ve odaklan:
Benim düşünceme göre, mql, OOP kullanılarak çözülmesi gereken çok dar bir dizi göreve sahiptir. Bana öyle geliyor ki dilin kendisi C++'daki OOP'den veya başka bir şeyden başka bir şey değil. Ve bu OOP, OOP'yi standart bir kitaplık olarak sunar. Ve OOP'den bu OOP'ye, onu mahvetmeniz önerilir, aksi takdirde başka bir OOP diyemezsiniz. Ve sonra bir adım daha ... Büyücü doğru bir şekilde söyledi, kötü olsa da, ama iyiliksever olsa da, görevlerim için OOP bir köpek için bir dönüş gibidir. Ve eğer bu görev prosedürel bir tarzda sorunsuz bir şekilde çözülebiliyorsa, bir görev belirlemenin ve ardından OOP aracılığıyla uygulamanın kullanımı nedir?
Örneğin, MT5 ve MT4 için kod yazmak için fxsaber'dan .mqh alın. Belki birinin ihtiyacı vardır, ama bakın kim... mql5'i istemeyenler veya kesinlikle yapamayanlar için. Veya iCanvas'ı Nikolay'dan alın ..., soyadını unuttum, anlıyorsunuz. Yararlı bir kütüphane gibi görünüyor, ancak bunu anlamak kolay değil ve belge yok, en azından biraz açıklama. Bu bir şikayet değil, üzgünüm Nikolai, bu bir gerçek. Bu yüzden bir grafik etiket yazmayı denemeye karar verdiğimde, ne standart kütüphaneye ne de Nikolai'nin kütüphanesine başvurmadan yazmak benim için daha kolay oldu.
Aslında Alexey, KB'deki açıklama sayfasında iCanvas hakkında yeterince bilgi edinebilirsin. https://www.mql5.com/ru/code/22164 . Koddaki yorumları dikkatlice incelemeniz gerekir. Tüm işlevlerin anlamı adlarından sezgiseldir.
Ama belki de haklısın. iCanvas kullanarak basit ama kullanışlı bir gösterge yazarak bir video kaydetmek ve bu sınıfın bazı özelliklerini net bir şekilde açıklamak gerekir. Hala nüanslar var.
Doğru, dürüst olmak gerekirse, iCanvas'ın yazılma şekli, artık kendimden gerçekten hoşlanmıyorum. Onu buruşturmak, çöpe atmak ve daha doğru bir üslupla yeniden yazmak istiyorum.
Bu kitaplıktaki kodun %70'i, koordinatlarla ve veri erişimiyle çalışmak için gereken bazı standart işlevlerin hızlandırılmasıdır.
Bu nedenle, bu sınıf kullanılırsa, grafikler CCanvas ile "head-on" yapıldığından daha hızlı olacaktır. Bu onun ana özelliği ve avantajıdır. Ve elbette, onunla grafikler, şekiller, yorumlar oluşturmak gerçekten daha kolay.
Ayrıca şunu da eklemek isterim Alexey, CodeBase'deki fxsaber ve benim yayınlarım da dahil olmak üzere birçok yayının amacı, ilgisiz "sadece paylaşın - kimin ihtiyacı varsa onu çözer". Bu nedenle, genellikle ayrıntılı talimatlarla zaman kaybetmek basitçe bozulur.
Özellikle forumda iCanvas kullanarak çok sayıda kısa ve açıklayıcı örnek yayınladım.
Örneğin:
https://www.mql5.com/ru/code/25929
https://www.mql5.com/ru/code/25113
https://www.mql5.com/ru/code/25414
https://www.mql5.com/en/code/24798
https://www.mql5.com/en/forum/227736/page41#comment_13259627
https://www.mql5.com/ru/forum/227736/page24#comment_12836622
https://www.mql5.com/en/forum/323629#comment_13442470
https://www.mql5.com/en/forum/321704#comment_13131995
https://www.mql5.com/en/forum/317257/page3#comment_12341593
https://www.mql5.com/en/forum/229521/page2#comment_10258148
Aslında Alexey, KB'deki açıklama sayfasında iCanvas hakkında yeterince bilgi edinebilirsin. https://www.mql5.com/ru/code/22164 . Koddaki yorumları dikkatlice incelemeniz gerekir. Tüm işlevlerin anlamı adlarından sezgiseldir.
Nicholas, sözlerime aldırma. Programlama öğrencileri arasında benim gibi o kadar az insan var ki, yalnız değilsem, onlara hiç dikkat etmeye değmez.
Benim için koddaki yorumları öğrenmek için önce İngilizceyi öğrenmelisiniz.)))
Acil bir ihtiyaç olurdu, zaman harcamak ve tüm yorumları çevirmek, makine çevirisini anlamaya çalışmak ve düzeltmek mümkün olurdu. Ama böyle bir ihtiyaç yok.
Örneğin, MT5 ve MT4 için kod yazmak için fxsaber'dan .mqh alın. Belki birinin ihtiyacı vardır, ama bakın kim... mql5'i istemeyenler veya kesinlikle yapamayanlar için.
Muhtemelen MQL5'i oldukça iyi biliyorum, ancak bir ticaret kitaplığına ihtiyaç var. Bu, MT4 stiliyle ilgili değil, MT5 için çalışmak için uygun ve hızlı olacak bir ticaret kitaplığı ile ilgili. Ve gerçek ticarette hiçbir hatanın olmadığı.
Halk arasında böyle bir kütüphane olmadığı için (var mı bilmiyorum) kendi heykelimi kendim yapmak zorunda kaldım. Bunu yapmak için, bir dizi ticaret işlevi şeklinde hangi bisikletin icat edileceğine karar vermek gerekiyordu. Oldukça iyi olduğu için bir MT4 kiti ödünç aldım. Ne bir bonus, kütüphane için belge yazmamayı ve çalışmamayı mümkün kıldı. Peki, diğer güzellikler.
Bu nedenle, MQL5 bilgisi bazen kullanıcılar arasında yüksek düzeydedir.