Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 656

 
evillive :

Dürüst olmak gerekirse, görev yeni başlayanlar için değil. Grafikteki her şeyi bir şablona kaydetmek, ardından gerekli göstergeyi tüm parametrelerle bu şablona eklemek ve yeni şablonu grafiğe geri yüklemek gerekir. MQL kullanarak şablonu kaydedebilir ve yükleyebilirsiniz, ancak şablon dosyasını düzenlemek için zaten bir DLL yazmanız gerekir, kullanıcı komut dosyasının şablon dosyalarına yazma erişimi olup olmadığından emin değilim.

Grafiklerle işlemler

Grafiklerle çalışmak için işlevler. Grafiklerle yapılan tüm işlemler yalnızca Uzman Danışmanlarda ve komut dosyalarında geçerlidir.

Grafiğin özelliklerini belirleyen işlevler aslında onu değiştirmek için komutlar göndermeye yarar. Bu işlevler başarıyla yürütülürse, komut, genel grafik olay sırasına girer. Bu grafiğin olay kuyruğunun işlenmesi sırasında grafik değiştirilir.

Bu nedenle, bu fonksiyonları çağırdıktan sonra grafiğin hemen görsel olarak güncellenmesini beklememelisiniz. Genel durumda, grafik terminal tarafından değişiklik olaylarına göre otomatik olarak güncellenir - yeni bir fiyat teklifinin gelmesi, grafik penceresinin boyutunda bir değişiklik, vb. Grafik görünümünü güncellemeye zorlamak için, grafiği yeniden çizmek için ChartRedraw() komutunu kullanın.

İşlev

Aksiyon

GrafikUygulaŞablon

Belirtilen dosyadaki şablonu belirtilen grafiğe uygular

GrafikKaydetŞablon

Geçerli grafik ayarlarını belirtilen ada sahip bir şablona kaydeder

GrafikPencereBul

Göstergenin bulunduğu alt pencerenin numarasını verir

GrafikZamanFiyatToXY

Grafik koordinatlarını zaman/fiyat gösteriminden x ve y koordinatlarına dönüştürür

GrafikXYToZamanFiyat

Grafiğin X ve Y koordinatlarını zaman ve fiyat değerlerine dönüştürür

Grafik Açık

Belirtilen sembol ve nokta ile yeni bir grafik açar

Grafikİlk

Belirtilen grafiği izleyen grafiğin kimliğini döndürür

GrafikSonraki

İstemci terminalinin ilk grafiğinin tanımlayıcısını döndürür

GrafikKapat

Belirtilen grafiği kapatır

GrafikSembol

Belirtilen grafiğin sembol adını döndürür

GrafikDönem

Belirtilen dönemin değerini döndürür

 
Vinin :

Grafiklerle işlemler


evet evet tam olarak. Şablonları düzenlemek (veya MT5'te olduğu gibi bir gösterge eklemek) nerede? Yok. Yani bir DLL'ye ihtiyacınız var, değil mi? Veya şablonu düzenlemenin yanı sıra MT4 grafiğine gösterge eklemek için başka yöntemler var mı?


Soru, bir danışman yardımıyla bir gösterge eklemekle ilgiliydi, burada

 
evillive :

Dürüst olmak gerekirse, görev yeni başlayanlar için değil. Grafikteki her şeyi bir şablona kaydetmek, ardından gerekli göstergeyi tüm parametrelerle bu şablona eklemek ve yeni şablonu grafiğe geri yüklemek gerekir. MQL kullanarak şablonu kaydedebilir ve yükleyebilirsiniz, ancak şablon dosyasını düzenlemek için zaten bir DLL yazmanız gerekir, kullanıcı komut dosyasının şablon dosyalarına yazma erişimi olup olmadığından emin değilim.

ve ihtiyacım olan göstergeleri ayrı bir pencerede açarsam hepsini bir şablona kaydedeceğim. sonra programı "boş" bir grafik üzerinde çalıştıracağım ve bu şablonu açacağım. tüm göstergeler de açılacak mı? Yoksa şablonun kendisinde göstergelerin açılmasını belirtmem gerekir mi?
 
waroder :

ve ihtiyacım olan göstergeleri ayrı bir pencerede açarsam hepsini bir şablona kaydedeceğim. sonra programı "boş" bir grafik üzerinde çalıştıracağım ve bu şablonu açacağım. tüm göstergeler de açılacak mı? Yoksa göstergelerin açılmasını şablonun kendisinde mi yazmam gerekiyor?

Şablonu uyguladıktan sonra, tüm göstergeler bu grafik penceresine otomatik olarak eklenecektir.
 
barabashkakvn :

Şablonu uyguladıktan sonra, tüm göstergeler bu grafik penceresine otomatik olarak eklenecektir.


tamam) anladım) teşekkür ederim çocuklar

 
waroder :

ve ihtiyacım olan göstergeleri ayrı bir pencerede açarsam hepsini bir şablona kaydedeceğim. sonra programı "boş" bir grafik üzerinde çalıştıracağım ve bu şablonu açacağım. tüm göstergeler de açılacak mı? Yoksa şablonun kendisinde göstergelerin açılmasını belirtmem gerekir mi?
Program ayrıca şablona eklenmelidir, aksi takdirde orada kayıtlı olmadığı için bu şablon yüklenirken kaldırılacaktır. Bu arada, danışmanı kapatmak için iyi bir yöntem;)
 
Skinte, iki arabanın kavşağında sinyal vermek için türkiye'yi gerçekler)
 

Soru 1 - Expert Advisor'ın yeni yapılarda (ME5 Build 934; MT4 Build 646) harici parametrelerinde değişken adları yerine yorumlar görüntüleniyor. Ondan nasıl kurtulurum? Sadece yorum yazmamanızı önermeyin - onlara ihtiyacım var (2. soruya bakın).

Soru 2 - Anladığım kadarıyla yorumlar programcının kendisine, düşüncelerine, notlarına vs. yöneliktir. kod yazarken. Eğer böyleyse (yani kitaplarda ve kurslarda öğretilen budur), o zaman bu eşsiz bir görevdir. Ve bize öğretildi: bir işlev - bir görev. Bu nedenle, bu görev için başka bir görev göründüğünde - öyle bir kelime oyunuyla, yeni yapılarda ne yapıldığını algılamanız gerekir, o zaman bir salata sosu alırsınız. - Doğru mu? Aksi takdirde, ihtiyacım olan ve herkes tarafından görülmek istemediğim yorumlarımı nasıl yazabilirim? Çünkü benim yorumlarım kamuoyuna yansıyorsa, o zaman ne tür yorumlar oluyor? Bu tamamen farklı bir görev.

Yani 2 farklı görevimiz var: "kod yazarken kendiniz için yorum yapın" ve "dış değişkenlerin açıklaması".

Görünüşe göre "harici değişkenleri bildirmek" adlı yeni görev için başka bir bağımsız derleyici seçeneği tahsis edilmelidir. Veya en azından, bu seçeneği kullanıcının seçimi yapın (bu, programlamanın temel ilkeleriyle zaten çelişiyor olsa da).

Eğer yanılıyorsam, lütfen beni düzeltin.

 
Chiripaha :

Soru 1 - Expert Advisor'ın yeni yapılarda (ME5 Build 934; MT4 Build 646) harici parametrelerinde değişken adları yerine yorumlar görüntüleniyor. Ondan nasıl kurtulurum? Sadece yorum yazmamanızı önermeyin - onlara ihtiyacım var (2. soruya bakın).

Soru 2 - Anladığım kadarıyla yorumlar programcının kendisine, düşüncelerine, notlarına vs. yöneliktir. kod yazarken. Eğer böyleyse (yani kitaplarda ve kurslarda öğretilen budur), o zaman bu eşsiz bir görevdir. Ve bize öğretildi: bir işlev - bir görev. Bu nedenle, bu görev için başka bir görev göründüğünde - öyle bir kelime oyunuyla, yeni yapılarda ne yapıldığını algılamanız gerekir, o zaman bir salata sosu alırsınız. - Doğru mu? Aksi takdirde, ihtiyacım olan ve herkes tarafından görülmek istemediğim yorumlarımı nasıl yazabilirim? Çünkü benim yorumlarım kamuoyuna yansıyorsa, o zaman ne tür yorumlar oluyor? Bu tamamen farklı bir görev.

Yani 2 farklı görevimiz var: "kod yazarken kendiniz için yorum yapın" ve "dış değişkenlerin açıklaması".

Görünüşe göre "harici değişkenleri bildirmek" adlı yeni görev için başka bir bağımsız derleyici seçeneği tahsis edilmelidir. Veya en azından, bu seçeneği kullanıcının seçimi yapın (bu, programlamanın temel ilkeleriyle zaten çelişiyor olsa da).

Eğer yanılıyorsam, lütfen beni düzeltin.


Dış değişkenlerin kendileri ve/veya kullanıcılar için daha okunaklı hale getirilmesi çok uygundur.

Ve böylece harici değişkenlere yapılan yorumlar görüntülenmez (yalnızca kodda görünürler), bunları ikinci satıra yazabilirsiniz.

Bu, örneğin, yerine:

 input double AbcD= 1.2345 ; //Хочу профит на отметке:

iki satırda yapın:

 input double AbcD= 1.2345 ;
//Желаемый уровень профита

ilk durumda, Abcd yerine harici değişkenlerde gösterilecektir: " Ben kar istiyorum: 1.2345 ",

ikincide: " AbcD 1.2345 "

 
DiPach :

Dış değişkenlerin kendileri ve/veya kullanıcılar için daha okunaklı hale getirilmesi çok uygundur.

Ve böylece harici değişkenlere yapılan yorumlar görüntülenmez (yalnızca kodda görünürler), bunları ikinci satıra yazabilirsiniz.

Bu, örneğin, yerine:

iki satırda yapın:

ilk durumda, Abcd yerine harici değişkenlerde gösterilecektir: " Ben kar istiyorum: 1.2345 ",

ikincide: " AbcD 1.2345 "


Evet, umurumda değil, ki bu uygun. Ayrıca, ne elde etmek istediklerini anlıyorum. Sadece bir görevi yerine getirmek, aynı zamanda diğerini öldürmek imkansızdır.

2 satırda yazmak zaten daha az uygun çünkü bunlar 5-10 değişken ise, o zaman dayanabilirsin (yine de, neden tahammül ediyorsun?). Ve bu değişkenler yaklaşık 200 ise? Bu durumda, kod boyutu önemli ölçüde büyüyecektir.
Öte yandan, bu başka bir seçenekse, yine de değişkeni tanımlayarak kodu artırmanız gerekir. Bu nedenle, muhtemelen önerdiğiniz çözüm, 2. seçeneği sunmaktan daha optimal ve özlü olacaktır. Kabul etmeye hazırım.

Doğru tahmin edersem, satır başı bir değişkeni tanımlamak için bir sınırlama mı?

Ve ek bir sorum var:

Birden fazla dil seçeneğinde açıklamaları isteğe bağlı hale getirmek mümkün müdür? Daha da uygun olurdu. :)) Bu durumda, açıklama için olağan yorumları kullanmaktansa ek bir seçenek yapmak daha iyidir.

Bu arada. Bu değişken açıklamaları, ayarlar penceresinde hala seyrek olarak görüntülenir, çünkü Sütun boyutları esnemeyi korumaz ve açıklamanın çoğu , açıklama sütununun darlığı nedeniyle "yenilir". Ancak değişkenlerin değerleri için makul olmayan miktarda alan vardır. Yani en iyisini istedik... Ama bu aynı zamanda ileriye doğru bir adım. :))

Neden: